Thanks Igor and Neeraj for your answers. Device ID passed in EfiRom = Device ID in the PCI config space. Protocols checking completed successfully.
Maybe platform skips option ROMs? Or platform must check all OpRom drivers (and execute entrypoints) ? 06.03.2014, 00:04, "Igor Sharovar" <igor.sharo...@gmail.com>: > Another problem could be that you not correctly report Device ID in efirom > utility. Some UEFI BIOS implementation don't care about Device ID, reported > in a OptionalRom image, but some does. You should check what you report when > execute efirom. > Igor Sharovar > > On Wed, Mar 5, 2014 at 5:54 AM, Neeraj Ladkani <neeraj.ladk...@gmail.com> > wrote: >> if you are trying to locate a specific protocol from your driver, it might >> not installed during boot process so it doesn't work, but when you execute >> it from shell the consumed protocol might already been loaded by some other >> driver so it works. >> >> please check the protocol you are trying to locate in your driver and and >> print the return value after LocateProtocol, you should be able to confirm >> it. >> >> On Wed, Mar 5, 2014 at 6:05 PM, Onipchuk Vladimir <v-onipc...@yandex.ru> >> wrote: >>> Hi All, >>> I have problems with the my PCI OpRom device driver on some platforms. >>> >>> Driver executing successfully on the old DG41TX motherboard, but on the >>> DH67BL and on the some new HP motherboards driver does not loading from >>> OpRom on the PCIe card (probably, even entrypoint does not executing). >>> Boot process not freezing and UEFI Shell from USB pen loading successfully >>> after platform initialization. >>> >>> With "loadpcirom" command from UEFI shell my driver executing successfully >>> on any platforms. >>> >>> Thanks, Vladimir. >>> >>> My entrypoint code: >>> >>> EFI_STATUS EFIAPI PciDriverEntryPoint >>> ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) >>> { >>> EFI_STATUS Status; >>> DEBUG ((EFI_D_INFO, "DRIVER ENTRYPOINT\n")); >>> // >>> // Install UEFI Driver Model protocol(s). >>> // >>> >>> Status = EfiLibInstallDriverBindingComponentName2 ( ImageHandle, >>> SystemTable, >>> &gPciDriverBinding, >>> ImageHandle, >>> &gPciComponentName, >>> &gPciComponentName2 >>> ); >>> >>> ASSERT_EFI_ERROR (Status); >>> // >>> // Install UEFI DriverSupportedEfiVersion Model protocol(s). >>> // >>> Status = gBS->InstallMultipleProtocolInterfaces ( >>> &ImageHandle, >>> &gEfiDriverSupportedEfiVersionProtocolGuid, >>> &gPciDriverSupportedEfiVersion, // EFI_2_40_SYSTEM_TABLE_REVISION NULL >>> ); >>> ASSERT_EFI_ERROR (Status); >>> return Status; >>> } >>> >>> ------------------------------------------------------------------------------ >>> Subversion Kills Productivity. Get off Subversion & Make the Move to >>> Perforce. >>> With Perforce, you get hassle-free workflows. Merge that actually works. >>> Faster operations. Version large binaries. Built-in WAN optimization and >>> the >>> freedom to use Git, Perforce or both. Make the move to Perforce. >>> http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/edk2-devel >> >> -- >> Thanks Neeraj >> >> ------------------------------------------------------------------------------ >> Subversion Kills Productivity. Get off Subversion & Make the Move to >> Perforce. >> With Perforce, you get hassle-free workflows. Merge that actually works. >> Faster operations. Version large binaries. Built-in WAN optimization and the >> freedom to use Git, Perforce or both. Make the move to Perforce. >> http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/edk2-devel > > , > ------------------------------------------------------------------------------ > Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce. > With Perforce, you get hassle-free workflows. Merge that actually works. > Faster operations. Version large binaries. Built-in WAN optimization and the > freedom to use Git, Perforce or both. Make the move to Perforce. > http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk > , > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel ------------------------------------------------------------------------------ Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce. With Perforce, you get hassle-free workflows. Merge that actually works. Faster operations. Version large binaries. Built-in WAN optimization and the freedom to use Git, Perforce or both. Make the move to Perforce. http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel