我是靠谱客的博主 安静板栗,最近开发中收集的这篇文章主要介绍BIOS 初始化零星记录,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

内存初始化
Intel 平台的内存初始化主要是对内存控制器的初始化,主要是由MRC CODE 完成,MRC CODE 首先detect 插在内存插槽上的内存的各种参数,这个动作时通过读取内存SPD来完成的,内存SPD参数包含了内存的各种参数值包括大小型号,类型,还有timing值等等,MRC code 读出这些之后填入内存控制器,从而实现内存控制器和内存之间的最佳timing值。
   内存的初始化分3种情况
   1 cold boot, warm boot, and S3 resume
   未完........... 

SB PEI 的初始化

IchBaseConfig
    IchHpet.Base    = ICH_HPET_BASE_ADDRESS;
    IchHpet.Enable  = 1;
    LpcIfEnable
    南桥的初始化中一下几个地址是需要填的
   RcbaBaseAddr;
   GpioBaseAddr;
   PmBaseAddr;
   Port80Route
   Clear all GPIO Status
    Enable the upper 128-byte bank of RTC RAM
    Set Coprocessor Error Enable(CEN)
    Disable the Watchdog timer expiration from causing a system reset
    Halt the TCO timer
    Force to set the boot dest from SPI BIOS
    Set ICH Interrupt Routing 
    Program the GPIO routing
    Disable all Pm Function
    PeiConfigureAzalia
AtaInit
    Check SATA Class code
     Enable SIDE Controller
IchMemoryCallbakInit
     Build Memory Mapped IO Resource which is used to build E820 Table in LegacyBios
     AhciInit
     BuildResourceDescriptorHob
         0. Switch Sata controller to AHCI mode
          1. Disable PCI Command access
          3. Enable PCS
          4. Enable PCI Command memory access
          5 Port x Hot Plug
          6 AHCI_BAR Set 0

Below is DXE SB Init~~~~~~~~~~~~~
.....................

最后

以上就是安静板栗为你收集整理的BIOS 初始化零星记录的全部内容,希望文章能够帮你解决BIOS 初始化零星记录所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部