Cstyle的UEFI導讀之Embedded Controller Share ROM
此處僅以一個具體的例子分析share rom及整個flash的layout,僅BIOS區域(不包括ME)總大小是10MByte。如下圖,FV_RECOVERY0(地址0x00A00000)對映到4G頂端(0xffffffff),使用FIT構建flash image的時候還會重定位最終FV_RECOVERY0的地址(用edit直接開啟二進位制檔案的話,會在檔案的末端,如圖二所示),加入SPI flash descriptor,一般是在fffffff0h處放一條跳轉指令,跳轉到FV_RECOVERY0處。FVMAIN(地址0)對映到4G-0x00A00000(10M)地址,OEM還可以把EC ROM放在FVMAIN後面。此處FVMAIN的起始地是0會被對映到4G-10M(BIOS ROM大小),如果加入OEM EC之後,起始地0處會是EC,FVMAIN的地址=0+ EC size。
用edit開啟最終的bin檔案之後,可以看到address =00000000h處對應著上圖的FVMAIN,address=9ffffff0對應這上圖的FV_RECOVERY0,boot vector在檔案最底部也就是0x009ffff0的位置,作為開機跳轉指令。
下圖是整個Flash device儲存空間的layout,其中BIOS區域大小為10M,其4G處對映到resetvector,其0G處對映到SPI flash descriptor。SPI flash descriptor的最開始的16Byte一般用來作為EC的跳轉
指標(EC firmware pointer),當我們把BIOS和EC放在一顆SPI flash rom的時候可以使用FIT把ME,BIOS,EC包在一起。
講完了整個flash rom的layout現在來看看EC是如何和BIOS share和工作的時候互不干擾的。
轉載請註明出處,或可關注微信公眾號:韌體C字營
Cstyle.z.zhou@outlook.com // http://blog.csdn.net/CStyle_0x007
相關文章
- IP核之ROM
- 只讀儲存器ROM
- win10怎麼修復uefi引導_win10如何重建uefi引導Win10
- 宏旺半導體分析RAM、ROM、SDRAM、DRAM、DDR、flash之間的區別
- 【讀】JavaScript之物件導向JavaScript物件
- 論文解讀(DAEGC)《Improved Deep Embedded Clustering with Local Structure Preservation》GCStruct
- 論文解讀(IDEC)《Improved Deep Embedded Clustering with Local Structure Preservation》IDEStruct
- AngularJS之Scope及ControllerAngularJSController
- Embedded devices hackingdev
- uefi模式如何升級win10系統_uefi引導安裝win10教程模式Win10
- kubernetes實踐之四十八:Service Controller與Endpoint ControllerController
- share undefinedUndefined
- uefi引導gpt安裝win10新電腦_uefi加gpt安裝win10教程GPTWin10
- Linux晶片驅動之SPI ControllerLinux晶片Controller
- navigator.share
- Jmeter邏輯控制器之If Controller的使用解析JMeterController
- Kubernetes安裝之七:配置master之controller-managerASTController
- 流利閱讀 2019.4.17 The Guardian view on the Notre Dame fire: we share France’s terrible lossView
- uefi引導gpt分割槽安裝win10系統的方法【圖文教程】GPTWin10
- windows10系統下怎麼進行uefi引導修復Windows
- kubernetes實踐之四十七:ResourceQuota ControllerController
- 【導航】讀書導航
- Jmeter——ForEach Controller&Loop ControllerJMeterControllerOOP
- Netpoll導讀
- Failed to configure a DataSource: ‘url‘ attribute is not specified and no embeddedAI
- RAM、ROM、FLASH、EMMC的簡單區分
- UEFI載入程式
- windows 之醬紫判斷是UEFI還是legacy啟動Windows
- VSCode 的 Live Share 功能終於來了VSCode
- SpringMvc的Controller singleton synchronizedSpringMVCControllersynchronized
- SpringBoot(三)_controller的使用Spring BootController
- 前端技術之:通過plop生成Controller的方法與步驟前端Controller
- 1.4 - Laravel 5.6 - Share 機制Laravel
- Controller層Controller
- java物件關係對映ROMJava物件
- 折騰PXE網路啟動 pxe 引導uefi模式 GRUB Shell (TFTPD64 OPENWRT)模式FTP
- 大話設計模式之愛你一萬年:系列文章 - 導讀設計模式
- Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded datasource couldAI