[PATCH 03/15] x86/dtb: Add a device tree for CE4100

Sebastian Andrzej Siewior bigeasy at linutronix.de
Mon Jan 3 22:28:24 EST 2011


Grant Likely wrote:

>> diff --git a/arch/x86/platform/ce4100/falconfalls.dts b/arch/x86/platform/ce4100/falconfalls.dts
>> new file mode 100644
>> index 0000000..24e67ca
>> --- /dev/null
>> +++ b/arch/x86/platform/ce4100/falconfalls.dts
>> +
>> +				i2c at 15a00 {
>> +					#address-cells = <1>;
>> +					#size-cells = <0>;
>> +					reg = <0x15a00 0x0 0x0 0x0>;
>> +
>> +
>> +					i2c at 0 {
>> +						reg = <0>;
>> +					};
>> +
>> +					i2c at 1 {
>> +						#address-cells = <1>;
>> +						#size-cells = <0>;
>> +						reg = <1>;
>> +
>> +						pcf8575 at 26 {
>> +							compatible = "ti,pcf8575";
>> +							reg = <0x26>;
>> +						};
>> +					};
>> +
>> +					i2c at 2 {
>> +						#address-cells = <1>;
>> +						#size-cells = <0>;
>> +						reg = <2>;
>> +
>> +						pcf8575 at 26 {
>> +							compatible = "ti,pcf8575";
>> +							reg = <0x26>;
>> +						};
>> +					};
> 
> All these i2c bus controllers should have a compatible value so that
> the OS knows what driver to bind to them.

The node i2c at 15a00 is the PCI device. This PCI device has three bars, each
bar is a complete i2c controller. All three controller share one IRQ. The
device is probed via its pci-id and therefore I have no compatible value
here. Do you want me to add compatible values based on "Vendor ID, Device
ID, Subsystem Vendor ID, ..." as mention in the PCI-bindings?

The child nodes here (i2c at 0,...) represent the bars. I probably should
replace i2c at 0 with bar at 0 and the reg property with a bar property. Would
that be okay?

> Also, the node names for the i2c devices should reflect what the
> device does, not what the part number is (grep ePAPR for 'generic
> names')
Okay. This probably also means that I should replace pic@ with 
interrupt-controller and so on.

Sebastian


More information about the devicetree-discuss mailing list