Re: [PATCH v9 06/10] usb: dwc3: qcom: Add support to read IRQ's related to multiport

From: Johan Hovold
Date: Fri Jul 21 2023 - 05:21:40 EST


Again, please remember to trim your replies.

On Fri, Jul 21, 2023 at 01:49:37PM +0530, Krishna Kurapati PSSNV wrote:
> On 7/21/2023 1:44 PM, Johan Hovold wrote:
> > On Mon, Jul 03, 2023 at 12:29:41AM +0530, Krishna Kurapati PSSNV wrote:
> >> On 6/27/2023 8:01 PM, Johan Hovold wrote:

[...]

> >>> So the above should all be merged in either a single helper looking up
> >>> all the interrupts for a port and resused for the non-MP case.

> How about the implementation in the attached patches. This way we
> don't need to know if we are multiport capable or not.

As I wrote above, I think you should instead add a common helper for
setting up all the interrupts for a port. For example, along the lines
of:

dwc3_setup_port_irq(int index)
{
if (index == 0)
try non-mp name
else
generate mp name

lookup and request hs irqs
lookup and request ss irq
lookup and request power irq
}

dwc3_setup_irq()
{
determine if MP (num_ports)

for each port
dwc3_setup_port_irq(port index)
}

The port irq helper can either be told using a second argument that this
is a non-mp controller, or you can first try looking up one of the
non-mp names.

My mailer discarded your second patch, but you cannot assume that the
devices connected to each port are of the same type (e.g. HS or SS)
based on what is connected to the first port.

Johan