Ben,
Add my comments below.
Thanks,
Eric
From: Ben Schroeder
[mailto:[email protected]]<mailto:[mailto:[email protected]]>
Sent: Friday, October 12, 2012 12:58 AM
To: [email protected]<mailto:[email protected]>
Subject: [edk2] HII Development
Hii all,
I am having trouble implementing HII for a PCI network device I am working with.
1. If I use UEFI_HII_RESOURCE_SECTION = TRUE in my inf file, I cannot use
the HiiAddPackages() function to add my packages.
Instead from the exmaples I see just uses: NewPackageList() to publich the HII
package list.
The DriverSampleDxe does not use UEFI_HII_RESOURCE_SECTION = TRUE.
[[Eric]] When UEFI_HII_RESOURCE_SECTION = TRUE, the HII package is installed
when load this image. Detail about how to use the HII package when
UEFI_HII_RESOURCE_SECTION = TRUE see sample in
MdeModulePkg\Universal\HiiResourcesSampleDxe.
2. I use InstallMultipleProtocolInterfaces() to install DevicePath and
HiiConfigAccess protocols. Do I need to install them on a new handle as shown
in the examples? Why not install it on the current device handle?
[[Eric] If the device handle not has other config access protocol, you can
install your config access protocol on this device handle. In the driver
sample, it not has a device handle, so it install on a new handle.
3. After InstallMultipleProtocolInterfaces() and NewPackageList(), when
the UEFI comes to load my HII interface, the UEFI browser will crash.
What can be the reason for this? My configAccess protocol right now just has
returns EFI_UNSUPPORTED on the 3 functions it needs to implement.
All the functions up until now have return status success.
I haven't installed almost anything else, and follow the UEFI driver module
closely.
Also, testing on qemu does not lead to crashes, but burning it on a chip and
working with a real UEFI device it will crash the browser.
I think maybe my DevicePath is incorrect, and the UEFI tries to access my HII
through the device path.
Or maybe the HiiAddPackages() was incorrect and it cannot find my packages?
(even though it added it successfully and returned a handle)
[[Eric] Base on the above info, we can't found the root cause, you can update
the driver base on the answer to 1 and 2 and try again. If still has error, we
can continue to discus. If can attach some log may help to solve this error.
Thanks, Ben.
------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel