On Wednesday 19 November 2014 08:27:09 Peter Griffin wrote: > + soc { > + usb2_picophy1: phy@1 { > + compatible = "st,stih407-usb2-phy"; > + #phy-cells = <0>; > + st,syscfg = <&syscfg_core 0xf8 0xf4>; > + resets = <&softreset STIH407_PICOPHY_SOFTRESET>, > + <&picophyreset STIH407_PICOPHY0_RESET>; > + reset-names = "global", "port"; > + }; > > + usb2_picophy2: phy@2 { > + compatible = "st,stih407-usb2-phy"; > + #phy-cells = <0>; > + st,syscfg = <&syscfg_core 0xfc 0xf4>; > + resets = <&softreset STIH407_PICOPHY_SOFTRESET>, > + <&picophyreset STIH407_PICOPHY1_RESET>; > + reset-names = "global", "port"; > + }; > + }; In theory the unit-address (the @1 and @2 part of the name) is supposed to match the 'reg' property value, but of course that doesn't work any more with the changed binding. The same problem keeps coming up, so I wonder if anyone has an idea how this is supposed to be handled properly. Should we just make up unit-address numbers? I guess a more elaborate variant would be to have a parent node with #address-cells = <1> and no ranges, to make up a new address space with arbitrarily assigned reg values, like phys { #address-cells = <1>; /* just counting the nodes */ #size-cells = <0>; usb2_picophy1: phy@0 { compatible = "st,stih407-usb2-phy"; reg = <0>; #phy-cells = <0>; st,syscfg = <&syscfg_core 0xf8 0xf4>; }; usb2_picophy2: phy@1 { compatible = "st,stih407-usb2-phy"; reg = <0>; #phy-cells = <0>; st,syscfg = <&syscfg_core 0xf8 0xf4>; }; } Should we try to do it like this, or is that overcomplicating things? Arnd -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html