[发明专利]一种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.vipzhuanli.com/pat/books/201610001573.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:文件系统目录树修复方法和装置
- 下一篇:安全性应用接口要素配置方法