Re: [PATCH v8 7/9] arm64: dts: qcom: sc8280xp: Add multiport controller node for SC8280

Krishna Kurapati PSSNV
2023-05-16T14:45:09Z

On 5/16/2023 8:12 PM, Johan Hovold wrote:
> On Tue, May 16, 2023 at 07:54:00PM +0530, Krishna Kurapati PSSNV wrote:
>>
>>
>> On 5/16/2023 4:24 PM, Johan Hovold wrote:
>>> On Mon, May 15, 2023 at 09:02:13PM +0530, Krishna Kurapati PSSNV wrote:
>>>> On 5/15/2023 7:56 PM, Johan Hovold wrote:
>>>>> On Sun, May 14, 2023 at 11:19:15AM +0530, Krishna Kurapati wrote:
>>>
>>>>>> @@ -3133,6 +3133,72 @@ usb_1_role_switch: endpoint {
>>>>>> };
>>>>>> };
>>>>>>
>>>>>> + usb_2: usb@a4f8800 {
>>>>>
>>>>> As I believe someone already pointed out, this node is not in sort order
>>>>> (i.e. it should go before usb@a6f8800).
>>>
>>>> I missed that message, but since I named it usb_2, so I placed it in
>>>> order after usb_1. Hope that is fine !!
>>>
>>> No, the nodes should be sorted by unit address so you need to move it.
>>>
>>
>> Sure, in that case will put it in between usb_0 and usb_1 nodes.
>
> No, it goes before usb_0 on sc8280xp.
>
> usb_2: usb@a4f8800 {
> usb_0: usb@a6f8800 {
> usb_1: usb@a8f8800 {
>
>>>>>> + interrupts-extended = <&pdc 127 IRQ_TYPE_EDGE_RISING>,
>>>>>> + <&pdc 126 IRQ_TYPE_EDGE_RISING>,
>>>>>> + <&pdc 16 IRQ_TYPE_LEVEL_HIGH>,
>>>>>> + <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
>>>>>> + <&intc GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
>>>>>> + <&intc GIC_SPI 857 IRQ_TYPE_LEVEL_HIGH>,
>>>>>> + <&intc GIC_SPI 856 IRQ_TYPE_LEVEL_HIGH>;
>>>>>> +
>>>>>> + interrupt-names = "dp_hs_phy_irq",
>>>>>> + "dm_hs_phy_irq",
>>>>>> + "ss_phy_irq",
>>>>>> + "pwr_event_1",
>>>>>> + "pwr_event_2",
>>>>>> + "pwr_event_3",
>>>>>> + "pwr_event_4";
>>>
>>>>>> + interconnect-names = "usb-ddr", "apps-usb";
>>>>>
>>>>> Looks like 'wakeup-source' is missing here too.
>>>>>
>>>>
>>>> I believe this property was added to enable wakeup from system suspend
>>>> in host mode. I didn't add this property as currently I don't need to
>>>> support wakeup. If any requirement comes in future, then I might need to
>>>> add dp/dm interrupts (if any) for other ports as well and then need to
>>>> change driver code to enable/disable them on suspend/resume.
>>>
>>> If there are dp/dm/ss interrupts per ports then those need to be defined
>>> in the binding and devicetree from the start.
>>>
>>> Similar for 'wakeup-source' which indicates that the controller *can* be
>>> used to wakeup the system from suspend (which those pdc interrupts
>>> indicates).
>>>
>>> Remember that the devicetree is supposed to describe the hardware, and
>>> which features are currently supported in some version of software is
>>> mostly irrelevant.
>
>> Can I take this up as a separate series (Wakeup support for multiport)
>> once this series is merged. If I am adding interrupts for other ports, I
>> can add driver code to handle those interrupts as well.
>
> Nope. You can possibly add driver support later, but the binding and
> dtsi need to be correct from the start (and it may be easier to do it
> all at once).
>

Ok, will add this in v9.

Regards,
Krishna,