On Tue, Dec 20, 2022 at 1:37 AM Felipe Balbi <balbi@xxxxxxxxxx> wrote: > > Rob Herring <robh@xxxxxxxxxx> writes: > > > The rockchip,dwc3.yaml schema defines a single DWC3 node, but the RK3399 > > uses the discouraged parent wrapper node and child 'generic' DWC3 node. > > Why discouraged? Splitting those two separate devices (yes, they are > separate physical modules) has greatly simplified e.g. power management > and encapsulation of the core module. Sometimes they are separate and that's fine, but often it's just different clocks, resets, etc. and that's no different from every other block. If there's wrapper registers or something clearly extra, then I agree a wrapper parent node makes sense. Otherwise, for cases like RK3399, I don't think it does, but we're stuck with it now. Also, we have this pattern pretty much nowhere else and DWC3 is not special. Rob