bini 发表于 2008-3-28 20:43:50

[原创]EFI application:PCI read & write 程序源码

本来去年去南京UEFI上学习过,但一直没用,直到新工作上马,EFI成为必须,新机器也是刚拿到刚3天,自己边学边写的一个PCI配置空间的读写、EFI Application程序的作业(也是自己的第一个EFI应用程序),要知道是边学边写,函数都是乱找一通的,所以代码和流程乱七八糟,不想再整了,别见笑。(注意,本程序运行是在模拟环境,所看到的PCI Device是用驱动虚拟的)。

接下来将学习EFI Driver的编写。

本Application的介面:

winbondowen 发表于 2008-3-29 21:27:02

读明白了
弱的问一下。
部分函数的底层代码是谁实现的,也是你实现的吗?
咯。。。。。
小强。

ljk19841115 发表于 2008-3-30 19:43:26

还没看到过efi的程序,今天终于有机会看看了,谢谢南狼大哥~~~

kelvinklee 发表于 2008-3-31 09:06:16

一看这个界面就是干Legacy BIOS出身的,熟悉一些类似RU的Tools。
在EFI下,也许能更漂亮一些。

或许可以开发一些新功能,使EFI Shell更加的友好。

xtdumpling 发表于 2008-4-1 22:05:14

第一次看EFI的程序,学习了

lisen4 发表于 2008-4-4 11:00:07

支持bini~~~:)

wangxy200696 发表于 2008-4-9 21:30:52

没有看到那几个头文件!

amty.wang 发表于 2008-4-9 23:20:55

如果没记错的话,在SDK中就包含了这几个文件,忘鸟。。。

starzeng 发表于 2008-7-22 14:39:34

跟楼主共同学习!

starzeng 发表于 2008-7-22 14:52:28

一个比较白痴的问题,请问这个程序该如何编译,谢谢!

xtdumpling 发表于 2008-7-22 23:26:42

在vs2005+EDK里面可以编译,不过我上面运行是找不到gEfiPciRootBridgeIoProtocolGuid...

bini 发表于 2008-7-23 09:50:13

回楼上的同学,找不到,请加入这个。

xtdumpling 发表于 2008-7-23 13:49:53

恩,好了,
不过第一次用的时候要自己load 才可以,
load一次后,firmware volume会自动加载这个DXE driver了.
好强!!!:victory:

[ 本帖最后由 xtdumpling 于 2008-7-24 13:47 编辑 ]

xtdumpling 发表于 2008-7-23 14:10:42

不好意思, 上面的说法有误!
load后,我看到FVRECOVERY.inf里面有了那个DXE了, 所以自以为load会改变FD,那时我自己加了"FV=NULL"

楼主的那个WinNtPciHostBridge driver会自动加载的,
不好意思~~

starzeng 发表于 2008-7-24 08:38:12

有没有比较详细的编译步骤,谢谢!

xtdumpling 发表于 2008-7-24 11:15:43

EFI Developer Kit (EDK)Getting Started Guide ---from https://www.tianocore.org

https://www.tianocore.org/files/documents/16/105/file_105.dat/Edk%20Getting%20Started%20Guide.0.41.pdf

xtdumpling 发表于 2008-7-24 13:47:56

12#里面好像掉了WinNtPciHostBridge.dxs这个文件

xtdumpling 发表于 2008-9-9 14:29:28

原帖由 bini 于 2008-3-28 20:43 发表 http://www.ufoit.com/bbs/images/common/back.gif(注意,本程序运行是在模拟环境,所看到的PCI Device是用驱动虚拟的)。
发现一个小问题,程序只虚拟了ISA(00 1F 00) PCI Configuration Space的240个字节的,还差16个呢!:lol

libeili 发表于 2009-3-26 20:53:13

原帖由 xtdumpling 于 2008-7-24 13:47 发表 http://www.ufoit.com/bbs/images/common/back.gif
12#里面好像掉了WinNtPciHostBridge.dxs这个文件
是啊,我在编译的时候出错,提示是缺少WinNtPciHostBridge.dxs,还望楼主给出解决办法啊

libeili 发表于 2009-3-26 21:01:52

是少了一个,自己要手动添加一个就ok了,呵呵,得研究一下怎么模拟的pcihostbridge
页: [1] 2
查看完整版本: [原创]EFI application:PCI read & write 程序源码