您的位置:首页 > 产品设计 > UI/UE

调用Uefi第一个驱动--hello world

2015-01-05 09:40 309 查看
前面写了一个hello world驱动,现在简单调用一下

-----------------testlib.c文件----------------------------

#include <uefi.h>

#include <library/uefilib.h>

#include <library/basememorylib.h>

#include <library/uefiapplicationentrypoint.h>

#include <Library/UefiBootServicesTableLib.h>

#include <Library/UefiRuntimeServicesTableLib.h>

//#include <protocol/firstdriver.h>

#include <firstdriver/firstdriver.h>

EFI_STATUS EFIAPI UefiMain(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)

{

EFI_STATUS Status = EFI_SUCCESS;

EFI_FIRSTDRIVER_PROTOCOL *gf;

Status = gBS->LocateProtocol(

&gEfifirstdriverProtocolGuid,

NULL,

&gf

);

if(EFI_SUCCESS == Status)

{

Print(L"success to locate protocol\n");

}

else

{

Print(L"failed to locate protocvol\n");

}

gf->Func1(gf);

Print(L"ia in protocol is %d\n",gf->ia);

return Status;

}

testlib.dsc的 [libraryclass] 块中加上

firstdriver|firstdriver/firstdriver/firstdriver.inf

-------------------testlib.inf-------------------------

[Packages]

MdePkg/MdePkg.dec

firstdriver/firstdriver.dec

[LibraryClasses]

UefiApplicationEntryPoint

UefiLib

[Protocols]

gEfifirstdriverProtocolGuid


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: