一种解决s3唤醒时pci设备寄存器掉电重置的方法

文档序号:9432328阅读:848来源:国知局
一种解决s3唤醒时pci设备寄存器掉电重置的方法
【技术领域】
[0001]本发明涉及笔记本电脑B1S设计技术领域,特别涉及一种解决S3唤醒时PCI设备寄存器掉电重置的方法。
【背景技术】
[0002]现如今,笔记本已经成为人们生活、工作和学习中不可缺少的工具。为了使人们具有更好的使用感受,笔记本不但在性能上追求更大的提升,在其他方面也有更高的要求,其中笔记本的续航能力就是很重要的一项。由于现在的笔记本具有越来越多的功能要求,因此往往需要从芯片组上扩展出很多功能设备,其中PCI设备就是很重要的一部分。
[0003]有时为了功能需要,会在B1S程序中对PCI设备寄存器进行配置。B1S程序的执行过程主要分为四个阶段:安全检测阶段(SEC)、预初始化阶段(PEI)、驱动可执行环境阶段(DXE)以及启动设备选择阶段(BDS)。其中,在BDS阶段会完成对PCI设备的扫描,因此一般对PCI设备寄存器的配置过程会在BDS阶段完成。
[0004]为了能更好的兼顾笔记本对功能和续航能力的要求,有时笔记本上对PCI设备的供电不是选择常电,而是会随笔记本工作状态而改变。其中笔记本的S3状态非常特殊,因为当笔记本进入到S3状态时,PCI设备会完全掉电,而从S3状态唤醒计算机时,B1S代码又只执行PEI阶段的一部分,而DXE和BDS两个阶段都不会被执行,因此在S3唤醒时扩展设备的寄存器会被完全重置。而在开机和休眠状态启动计算机时,B1S程序会被全部执行,因此不会存在这种问题。
[0005]针对这个问题,一般的解决方法是在BDS阶段对PCI设备进行配置的同时注册一个脚本文件,在该文件中保存PCI设备的寄存器地址(包括PCI设备的总线号,设备号,功能号和寄存器偏移量)和该寄存器的配置信息。当系统从S3唤醒时,B1S程序会在PEI阶段判断当前是否从S3状态唤醒,如果是则会读取保存的脚本信息,根据该信息配置寄存器。
[0006]设计对笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器存在掉电重置的问题,本发明提出了一种解决S3唤醒时PCI设备寄存器掉电重置的方法。

【发明内容】

[0007]本发明为了弥补现有技术的缺陷,提供了一种简单、高效的解决S3唤醒时PCI设备寄存器掉电重置的方法。
[0008]本发明是通过如下技术方案实现的:
一种解决S3唤醒时PCI设备寄存器掉电重置的方法,其特征在于:在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。
[0009]本发明解决S3唤醒时PCI设备寄存器掉电重置的方法,计算机启动过程中,当计算机系统从S3状态唤醒时,会触发注册的SMI中断函数,从而使SMI中断函数在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置,即可进入操作系统;当计算机系统不是从S3状态唤醒时,则完成对PCI设备寄存器的配置后,操作系统对PCI设备进行扫描,即可进入操作系统。
[0010]通过在B1S的ASL代码中添加判断程序,对计算机系统当前的唤醒状态是否为S3唤醒进行判断。
[0011]本发明的有益效果是:该解决S3唤醒时PCI设备寄存器掉电重置的方法,利用SMI中断的方式完成S3唤醒时对PCI设备寄存器配置的过程,与现有技术相比更为简单,只需配置一个产生SMI中断的寄存器即可实现,完美的解决了笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器掉电重置的问题,具有广泛的市场应用价值。
【附图说明】
[0012]附图1为本发明解决S3唤醒时PCI设备寄存器掉电重置的方法示意图。
【具体实施方式】
[0013]附图为本发明的一种具体实施例,下面结合附图对本发明进行详细说明。
[0014]该解决S3唤醒时PCI设备寄存器掉电重置的方法,在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。
[0015]本发明解决S3唤醒时PCI设备寄存器掉电重置的方法,计算机启动过程中,当计算机系统从S3状态唤醒时,会触发注册的SMI中断函数,从而使SMI中断函数在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置,即可进入操作系统;当计算机系统不是从S3状态唤醒时,则完成对PCI设备寄存器的配置后,操作系统对PCI设备进行扫描,即可进入操作系统。
[0016]通过在B1S的ASL代码中添加判断程序,对计算机系统当前的唤醒状态是否为S3唤醒进行判断。
[0017]由于笔记本电脑产品上的PCI设备总线号、设备号与功能号都不会改变,因此可以在S3唤醒时产生一个SMI中断,在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置。
[0018]本发明利用SMI中断的方式完成S3唤醒时对PCI设备寄存器配置的方法,与现有技术相比更为简单,只需在原有的系统中配置一个产生SMI中断的寄存器即可实现,完美的解决了笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器掉电重置的问题,具有广泛的市场应用价值。
【主权项】
1.一种解决S3唤醒时PCI设备寄存器掉电重置的方法,其特征在于:在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。2.根据权利要求1所述的解决S3唤醒时PCI设备寄存器掉电重置的方法,其特征在于:计算机启动过程中,当计算机系统从S3状态唤醒时,会触发注册的SMI中断函数,从而使SMI中断函数在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置,即可进入操作系统;当计算机系统不是从S3状态唤醒时,则完成对PCI设备寄存器的配置后,操作系统对PCI设备进行扫描,即可进入操作系统。3.根据权利要求1所述的解决S3唤醒时PCI设备寄存器掉电重置的方法,其特征在于:通过在B1S的ASL代码中添加判断程序,对计算机系统当前的唤醒状态是否为S3唤醒进行判断。
【专利摘要】本发明特别涉及一种解决S3唤醒时PCI设备寄存器掉电重置的方法。该解决S3唤醒时PCI设备寄存器掉电重置的方法,在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。该解决S3唤醒时PCI设备寄存器掉电重置的方法,利用SMI中断的方式完成S3唤醒时对PCI设备寄存器配置的过程,与现有技术相比更为简单,只需配置一个产生SMI中断的寄存器即可实现,完美的解决了笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器掉电重置的问题,具有广泛的市场应用价值。
【IPC分类】G06F9/445, G06F9/48
【公开号】CN105183506
【申请号】CN201510503253
【发明人】刘君朋, 吴登勇, 秦清松
【申请人】山东超越数控电子有限公司
【公开日】2015年12月23日
【申请日】2015年8月17日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1