I have tried getting slot number from SMBIOS table entries in EFI configuration table from the call back of event EFI_EVENT_GROUP_READY_TO_BOOT but still It looks like gEfiSmbiosProtocolGuid does not get installed by the time I get call back for ready to boot event.I have registered the event at end of driver start. here is the call that I have used to register for ready to boot event. gBS->CreateEventEx ( EVT_NOTIFY_SIGNAL, TPL_CALLBACK, MyBootEventNotifyCallBack, &MyContext, &gEfiEventReadyToBootGuid, &MyBootEvent );
Please help me if there is an alternative method to get the PCI slot number or if there is something wrong in the above method. Thanks in advance. -- Jabir ----------------------------------------------------------------------------------------------------------- Message: 3 Date: Mon, 23 Jul 2012 15:59:15 -0600 From: "Prakash, Sathya" <sathya.prak...@lsi.com> Subject: Re: [edk2] How to get PCI Slot number in UEI Driver. To: "edk2-devel@lists.sourceforge.net" <edk2-devel@lists.sourceforge.net> Message-ID: <217bf3cf80e93540b3049f95a676f09d015f666...@cosmail01.lsi.com> Content-Type: text/plain; charset="us-ascii" For now I will try to create EFI_EVENT_GROUP_READY_TO_BOOT and check whether I get SMBIOS table in it. But it will be good if we can get this changed and we get PCI slotinfo as part of some PCI protocol structures or having a table filled with the details for Boot services driver. Thanks Sathya -----Original Message----- From: Andrew Fish [mailto:af...@apple.com] Sent: Monday, July 23, 2012 2:34 PM To: edk2-devel@lists.sourceforge.net Subject: Re: [edk2] How to get PCI Slot number in UEI Driver. Samer, The Tiano SMBIOS scheme used the overly complicated data hub abstractions to generate table entries and only created the tables via a ReadyToBootEvent, but the new PI 1.2 Smbios protocol scheme does not require an event an the tables can get built in real time. So it is probably more of an issue needing the newer PI 1.2 implementation to get the correct behavior. The only way to work around the ReadyToBoot sequencing issue you mention is to register you ReadyToBoot event a last as possible (for example in your driving binding Start function). This is really a hack as the UEFI architecture does not guarantee order of event callback, but all the implementations I know about call back in order of registration. Andrew Fish https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/MdePkg/Include/Protocol/Smbios.h https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.c On Jul 23, 2012, at 12:47 PM, El-Haj-Mahmoud, Samer wrote: > Andrew, > > This topic came up before on this list. While waiting for the ReadyToBoot > event seems to be the best possible option available today, it is not > standard, and may not work on all systems. There is no guarantee that the > SMBIOS table will be completed before the driver's ReadyToBoot event > notification callback function is called. > > We should probably define a new standard event for this purpose. > > Thanks, > --Samer > > > -----Original Message----- > From: Andrew Fish [mailto:af...@apple.com] > Sent: Monday, July 23, 2012 11:43 AM > To: edk2-devel@lists.sourceforge.net > Subject: Re: [edk2] How to get PCI Slot number in UEI Driver. > > You could try to create an EFI_EVENT_GROUP_READY_TO_BOOT event and check the > SMBIOS info there? > > Andrew Fish > > > On Jul 23, 2012, at 8:59 AM, Prakash, Sathya wrote: > >> Any help on this? >> >> -----Original Message----- >> From: Prakash, Sathya [mailto:sathya.prak...@lsi.com] >> Sent: Friday, July 20, 2012 3:53 PM >> To: edk2-devel@lists.sourceforge.net >> Subject: [edk2] How to get PCI Slot number in UEI Driver. >> >> I need to get the information of the slot in which my controller is >> connected and what I was trying is to use SMBIOS system configuration table. >> But when my driver is loaded from OptionROM the table was not populated, but >> If I load the driver from shell I am able to get the information. Do any of >> you know another method to get PCI Slot information from boot services >> driver? >> >> Thanks >> Sathya >> >> --------------------------------------------------------------------- ------------------------------------------------------------------------------ BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT Develop your own process in accordance with the BPMN 2 standard Learn Process modeling best practices with Bonita BPM through live exercises http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_ source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel