Eric, I must agree the naming of these usb pei related ppi guids are not good, which misleads you.
There is no the chicken and egg problem. gPeiUsbHostControllerPpiGuid and gPeiUsbControllerPpiGuid are two different ppis. The former is consumed by UsbPei and the latter is consumed by XhciPei. You need write a pei module to produce PeiUsbControllerPpi (see MdeModulePkg/Include/Ppi for definitions) at first. Thanks Feng -----Original Message----- From: edk2-devel [mailto:[email protected]] On Behalf Of Eric Wittmayer Sent: Saturday, August 15, 2015 08:12 To: [email protected] Subject: [edk2] Help debugging PEIM on Minnowboard Max I'm writing a PEIM for a USB3 device but having trouble even getting the UsbBusPie and XhciPei modules to load during boot. I thought getting the existing Usb Peims to load would be a good first step. I looked at the DEPEX for both of the above modules and tried removing "gEfiPeiBootInRecoveryModePpiGuid" but I didn't see them load. If I set both of their DEPEX == TRUE then I see some print statements that show they are at least trying to load but then I have a chicken and egg problem in that UsbBusPie needs either gPeiUsbHostControllerPpiGuid or gPeiUsb2HostControllerPpiGuid which come from XhciPei. However, XhciPei needs gPeiUsbControllerPpiGuid which comes from UsbBusPei before it will install the gPeiUsb2HostControllerPpiGuid. The same cross dependency is shown in the DEPEX for these two modules. I feel like I'm missing something simple and fundamental and I'm hoping someone will point me in the right direction. Thanks, Eric W _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

