当前位置: 首页 > news >正文

MinnowBoard MAX单板UEFI BIOS代码编译教程

此教程用于UEFI EDK2代码的研究,虽然EDK2框架代码开源,但是都是在模拟器上跑仿真,差点意思,搞过嵌入式大的应该有一个共识,是骡子是马,你得把板子点亮啊。MinnowBoard MAX单板是intel10多年前发布的软硬件全部开源的x86单板,UEFI BIOS部分代码也是开源的(部分和芯片配置相关的代码是以二进制文件的形式发布),可以用于在实际单板上调试学习EDK2代码。

简单介绍下探索过程,UEFI BIOS代码编译的整个流程断断续续耗费我三个多月,是一场心力交瘁持久战。
第一阶段,EDK2 platform上是有MinnowBoard MAX单板UEFI BIOS代码工程的,但是更新停止在2019年,后面无人维护了。下载最新EDK2 工程,按照页面编译步骤来,一堆报错。估计因为没人维护了,各种模块的更新根本没人去考虑验证这块板子。前面我各种尝试修改无果,然后我尝试把代码回退到2019年8月,进行编译,各种编译工具对应回退,还是不行。没办法我还是基于最新的EDK2代码进行修改PlatformPkgX64.dsc文件,修改过程中,我还发现一个老六在修改DEBUG函数标识时,使用整体字符串查找替代法,还通过了review,把一些函数都给破坏了。经过一堆修改后,编译成功了,得到了想要的VLV.fd文件,通过bios编程烧写器烧录到板子上,启动一半报错卡住了,显示HOB SMMbase地址找不到,找到源码对应位置,研究几天无果放弃,毕竟不是业内人士。请添加图片描述
第二阶段,intel官网上其实是有发布minnowboard max单板uefi固件的,时间是2018年11月份。根据这个线索回退代码到2018年11月,发现缺少二进制包,但是这个包的下载链接失效了,百度、必应、谷歌找了一圈也没发现。但是功夫不负有心人,机缘巧合之下我通过edk2-platform的提交记录,突然发现一个人的仓库里有2018年编译uefi固件的全套代码,赶紧下载进行编译验证,烧录到单板,成功启动到uefi shell界面。
在这里插入图片描述
MinnowBoard MAX单板资料:
http://minnowboard.outof.biz/
https://www.intel.com/content/www/us/en/developer/articles/tool/minnowboard-maxturbot-uefi-firmware.html

EDK2 代码工程:https://github.com/Laurie0131/PlatformBuildLab_FW

具体步骤待完成。

相关文章:

  • Spring 学习笔记之 @Transactional详解
  • 4N60-ASEMI开关电源与适配器专用4N60
  • 运筹学之遗传算法
  • Rust网络编程实战:全面掌握reqwest库的高级用法
  • QT+Cmake+mingw32-make编译64位的zlib-1.3.1源码成功过程
  • 深度学习--卷积神经网络CNN原理
  • 功能性高斯泼溅扩散——DiffGS: Functional Gaussian Splatting Diffusion
  • yolov8的数据处理lableimg的安装以及使用
  • 【更新完毕】2025华中杯C题数学建模网络挑战赛思路代码文章教学数学建模思路:就业状态分析与预测
  • Python 赋能区块链教育:打造去中心化学习平台
  • 一些C语言常用函数(后续会继续更新)
  • 力扣刷题Day 21:两数之和(1)
  • day28 学习笔记
  • 面试题之如何设计一个秒杀系统?
  • LRU Java实现
  • 移动自动化测试-appium
  • jQuery — 动画和事件
  • kimi+deepseek制作PPT
  • 【java实现+4种变体完整例子】排序算法中【桶排序】的详细解析,包含基础实现、常见变体的完整代码示例,以及各变体的对比表格
  • spring-batch批处理框架(2)
  • 中小企业收款难何解?快速认定企业身份并理顺付款责任链条
  • 著名世界语教育家、翻译家魏以达逝世
  • “科技+萌点”机器人马拉松刷屏!宇树回应“半马摔倒”
  • 大悦城:去年净亏损29.77亿元,三年累计亏损超70亿元
  • “云南舞蹈大家跳”暨牟定“三月会”下周举行,城际公交免票
  • 刘国梁:奥运会乒乓球项目增至六金,国乒机遇与挑战并存