* Andreas Kemnade <andreas@xxxxxxxxxxxx> [231205 09:43]: > On Tue, 5 Dec 2023 10:27:56 +0100 > Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote: > > > On 05/12/2023 10:02, Andreas Kemnade wrote: > > > On Tue, 5 Dec 2023 09:45:44 +0100 > > > Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote: > > > > > >>> Sure the clock nodes can be there for the child IP, but they won't do > > >>> anything. And still need to be managed separately by the device driver if > > >>> added. > > >> > > >> So if OS does not have runtime PM, the bindings are wrong? Bindings > > >> should not depend on some particular feature of some particular OS. > > > > > > Any user of the devicetree sees that there is a parent and the parent needs > > > to be enabled by some mechanism. > > > E.g. I2c devices do not specify the clocks of the parent (the i2c master) Yeah the interconnect target module needs to be enabled before the child IP can be probed for any OS. That is unless the target module is left on from the bootloader. But like I said, I have no objection to also having the clocks for the child SGX device here. I think two out of the tree SGX clocks are merged, so one of the three clocks would repeat twice in the binding. We do provide some of the clock aliases, like fck and ick, for the child ip automatically by the ti-sysc interconnect target module. But likely we don't want to clock name specific handling in the driver so best to standardize on SGX specific clock names. That is if the clock properties are not set optional. > > If you use this analogy, then compare it with an I2C device which has > > these clock inputs. Such device must have clocks in the bindings. > > > I would see target-module = i2c master. > > Well, if there is a variant of the i2c device which does not require > external clocks and a variant which requires it, then clock can be > optional. Yes that sounds about right for an analogy :) Regards, Tony