Hi Chanwoo,

On 02/02/15 14:01, Chanwoo Choi wrote:
> This patch adds devicetree binding document for Exynos5433 SoC system clock
> controller.
> 
> Cc: Sylwester Nawrocki <s.nawro...@samsung.com>
> Cc: Tomasz Figa <tomasz.f...@gmail.com>
> Signed-off-by: Chanwoo Choi <cw00.c...@samsung.com>
> Acked-by: Inki Dae <inki....@samsung.com>
> ---
>  .../devicetree/bindings/clock/exynos5433-clock.txt | 258 
> +++++++++++++++++++++
>  1 file changed, 258 insertions(+)
>  create mode 100644 
> Documentation/devicetree/bindings/clock/exynos5433-clock.txt
> 
> diff --git a/Documentation/devicetree/bindings/clock/exynos5433-clock.txt 
> b/Documentation/devicetree/bindings/clock/exynos5433-clock.txt
> new file mode 100644
> index 0000000..2d7a723
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/exynos5433-clock.txt
> @@ -0,0 +1,258 @@
> +* Samsung Exynos5433 CMU (Clock Management Units)
> +
> +The Exynos5433 clock controller generates and supplies clock to various
> +controllers within the Exynos5433 SoC.
> +
> +Required Properties:
> +
> +- compatible: should be one of the following.
> +  - "samsung,exynos5433-cmu-top"   - clock controller compatible for CMU_TOP
> +    which generates clocks for 
> IMEM/FSYS/G3D/GSCL/HEVC/MSCL/G2D/MFC/PERIC/PERIS
> +    domains and bus clocks.
> +  - "samsung,exynos5433-cmu-cpif"  - clock controller compatible for CMU_CPIF
> +    which generates clocks for LLI (Low Latency Interface) IP.
> +  - "samsung,exynos5433-cmu-mif"   - clock controller compatible for CMU_MIF
> +    which generates clocks for DRAM Memory Controller domain.
> +  - "samsung,exynos5433-cmu-peric" - clock controller compatible for 
> CMU_PERIC
> +    which generates clocks for UART/I2C/SPI/I2S/PCM/SPDIF/PWM/SLIMBUS IPs.
> +  - "samsung,exynos5433-cmu-peris" - clock controller compatible for 
> CMU_PERIS
> +    which generates clocks for PMU/TMU/MCT/WDT/RTC/SECKEY/TZPC IPs.
> +  - "samsung,exynos5433-cmu-fsys"  - clock controller compatible for CMU_FSYS
> +    which generates clocks for USB/UFS/SDMMC/TSI/PDMA IPs.
> +  - "samsung,exynos5433-cmu-g2d"   - clock controller compatible for CMU_G2D
> +    which generates clocks for G2D/MDMA IPs.
> +  - "samsung,exynos5433-cmu-disp"  - clock controller compatible for CMU_DISP
> +    which generates clocks for Display (DECON/HDMI/DSIM/MIXER) IPs.
> +  - "samsung,exynos5433-cmu-aud"   - clock controller compatible for CMU_AUD
> +    which generates clocks for Cortex-A5/BUS/AUDIO clocks.
> +  - "samsung,exynos5433-cmu-bus0", "samsung,exynos5433-cmu-bus1"
> +    and "samsung,exynos5433-cmu-bus2" - clock controller compatible for 
> CMU_BUS
> +    which generates global data buses clock and global peripheral buses 
> clock.
> +  - "samsung,exynos5433-cmu-g3d"  - clock controller compatible for CMU_G3D
> +    which generates clocks for 3D Graphics Engine IP.
> +  - "samsung,exynos5433-cmu-gscl"  - clock controller compatible for CMU_GSCL
> +    which generates clocks for GSCALER IPs.
> +
> +- reg: physical base address of the controller and length of memory mapped
> +  region.
> +
> +- #clock-cells: should be 1.

Thanks for addressing my comments! It looks almost good enough, can you
just please also add clocks, clock-names to the list of required properties ?
I guess it's sufficient to mention that these properties should contain
values as listed in the examples below per each CMU.
This also applies to you following series of 9 patches.

> +
> +Each clock is assigned an identifier and client nodes can use this identifier
> +to specify the clock which they consume.
> +
> +All available clocks are defined as preprocessor macros in
> +dt-bindings/clock/exynos5433.h header and can be used in device
> +tree sources.
> +
> +Example 1: Examples of 'oscclk' source clock node are listed below.
> +
> +     xxti: xxti {
> +             compatible = "fixed-clock";
> +             clock-output-names = "oscclk";
> +             #clock-cells = <0>;
> +     };
> +
> +Example 2: Examples of clock controller nodes are listed below.
> +
> +     cmu_top: clock-controller@0x10030000 {
> +             compatible = "samsung,exynos5433-cmu-top";
> +             reg = <0x10030000 0x0c04>;
> +             #clock-cells = <1>;
> +
> +             clock-names = "oscclk",
> +                     "sclk_mphy_pll",
> +                     "sclk_mfc_pll",
> +                     "sclk_bus_pll";
> +             clocks = <&xxti>,
> +                    <&cmu_cpif CLK_SCLK_MPHY_PLL>,
> +                    <&cmu_mif CLK_SCLK_MFC_PLL>,
> +                    <&cmu_mif CLK_SCLK_BUS_PLL>;
> +     };

> +     cmu_gscl: clock-controller@0x13cf0000 {
> +             compatible = "samsung,exynos5433-cmu-gscl";
> +             reg = <0x13cf0000 0x0b10>;
> +             #clock-cells = <1>;
> +
> +             clock-names = "oscclk",
> +                     "aclk_gscl_111",
> +                     "aclk_gscl_333";
> +             clocks = <&xxti>,
> +                     <&cmu_top CLK_ACLK_GSCL_111>,
> +                     <&cmu_top CLK_ACLK_GSCL_333>;
> +     };
> +
> +Example 3: UART controller node that consumes the clock generated by the 
> clock
> +        controller.
> +
> +     serial_0: serial@14C10000 {
> +             compatible = "samsung,exynos5433-uart";
> +             reg = <0x14C10000 0x100>;
> +             interrupts = <0 421 0>;
> +             clocks = <&cmu_peric CLK_PCLK_UART0>,
> +                      <&cmu_peric CLK_SCLK_UART0>;
> +             clock-names = "uart", "clk_uart_baud0";
> +             pinctrl-names = "default";
> +             pinctrl-0 = <&uart0_bus>;
> +             status = "disabled";
> +     };
> +
> +Example 4: SPI controller node that consumes the clock generated by the clock
> +        controller.

This fourth example doesn't look like it adds significant value, I'd say it
can be removed.

> +     spi_0: spi@14d20000 {
> +             compatible = "samsung,exynos7-spi";
> +             reg = <0x14d20000 0x100>;
> +             interrupts = <0 432 0>;
> +             dmas = <&pdma0 9>, <&pdma0 8>;
> +             dma-names = "tx", "rx";
> +             #address-cells = <1>;
> +             #size-cells = <0>;
> +             clocks = <&cmu_peric CLK_PCLK_SPI0>,
> +                      <&cmu_top CLK_SCLK_SPI0_PERIC>;
> +             clock-names = "spi", "spi_busclk0";
> +             samsung,spi-src-clk = <0>;
> +             pinctrl-names = "default";
> +             pinctrl-0 = <&spi0_bus>;
> +             status = "disabled";
> +     };
> 

Also please don't forget to Cc devicet...@vger.kernel.org next time.

--
Thanks,
Sylwester
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to