Re: [PATCH 2/2] arm: dt: Add device tree support for i2c instance 1 on exynos4 dt machine

2011-07-19 Thread G, Manjunath Kondaiah
On Tue, Jul 19, 2011 at 2:00 AM, Grant Likely grant.lik...@secretlab.ca wrote:
 On Mon, Jul 18, 2011 at 5:53 AM, G, Manjunath Kondaiah
 manj...@linaro.org wrote:
 Abraham,
 Few comments on i2c child devices handling:

 On 18 July 2011 06:20, Thomas Abraham thomas.abra...@linaro.org wrote:
 Add device node for i2c instance 1 and list all its connected slave
 devices.

 Signed-off-by: Thomas Abraham thomas.abra...@linaro.org
 ---
  arch/arm/boot/dts/exynos4-smdkv310.dts  |   19 ++-
  arch/arm/mach-exynos4/Kconfig           |    1 +
  arch/arm/mach-exynos4/mach-exynos4-dt.c |    9 +
  3 files changed, 28 insertions(+), 1 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos4-smdkv310.dts 
 b/arch/arm/boot/dts/exynos4-smdkv310.dts
 index d65c18c..29c40ed 100644
 --- a/arch/arm/boot/dts/exynos4-smdkv310.dts
 +++ b/arch/arm/boot/dts/exynos4-smdkv310.dts
 @@ -23,7 +23,7 @@
        };

        chosen {
 -               bootargs = root=/dev/mmcblk0p1 rootfstype=ext3 rootwait 
 console=ttySAC1,115200;
 +               bootargs = root=/dev/mmcblk0p1 rootfstype=ext3 rootwait 
 console=ttySAC1,115200 init=/linuxrc;
        };

        soc {
 @@ -64,5 +64,22 @@
                        samsung,sdhci-cd-type = 0;
                        samsung,sdhci-clkdiv-external;
                };
 +
 +               i2c@1387 {
 +                       compatible = samsung,s3c2440-i2c;
 +                       reg = 0x1387 0x100;
 +                       interrupts = 345;
 +                       samsung,i2c-bus-number = 1;
 +                       samsung,i2c-slave-addr = 16;
 +                       samsung,i2c-sda-delay = 100;
 +                       samsung,i2c-max-bus-freq = 10;
 +                       #address-cells = 1;
 +                       #size-cells = 0;
 +
 +                       wm8994@1a {
 +                               compatible = wlf,wm8994;
 +                               reg = 0x1a;
 +                       };

 The i2c child devices are board specific.
 For ex: few boards such as smdkxxx based on exynos4 has wm8994 with
 i2c1 controller
 where as other boards based on exynos4 does not have any i2c1 devices.
 Hence these child entries should go to board specific .dts file right?

 No, the i2c bus node should still appear in the SoC .dtsi file.  If a
 board doesn't use a particular i2c bus, then the board.dts file can
 add a status = disabled; property to the i2c bus node to disable it.

that's right. I am referring to I2C slave devices. For a given SoC,
two different
boards can have different i2c slave devices with different slave
address. In that case,
it is better to have i2c child/slave nodes in board .dts file.

-M
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/2] arm: dt: Add device tree support for i2c instance 1 on exynos4 dt machine

2011-07-18 Thread G, Manjunath Kondaiah
Abraham,
Few comments on i2c child devices handling:

On 18 July 2011 06:20, Thomas Abraham thomas.abra...@linaro.org wrote:
 Add device node for i2c instance 1 and list all its connected slave
 devices.

 Signed-off-by: Thomas Abraham thomas.abra...@linaro.org
 ---
  arch/arm/boot/dts/exynos4-smdkv310.dts  |   19 ++-
  arch/arm/mach-exynos4/Kconfig           |    1 +
  arch/arm/mach-exynos4/mach-exynos4-dt.c |    9 +
  3 files changed, 28 insertions(+), 1 deletions(-)

 diff --git a/arch/arm/boot/dts/exynos4-smdkv310.dts 
 b/arch/arm/boot/dts/exynos4-smdkv310.dts
 index d65c18c..29c40ed 100644
 --- a/arch/arm/boot/dts/exynos4-smdkv310.dts
 +++ b/arch/arm/boot/dts/exynos4-smdkv310.dts
 @@ -23,7 +23,7 @@
        };

        chosen {
 -               bootargs = root=/dev/mmcblk0p1 rootfstype=ext3 rootwait 
 console=ttySAC1,115200;
 +               bootargs = root=/dev/mmcblk0p1 rootfstype=ext3 rootwait 
 console=ttySAC1,115200 init=/linuxrc;
        };

        soc {
 @@ -64,5 +64,22 @@
                        samsung,sdhci-cd-type = 0;
                        samsung,sdhci-clkdiv-external;
                };
 +
 +               i2c@1387 {
 +                       compatible = samsung,s3c2440-i2c;
 +                       reg = 0x1387 0x100;
 +                       interrupts = 345;
 +                       samsung,i2c-bus-number = 1;
 +                       samsung,i2c-slave-addr = 16;
 +                       samsung,i2c-sda-delay = 100;
 +                       samsung,i2c-max-bus-freq = 10;
 +                       #address-cells = 1;
 +                       #size-cells = 0;
 +
 +                       wm8994@1a {
 +                               compatible = wlf,wm8994;
 +                               reg = 0x1a;
 +                       };

The i2c child devices are board specific.
For ex: few boards such as smdkxxx based on exynos4 has wm8994 with
i2c1 controller
where as other boards based on exynos4 does not have any i2c1 devices.
Hence these child entries should go to board specific .dts file right?
There should be soc specific .dts file and board specific dts file
should include soc dts file.

-M
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html