On Tue, Jun 07, 2022 at 09:07:59AM +0200, Clément Léger wrote: > Le Mon, 6 Jun 2022 14:12:52 -0400, > Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> a écrit : > > > On Mon, Jun 06, 2022 at 04:18:02PM +0200, Clément Léger wrote: > > > When Linux is running under OP-TEE, the SFR is set as secured and thus > > > the AT91_OHCIICR_USB_SUSPEND register isn't accessible. Add a SMC to > > > do the appropriate call to suspend the controller. > > > The SMC id is fetched from the device-tree property > > > "microchip,suspend-smc-id". if present, then the syscon regmap is not > > > used to enter suspend and a SMC is issued. > > > > > > Signed-off-by: Clément Léger <clement.leger@xxxxxxxxxxx> > > > --- > > > > Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> > > > > However, this is a little weird... You've written > > usb_hcd_at91_probe() so that the SMC is detected in preference to the > > regmap, but then you wrote ohci_at91_port_suspend() so that the regmap > > is used in preference to the SMC. It's not wrong, but it is confusing > > to read. > > > > Do you want to rewrite the patch to make the two routines agree on which > > mechanism to use by default? > > > > Alan Stern > > Hi Alan, > > I'll rewrite that ! I did it in this specific order in the probe to > allow overloading the device-tree with a SMC ID without removing the > syscon property. This way, the regmap stays the default if no > "microchip,suspend-smc-id" property is provided. > > Does it sounds good to you ? Sure. Just make ohci_at91_port_suspend() try to use the SMC first, and then use the regmap only if the SMC ID hasn't been set. Alan Stern