Re: [PATCH v7 1/5] usb: dwc3: host: Set PHY mode during suspend

From: Felipe Balbi
Date: Thu May 13 2021 - 09:47:03 EST



Hi,

Matthias Kaehlcke <mka@xxxxxxxxxxxx> writes:
>> > @@ -127,6 +142,50 @@ int dwc3_host_init(struct dwc3 *dwc)
>> > return ret;
>> > }
>> >
>> > +static void dwc3_set_phy_mode(struct usb_hcd *hcd)
>> > +{
>> > +
>> > + int i, num_ports;
>> > + u32 reg;
>> > + unsigned int ss_phy_mode = 0;
>> > + struct dwc3 *dwc = dev_get_drvdata(hcd->self.controller->parent);
>> > + struct xhci_hcd *xhci_hcd = hcd_to_xhci(hcd);
>> > +
>> > + dwc->hs_phy_mode = 0;
>> > +
>> > + reg = readl(&xhci_hcd->cap_regs->hcs_params1);
>> > + num_ports = HCS_MAX_PORTS(reg);
>>
>> there's a big assumption here that xhci is still alive. Why isn't this
>> quirk implemented in xhci-plat itself?
>
> That should work for determining which types of devices are connected to
> the PHYs, however IIUC the xhci-plat doesn't know about the PHY topology.
> Are you suggesting to move that info into the xhci-plat driver so that it
> can set the corresponding PHY modes?

Yes, if xHCI needs to know about PHYs in order to properly configure the
PHYs, so be it :-)

--
balbi

Attachment: signature.asc
Description: PGP signature