On Tue, Nov 28, 2023 at 04:02:53PM +0530, Krishna Kurapati PSSNV wrote: > > >> My opinion would be to keep the power_event irq as mandatory and not to > >> include the hs_phy_irq. > > > > Ok, but you still need to explain why dropping hs_phy_irq is correct. > > > > Until there's a clear answer to that, it seems we need to include it. > > Sure, I agree with you. It should describe what hardware is capable of, > not what we choose to add in driver code. In that sense we can add the > hs_phy_irq to all targets. > > In my next revision, I can do the following: > > - anyOf: > - items: > - const: qusb2_phy > - items: > - const: dp_hs_phy_irq > - const: dm_hs_phy_irq > - const: hs_phy_irq > - const: pwr_event > - const: ss_phy_irq (optional) > > A modified version of your suggestion should help cover all cases and > describe all DT's perfectly. It may be better to spell out the permutations. Especially since there are no platforms with both qusb2_phy and dp/dm as I thought when mentioning the above. Using anyOf also makes it hard to specify min/maxItems as you'll need to do. So back to my initial proposal, with a slight modification moving pwr_event first (e.g. as it is not a wakeup interrupt): qusb2-: - const: pwr_event - const: qusb2_phy - const: ss_phy_irq (optional) qusb2: - const: pwr_event - const: hs_phy_irq - const: qusb2_phy - const: ss_phy_irq (optional) femto-: - const: pwr_event - const: dp_hs_phy_irq - const: dm_hs_phy_irq - const: ss_phy_irq (optional) femto: - const: pwr_event - const: hs_phy_irq - const: dp_hs_phy_irq - const: dm_hs_phy_irq - const: ss_phy_irq (optional) That ss_phy_irq is optional would be expressed as minItems being one less than maxItems for each permutation. Johan