[PATCH V2] powerpc: Add I2C bus multiplexer node for B4 and T4240QDS

Kumar Gala galak at kernel.crashing.org
Sat Sep 7 02:10:25 EST 2013


On Sep 5, 2013, at 10:33 PM, Jia Hongtao-B38951 wrote:

>> -----Original Message-----
>> From: Kumar Gala [mailto:galak at kernel.crashing.org]
>> Sent: Friday, September 06, 2013 2:41 AM
>> To: Jia Hongtao-B38951
>> Cc: linuxppc-dev at lists.ozlabs.org; Wood Scott-B07421;
>> Wei.Yang at windriver.com
>> Subject: Re: [PATCH V2] powerpc: Add I2C bus multiplexer node for B4 and
>> T4240QDS
>> 
>> 
>> On Sep 4, 2013, at 9:41 PM, Jia Hongtao wrote:
>> 
>>> In both B4 and T4240QDS platform PCA9547 I2C bus multiplexer is used.
>>> The sub-nodes are also reorganized according to right I2C topology.
>>> 
>>> Signed-off-by: Jia Hongtao <hongtao.jia at freescale.com>
>>> ---
>>> V2 change log:
>>> Reorganized the sub-nodes under I2C multiplexer to represent right
>> topology.
>>> 
>>> arch/powerpc/boot/dts/b4qds.dtsi   | 49 +++++++++++++++++-----------
>>> arch/powerpc/boot/dts/t4240qds.dts | 67 ++++++++++++++++++++++---------
>> -------
>>> 2 files changed, 69 insertions(+), 47 deletions(-)
>>> 
>>> diff --git a/arch/powerpc/boot/dts/b4qds.dtsi
>> b/arch/powerpc/boot/dts/b4qds.dtsi
>>> index e6d2f8f..de8cb38 100644
>>> --- a/arch/powerpc/boot/dts/b4qds.dtsi
>>> +++ b/arch/powerpc/boot/dts/b4qds.dtsi
>>> @@ -120,25 +120,36 @@
>>> 		};
>>> 
>>> 		i2c at 118000 {
>>> -			eeprom at 50 {
>>> -				compatible = "at24,24c64";
>>> -				reg = <0x50>;
>>> -			};
>>> -			eeprom at 51 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x51>;
>>> -			};
>>> -			eeprom at 53 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x53>;
>>> -			};
>>> -			eeprom at 57 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x57>;
>>> -			};
>>> -			rtc at 68 {
>>> -				compatible = "dallas,ds3232";
>>> -				reg = <0x68>;
>>> +			pca9547 at 77 {
>>> +				compatible = "philips,pca9547";
>> 
>> We seem to be using nxp instead of philips now.

This is based on Documentation/devicetree/bindings/vendor-prefixes.txt

>> 
>>> +				reg = <0x77>;
>>> +				#address-cells = <1>;
>>> +				#size-cells = <0>;
>>> +				channel at 0 {
>> 
>> channel should probably be i2c
> 
> 
> Is there any standard for the name?
> i2c is ok but I think channel is more intuitional.
> 
> Hi Scott,
> What do you think of it.

Basing my comments on Documentation/devicetree/bindings/i2c/i2c-mux.txt 


> 
> Thanks.
> -Hongtao
> 
> 
>> 
>> [same comments below]
>> 
>>> +					#address-cells = <1>;
>>> +					#size-cells = <0>;
>>> +					reg = <0>;
>>> +					eeprom at 50 {
>>> +						compatible = "at24,24c64";
>>> +						reg = <0x50>;
>>> +					};
>>> +					eeprom at 51 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x51>;
>>> +					};
>>> +					eeprom at 53 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x53>;
>>> +					};
>>> +					eeprom at 57 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x57>;
>>> +					};
>>> +					rtc at 68 {
>>> +						compatible = "dallas,ds3232";
>>> +						reg = <0x68>;
>>> +					};
>>> +				};
>>> 			};
>>> 		};
>>> 
>>> diff --git a/arch/powerpc/boot/dts/t4240qds.dts
>> b/arch/powerpc/boot/dts/t4240qds.dts
>>> index 0555976..ae68595 100644
>>> --- a/arch/powerpc/boot/dts/t4240qds.dts
>>> +++ b/arch/powerpc/boot/dts/t4240qds.dts
>>> @@ -118,34 +118,45 @@
>>> 		};
>>> 
>>> 		i2c at 118000 {
>>> -			eeprom at 51 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x51>;
>>> -			};
>>> -			eeprom at 52 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x52>;
>>> -			};
>>> -			eeprom at 53 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x53>;
>>> -			};
>>> -			eeprom at 54 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x54>;
>>> -			};
>>> -			eeprom at 55 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x55>;
>>> -			};
>>> -			eeprom at 56 {
>>> -				compatible = "at24,24c256";
>>> -				reg = <0x56>;
>>> -			};
>>> -			rtc at 68 {
>>> -				compatible = "dallas,ds3232";
>>> -				reg = <0x68>;
>>> -				interrupts = <0x1 0x1 0 0>;
>>> +			pca9547 at 77 {
>>> +				compatible = "philips,pca9547";
>>> +				reg = <0x77>;
>>> +				#address-cells = <1>;
>>> +				#size-cells = <0>;
>>> +				channel at 0 {
>>> +					#address-cells = <1>;
>>> +					#size-cells = <0>;
>>> +					reg = <0>;
>>> +					eeprom at 51 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x51>;
>>> +					};
>>> +					eeprom at 52 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x52>;
>>> +					};
>>> +					eeprom at 53 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x53>;
>>> +					};
>>> +					eeprom at 54 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x54>;
>>> +					};
>>> +					eeprom at 55 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x55>;
>>> +					};
>>> +					eeprom at 56 {
>>> +						compatible = "at24,24c256";
>>> +						reg = <0x56>;
>>> +					};
>>> +					rtc at 68 {
>>> +						compatible = "dallas,ds3232";
>>> +						reg = <0x68>;
>>> +						interrupts = <0x1 0x1 0 0>;
>>> +					};
>>> +				};
>>> 			};
>>> 		};
>>> 	};
>>> --
>>> 1.8.0
>>> 
>>> 
>>> _______________________________________________
>>> Linuxppc-dev mailing list
>>> Linuxppc-dev at lists.ozlabs.org
>>> https://lists.ozlabs.org/listinfo/linuxppc-dev
>> 
> 



More information about the Linuxppc-dev mailing list