Am Mittwoch, 12. September 2018, 10:22:44 CEST schrieb Manivannan Sadhasivam: > On Wed, Sep 12, 2018 at 09:26:12AM +0200, Heiko Stübner wrote: > > Am Mittwoch, 12. September 2018, 05:12:48 CEST schrieb Manivannan Sadhasivam: > > > Hi Ezequiel, > > > > > > On Tue, Sep 11, 2018 at 04:40:29PM -0300, Ezequiel Garcia wrote: > > > > On Tue, 2018-09-11 at 08:00 +0530, Manivannan Sadhasivam wrote: > > > > > Since the same family members of Rock960 boards (Rock960 and Ficus) > > > > > share the same configuration, split out the common nodes into a common > > > > > dtsi file for reducing code duplication. The board specific nodes for > > > > > Ficus boards are then placed in corresponding board DTS file. > > > > > > > > I think it should be possible to move the common USB nodes to the dtsi > > > > file, and keep the board-specific (phy-supply property) in the dts files: > > > > > > > > &u2phy0_host { > > > > > > > > phy-supply = <&vcc5v0_host>; > > > > > > > > }; > > > > > > > > &u2phy1_host { > > > > > > > > phy-supply = <&vcc5v0_host>; > > > > > > > > }; > > > > > > We can do that but my intention was to entirely partition the nodes > > > which are not common. So that it would be less confusing when someone > > > looks at it (please correct me if I'm wrong). > > > > The supply is actually named the same on both boards, so you could move > > all the usb-nodes to the main dtsi, including the reference to vcc5v0_host > > which would then get defined itself in the two board dts. > > > > Then again, seeing that the vcc5v0_host also only differs in the actually > > used gpio another option would be to move the whole regulator node > > to the dtsi and just define the gpio properties in the board dts files. > > > > Hmm, if that's the preferred option then I guess this applies to pcie > nodes also. At the end, usb and pcie nodes will be shrinked to below in > board dts: > > &pinctrl { > pcie { > pcie_drv: pcie-drv { > rockchip,pins = > <2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; > }; > }; > > usb2 { > host_vbus_drv: host-vbus-drv { > rockchip,pins = > <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>; > }; > }; > }; > > &pcie0 { > ep-gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_HIGH>; > status = "okay"; > }; > > &vcc3v3_pcie { > gpio = <&gpio2 5 GPIO_ACTIVE_HIGH>; > }; > > &vcc5v0_host { > gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>; > }; yep, ideally we could go that way. It's way easier to determine the actual differences between boards that way as well. Heiko