[發明專利]一種ARM平臺中BDK向UEFI BIOS傳遞信息的方法在審
| 申請號: | 201610001573.5 | 申請日: | 2016-01-05 |
| 公開(公告)號: | CN105607940A | 公開(公告)日: | 2016-05-25 |
| 發明(設計)人: | 郭章平 | 申請(專利權)人: | 浪潮電子信息產業股份有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F13/38 |
| 代理公司: | 濟南信達專利事務所有限公司 37100 | 代理人: | 張靖 |
| 地址: | 250101 山東*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 arm 平臺 bdk uefi bios 傳遞 信息 方法 | ||
技術領域
本發明涉及ARM平臺服務器,存儲器設計技術領域,具體涉及一種ARM平臺中BDK向UEFIBIOS傳遞信息的方法。
背景技術
BDK是CavuimARM平臺的一套代碼,起主要作用是初始化ARMCPU,初始化內存,配置平臺IO接口,并最終引導UEFIBIOS,由UEFIBIOS接著完整整個平臺的配置,并最終引導可啟動設備進入操作系統。但是這其中有一個問題就是BDK代碼和UEFIBIOS之間沒有交互,BDK代碼不能向UEFIBIOS傳遞有用的信息,對CPU廠商而言,可能他們覺得沒有信息需要傳遞,所以他們沒有設計這種專門傳遞信息的通道,比方說在CPU內部掛在一塊ROM存儲區域,BDK把數據放入,啟動到UEFIBIOS后,由UEFIBIOS參考訪問,對ODMOEM設計來講,需求是千變萬化的,數據傳遞的功能很有必要。由于X86平臺并沒有BDK和UEFIBIOS的區分,整個啟動過程都是UEFIBIOS來完成,CPU,內存初始化的RC代碼也是融合到UEFIBIOS當中,所以不會有這種麻煩。
隨著ARM服務器在市場中的發展,由于其功耗低,性價比高的優勢,其所占的比重市場越來越大,Cavium廠商對于ARMCPU代碼的設計跟X86不同,他是BDK(Bootstub+ATF)代碼和UEFIBIOS兩個基本獨立的組件方案來設計,各司其職,BDK把自己的任務完成后就把控制權轉交給UEFIBIOS,又UEFIBIOS完成大部分的任務,但是根據以往X86的經驗,系統啟動前期的一些信息對于后面的代碼是有很重要的參考意義的,當然有時后面的代碼也可以自己通過相應的協議去獲取所需要的信息,但是有些信息是在很早的階段就被破壞掉了,所以之前的方法就是在前面的代碼把信息破壞之前,我們通過CMOS或者其他存儲空間記錄下來,供后面的代碼來參考,但是BDK和UEFIBIOS設計上是無交互的,這就給信息的傳遞帶來麻煩。
發明內容
本發明要解決的技術問題是:為了解決上述問題,本發明提出了一種ARM平臺中BDK向UEFIBIOS傳遞信息的方法,通過BDK代碼向UEFIBIOS傳遞信息的通道,ARMCPU通過I2C與BMC(服務器基板管理控制器),可以讓BDK代碼把我們需要的數據發送給BMC,BMC獲取后存入其RAM或者臨時的內存buffer中,等到UEFIBIOS啟動后,UEFIBIOS通過IPMI協議把需要的數據從BMC取回,這樣就實現了BDK傳遞數據到UEFIBIOS的目的。
本發明所采用的技術方案為:
一種ARM平臺中BDK向UEFIBIOS傳遞信息的方法,所述方法通過在BDK中添加程序,把需要傳遞的數據通過I2C地址,由BDK發送到BMC,BMC中通過添加程序去記錄這個信息,然后等UEFIBIOS接管后,UEFIBIOS再從BMC中通過IPMI協議,通過添加程序從BMC中讀取并使用這個信息。也就是以BMC為媒介,從BDK傳遞數據到UEFIBIOS。
所述方法具體的實現方式如下:
S10:ARMCPU上面的I2C總線連接到BMC,BDK能夠利用I2C總線和BMC溝通,把需要的數據通過I2C發送到BMC;
S11:BMC接收到數據后,存入其ROM或者內存buffer中;
S12:BDK完成自己的工作,并加載UEFIBIOS;
S13:UEFIBIOS在需要的階段通過IPMI協議,通過和BMC約定的命令,從BMC中獲取所要的數據。
所述方法針對上一次系統關機后有沒有掉電的狀態信息的獲取過程如下:
步驟S10中,把PM寄存器的狀態在被清除之前通過I2C總線發送給BMC;
步驟S11中,PM寄存器的值被存入BMC的ROM或者內存buffer中;
步驟S12中,BDK完成初始化內存,配置IO,加載UEFIimage;
步驟S13中,UEFIBIOS可在DXE階段,通過IPMI協議,以及和BMC約定好的命令,從BMC獲取PM寄存的值,供自己參考使用。
UEFIBIOS要獲取上一次系統關機后有沒有掉電的狀態信息,這個信息是記錄在芯片的PM(powermanagement)寄存器中,而且有RTC供電,但是這個信息一般在開機的很早階段就被清除了,如果后面需要的話就會獲取不到。我們通過本發明的設計就可以獲取這個信息。
本發明的有益效果為:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮電子信息產業股份有限公司,未經浪潮電子信息產業股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201610001573.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:文件系統目錄樹修復方法和裝置
- 下一篇:安全性應用接口要素配置方法





