Thanks for the patch! + Andrei and Jeremey for review
I think this may be a side effect of https://github.com/tianocore/edk2-platforms/commit/f8958b86e8863432b815a132a0f0fe82950c6dd1 Previously, the DwHcReset() function did not check for valid Attributes passed in as an argument. So if you pass in 0, the function will still happily reset the controller. That caused UEFI SCT issues (since the function will take in garbage Attributes without checking for their validity, per UEFI spec). The change was to verify the Attributes are valid, and return EFI_UNSUPPORTED if they are not. The only valid attributes for resetting are EFI_USB_HC_RESET_GLOBAL and EFI_USB_HC_RESET_HOST_CONTROLLER. I think your change makes sense. But I would like to run more tests. Acked-by: Samer El-Haj-Mahmoud <samer.el-haj-mahm...@arm.com> > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of René > Treffer via groups.io > Sent: Thursday, March 11, 2021 7:40 AM > To: devel@edk2.groups.io > Cc: Pete Batard <p...@akeo.ie>; Leif Lindholm <l...@nuviainc.com>; Ard > Biesheuvel <ardb+tianoc...@kernel.org> > Subject: [edk2-devel] [edk2-platforms][PATCH 1/1] Platform/RaspberryPi: > Fix dwc2 reset on raspberry pi boards > > DwHcReset expects attributes as the second argument. A reset is performed > if the passed attribute is valid. However 0 is not a valid attribute and will > thus > never cause a controller reset. > > Passing EFI_USB_HC_RESET_HOST_CONTROLLER will reset the dwc2 > controller as expected. > > This enables the USB 2.0 port of the raspberry compute module 4. > --- > Platform/RaspberryPi/Drivers/DwUsbHostDxe/DriverBinding.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DriverBinding.c > b/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DriverBinding.c > index bada13a6cd..bb228e62d9 100644 > --- a/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DriverBinding.c > +++ b/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DriverBinding.c > @@ -140,7 +140,7 @@ DriverStart ( > * UsbBusDxe as of b4e96b82b4e2e47e95014b51787ba5b43abac784 expects > * the HCD to do this. There is no agent invoking DwHcReset anymore. > */ > - DwHcReset (&DwHc->DwUsbOtgHc, 0); > + DwHcReset (&DwHc->DwUsbOtgHc, > EFI_USB_HC_RESET_HOST_CONTROLLER); > DwHcSetState (&DwHc->DwUsbOtgHc, EfiUsbHcStateOperational); > > Status = gBS->InstallMultipleProtocolInterfaces ( > -- > 2.27.0 > > > > > IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#72687): https://edk2.groups.io/g/devel/message/72687 Mute This Topic: https://groups.io/mt/81260443/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-