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,