Re: [PATCH v8 1/3] dt/bindings: Add PIC32 clock binding documentation

From: Michael Turquette
Date: Wed Feb 24 2016 - 15:58:05 EST


Quoting Joshua Henderson (2016-02-24 08:07:15)
> From: Purna Chandra Mandal <purna.mandal@xxxxxxxxxxxxx>
>
> Document the devicetree bindings for the clock driver found on Microchip
> PIC32 class devices.
>
> Signed-off-by: Purna Chandra Mandal <purna.mandal@xxxxxxxxxxxxx>
> Signed-off-by: Joshua Henderson <joshua.henderson@xxxxxxxxxxxxx>
> Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
> Cc: Michael Turquette <mturquette@xxxxxxxxxxxx>
> Cc: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
> Acked-by: Rob Herring <robh@xxxxxxxxxx>

Acked-by: Michael Turquette <mturquette@xxxxxxxxxxxx>

> ---
> Note: Please pull this complete series through the MIPS tree.
>
> Changes since v7: None
> Changes since v6:
> - Update Microchip PIC32 clock binding document based on review
> - Add header defining clocks
> Changes since v5: None
> Changes since v4: None
> Changes since v3: None
> Changes since v2:
> - Force lowercase in PIC32 clock binding documentation
> Changes since v1: None
> ---
> .../devicetree/bindings/clock/microchip,pic32.txt | 39 ++++++++++++++++++
> include/dt-bindings/clock/microchip,pic32-clock.h | 42 ++++++++++++++++++++
> 2 files changed, 81 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/clock/microchip,pic32.txt
> create mode 100644 include/dt-bindings/clock/microchip,pic32-clock.h
>
> diff --git a/Documentation/devicetree/bindings/clock/microchip,pic32.txt b/Documentation/devicetree/bindings/clock/microchip,pic32.txt
> new file mode 100644
> index 0000000..5352718
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/microchip,pic32.txt
> @@ -0,0 +1,39 @@
> +Microchip PIC32 Clock Controller Binding
> +----------------------------------------
> +Microchip clock controller is consists of few oscillators, PLL, multiplexer
> +and few divider modules.
> +
> +This binding uses common clock bindings.
> +[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
> +
> +Required properties:
> +- compatible: shall be "microchip,pic32mzda-clk".
> +- reg: shall contain base address and length of clock registers.
> +- #clock-cells: shall be 1.
> +
> +Optional properties:
> +- microchip,pic32mzda-sosc: shall be added only if platform has
> + secondary oscillator connected.
> +
> +Example:
> + rootclk: clock-controller@1f801200 {
> + compatible = "microchip,pic32mzda-clk";
> + reg = <0x1f801200 0x200>;
> + #clock-cells = <1>;
> + /* optional */
> + microchip,pic32mzda-sosc;
> + };
> +
> +
> +The clock consumer shall specify the desired clock-output of the clock
> +controller (as defined in [2]) by specifying output-id in its "clock"
> +phandle cell.
> +[2] include/dt-bindings/clock/microchip,pic32-clock.h
> +
> +For example for UART2:
> +uart2: serial@2 {
> + compatible = "microchip,pic32mzda-uart";
> + reg = <>;
> + interrupts = <>;
> + clocks = <&rootclk PB2CLK>;
> +};
> diff --git a/include/dt-bindings/clock/microchip,pic32-clock.h b/include/dt-bindings/clock/microchip,pic32-clock.h
> new file mode 100644
> index 0000000..184647a6
> --- /dev/null
> +++ b/include/dt-bindings/clock/microchip,pic32-clock.h
> @@ -0,0 +1,42 @@
> +/*
> + * Purna Chandra Mandal,<purna.mandal@xxxxxxxxxxxxx>
> + * Copyright (C) 2015 Microchip Technology Inc. All rights reserved.
> + *
> + * This program is free software; you can distribute it and/or modify it
> + * under the terms of the GNU General Public License (Version 2) as
> + * published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope it will be useful, but WITHOUT
> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
> + * for more details.
> + */
> +
> +#ifndef _DT_BINDINGS_CLK_MICROCHIP_PIC32_H_
> +#define _DT_BINDINGS_CLK_MICROCHIP_PIC32_H_
> +
> +/* clock output indices */
> +#define POSCCLK 0
> +#define FRCCLK 1
> +#define BFRCCLK 2
> +#define LPRCCLK 3
> +#define SOSCCLK 4
> +#define FRCDIVCLK 5
> +#define PLLCLK 6
> +#define SCLK 7
> +#define PB1CLK 8
> +#define PB2CLK 9
> +#define PB3CLK 10
> +#define PB4CLK 11
> +#define PB5CLK 12
> +#define PB6CLK 13
> +#define PB7CLK 14
> +#define REF1CLK 15
> +#define REF2CLK 16
> +#define REF3CLK 17
> +#define REF4CLK 18
> +#define REF5CLK 19
> +#define UPLLCLK 20
> +#define MAXCLKS 21
> +
> +#endif /* _DT_BINDINGS_CLK_MICROCHIP_PIC32_H_ */
> --
> 1.7.9.5
>