coreboot学习10:coreboot第一阶段学习小结 时间过得真快,从今年2月份开始到4月份,断断续续摸索coreboot的源码。限于精力但又不想让人误以为笔者是个容易放弃的人,只好匆匆将前面所做的工作称为第一阶段,用时髦的话,也叫一期工程。此文做些阶段性的小结,以表示阶段性的结束。 2016-04-04 21:53 嵌入式底层BIOS 暂无评论 喜欢 1 阅读 1,042 次 阅读全文
coreboot学习9:ramstage阶段之设备初始化流程 本文对ramstage阶段的设备初始化过程进行跟踪。设备初始化是在dev_initialize函数中完成的,代码如下: 2016-04-04 15:29 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 787 次 阅读全文
coreboot学习8:ramstage阶段之资源分配流程 设备枚举后就是资源分配了,在dev_configure函数中完成,代码如下: 2016-04-04 12:54 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 704 次 阅读全文
coreboot学习7:ramstage阶段之设备枚举流程 本文主要针对ramstage阶段的设备枚举的过程进行分析。限于精力,就直接使用qemu-i440fx作为分析,baytrail就免了吧。在分析时,不一定会根据顺序,也不一定会详细到每个函数。如果要详细的信息,请查阅代码。也建议根据前文给出的主干流程图进行参照分析。 2016-04-03 09:45 嵌入式底层BIOS 暂无评论 喜欢 1 阅读 706 次 阅读全文
coreboot学习6:ramstage阶段之芯片初始化流程 从本文开始,就根据前文给出的ramstage的主干线索分析每个小阶段执行的过程。依然以qemu-i440fx为主做分析——因为当前条件只有这个“主板”才能在通过打印跟踪其过程。另外,也会列出baytrail的相关函数,但可能会存在部分瑕疵。 2016-03-19 23:11 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 824 次 阅读全文
coreboot学习5:启动流程跟踪之ramstage阶段主干分析 ramstage阶段涉及比较多的操作,比如枚举板子上的外围设备,分配资源(PCI),使能设备。本文根据该阶段的主干函数流程做分析,细节方面不涉及。理顺这个主干,从全局上把控大致流程。 2016-03-16 22:20 嵌入式底层BIOS 暂无评论 喜欢 1 阅读 817 次 阅读全文
coreboot学习4:启动流程跟踪之romstage阶段 romstage是coreboot的第二个执行阶段。本文分别介绍基于qemu模拟环境的x86的跟踪,以及基于Intel baytrail平台的跟踪。 在romstage阶段,由于内存还未初始化好,所以使用cache作为内存,此项技术称为“cache as ram”,简称为“CAR”。网络上有较多文章涉及此方面,可以查阅以了解更多。 2016-03-15 22:20 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 934 次 阅读全文
coreboot学习3:启动流程跟踪之bootblock阶段 coreboot的第一个启动阶段为bootblock。该阶段均使用汇编语言编写。下面根据执行文件顺序介绍。 2016-03-14 21:50 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 1,406 次 阅读全文
coreboot学习2:项目源码的初步了解 本文主要介绍coreboot源码的目录结构和其它一些东西。 2016-03-13 20:55 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 1,103 次 阅读全文
coreboot学习1:编译并使用qemu模拟 对于一种新东西的学习,如果有看得到、摸得着的演示,比单纯看理论知道更容易理解。在未对coreboot进行代码级别分析之前,用一个实例来看看coreboot到底长什么样子。 本文讲述如何在linux环境中编译coreboot,并使用qemu模拟器来启动。 2016-03-11 23:25 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 1,955 次 阅读全文
coreboot学习0:二度相逢是初识 第一次听到coreboot是在大约一年半多以前,当时因为工作需要进行x86的底层开发,无意中接触到coreboot项目。现在再次对其进行学习。一来让自己也学习一下x86的BIOS开发,二来算对微机原理的一个重新认识吧。 2016-03-10 21:51 嵌入式底层BIOS 暂无评论 喜欢 0 阅读 1,866 次 阅读全文