Re: [PATCH 1/6] dt-bindings: usb: dwc3: Clean up hs_phy_irq in bindings

From: Krishna Kurapati PSSNV
Date: Tue Nov 28 2023 - 05:37:40 EST


Now if the HS interrupt is truly unusable, I guess we can consider
dropping it throughout and the above becomes just three permutations
instead, which can even be expressed along the lines of:

Infact, I wanted to do this but since you mentioned before that if HW
has it, we must describe it, I kept it in. But since this functionality
is confirmed to be mutually exclusive of qusb2/{dp/dm}, I am aligned to
skip it in bindings and drop it in DT.

As I mentioned elsewhere, it depends on whether it can be used at all.
Not simply whether there is some other mechanism that can be used in its
stead. Such a decision should be left up to the implementation.

That's why I said "truly unusable" above. It's still not clear to me
whether that is the case or not.

I looked at the code of 4.4, 4.14/ 4.19/ 5.4/ 5.10/ 5.15/ 6.1 and none
of them implement the hs_phy_irq.

But again, that is completely irrelevant. As I've said numerous times
now, this is about what the hardware is capable of, not which
functionality a particular OS chooses to use.
>> 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.

Let me know your thoughts on this.

Regards,
Krishna,