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

Grant Likely grant.likely at secretlab.ca
Tue Jul 19 06:30:05 EST 2011


On Mon, Jul 18, 2011 at 5:53 AM, G, Manjunath Kondaiah
<manjugk at linaro.org> wrote:
> Abraham,
> Few comments on i2c child devices handling:
>
> On 18 July 2011 06:20, Thomas Abraham <thomas.abraham at linaro.org> wrote:
>> Add device node for i2c instance 1 and list all its connected slave
>> devices.
>>
>> Signed-off-by: Thomas Abraham <thomas.abraham at 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 at 13870000 {
>> +                       compatible = "samsung,s3c2440-i2c";
>> +                       reg = <0x13870000 0x100>;
>> +                       interrupts = <345>;
>> +                       samsung,i2c-bus-number = <1>;
>> +                       samsung,i2c-slave-addr = <16>;
>> +                       samsung,i2c-sda-delay = <100>;
>> +                       samsung,i2c-max-bus-freq = <100000>;
>> +                       #address-cells = <1>;
>> +                       #size-cells = <0>;
>> +
>> +                       wm8994 at 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.

g.


More information about the devicetree-discuss mailing list