Hi, 200* Rafał Miłecki <zajec5@xxxxxxxxx> [211118 13:30]: > @@ -83,6 +83,33 @@ examples: > reg = <0x1800c1c0 0x24>; > reg-names = "cru_gpio_control"; > > + pins { > + #address-cells = <1>; > + #size-cells = <0>; > + > + pin@4 { > + reg = <4>; > + label = "i2c_scl"; > + }; > + > + pin@5 { > + reg = <5>; > + label = "i2c_sda"; > + }; > + }; The reg property should indicate the hardware offset from the device base address. The reg values above for 4 and 5 seem to be indexed instead :) Please update to use real register offsets from the 0x1800c1c0 base instead. If a reg offset + bit offset are needed, the #address-cells or #pinctrl-cells can be used. The main problem using an index is that you need to keep it in sync between the dts and device driver. And if a new SoC variant adds an entry between the registers, you end up having to renumber the index. Regards, Tony