CN105183506A - 一种解决s3唤醒时pci设备寄存器掉电重置的方法 - Google Patents
一种解决s3唤醒时pci设备寄存器掉电重置的方法 Download PDFInfo
- Publication number
- CN105183506A CN105183506A CN201510503253.5A CN201510503253A CN105183506A CN 105183506 A CN105183506 A CN 105183506A CN 201510503253 A CN201510503253 A CN 201510503253A CN 105183506 A CN105183506 A CN 105183506A
- Authority
- CN
- China
- Prior art keywords
- pci device
- device register
- pci
- smi
- operating system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
本发明特别涉及一种解决S3唤醒时PCI设备寄存器掉电重置的方法。该解决S3唤醒时PCI设备寄存器掉电重置的方法,在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。该解决S3唤醒时PCI设备寄存器掉电重置的方法,利用SMI中断的方式完成S3唤醒时对PCI设备寄存器配置的过程,与现有技术相比更为简单,只需配置一个产生SMI中断的寄存器即可实现,完美的解决了笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器掉电重置的问题,具有广泛的市场应用价值。
Description
技术领域
本发明涉及笔记本电脑BIOS设计技术领域,特别涉及一种解决S3唤醒时PCI设备寄存器掉电重置的方法。
背景技术
现如今,笔记本已经成为人们生活、工作和学习中不可缺少的工具。为了使人们具有更好的使用感受,笔记本不但在性能上追求更大的提升,在其他方面也有更高的要求,其中笔记本的续航能力就是很重要的一项。由于现在的笔记本具有越来越多的功能要求,因此往往需要从芯片组上扩展出很多功能设备,其中PCI设备就是很重要的一部分。
有时为了功能需要,会在BIOS程序中对PCI设备寄存器进行配置。BIOS程序的执行过程主要分为四个阶段:安全检测阶段(SEC)、预初始化阶段(PEI)、驱动可执行环境阶段(DXE)以及启动设备选择阶段(BDS)。其中,在BDS阶段会完成对PCI设备的扫描,因此一般对PCI设备寄存器的配置过程会在BDS阶段完成。
为了能更好的兼顾笔记本对功能和续航能力的要求,有时笔记本上对PCI设备的供电不是选择常电,而是会随笔记本工作状态而改变。其中笔记本的S3状态非常特殊,因为当笔记本进入到S3状态时,PCI设备会完全掉电,而从S3状态唤醒计算机时,BIOS代码又只执行PEI阶段的一部分,而DXE和BDS两个阶段都不会被执行,因此在S3唤醒时扩展设备的寄存器会被完全重置。而在开机和休眠状态启动计算机时,BIOS程序会被全部执行,因此不会存在这种问题。
针对这个问题,一般的解决方法是在BDS阶段对PCI设备进行配置的同时注册一个脚本文件,在该文件中保存PCI设备的寄存器地址(包括PCI设备的总线号,设备号,功能号和寄存器偏移量)和该寄存器的配置信息。当系统从S3唤醒时,BIOS程序会在PEI阶段判断当前是否从S3状态唤醒,如果是则会读取保存的脚本信息,根据该信息配置寄存器。
设计对笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器存在掉电重置的问题,本发明提出了一种解决S3唤醒时PCI设备寄存器掉电重置的方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单、高效的解决S3唤醒时PCI设备寄存器掉电重置的方法。
本发明是通过如下技术方案实现的:
一种解决S3唤醒时PCI设备寄存器掉电重置的方法,其特征在于:在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。
本发明解决S3唤醒时PCI设备寄存器掉电重置的方法,计算机启动过程中,当计算机系统从S3状态唤醒时,会触发注册的SMI中断函数,从而使SMI中断函数在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置,即可进入操作系统;当计算机系统不是从S3状态唤醒时,则完成对PCI设备寄存器的配置后,操作系统对PCI设备进行扫描,即可进入操作系统。
通过在BIOS的ASL代码中添加判断程序,对计算机系统当前的唤醒状态是否为S3唤醒进行判断。
本发明的有益效果是:该解决S3唤醒时PCI设备寄存器掉电重置的方法,利用SMI中断的方式完成S3唤醒时对PCI设备寄存器配置的过程,与现有技术相比更为简单,只需配置一个产生SMI中断的寄存器即可实现,完美的解决了笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器掉电重置的问题,具有广泛的市场应用价值。
附图说明
附图1为本发明解决S3唤醒时PCI设备寄存器掉电重置的方法示意图。
具体实施方式
附图为本发明的一种具体实施例,下面结合附图对本发明进行详细说明。
该解决S3唤醒时PCI设备寄存器掉电重置的方法,在计算机系统从S3唤醒时,产生一个SMI中断,利用所述SMI中断号注册一个SMI中断函数,在所述SMI中断函数中根据需求对PCI设备寄存器进行配置,对所述PCI设备寄存器的配置在操作系统扫描PCI设备之前完成,计算机即可顺利进入操作系统。
本发明解决S3唤醒时PCI设备寄存器掉电重置的方法,计算机启动过程中,当计算机系统从S3状态唤醒时,会触发注册的SMI中断函数,从而使SMI中断函数在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置,即可进入操作系统;当计算机系统不是从S3状态唤醒时,则完成对PCI设备寄存器的配置后,操作系统对PCI设备进行扫描,即可进入操作系统。
通过在BIOS的ASL代码中添加判断程序,对计算机系统当前的唤醒状态是否为S3唤醒进行判断。
由于笔记本电脑产品上的PCI设备总线号、设备号与功能号都不会改变,因此可以在S3唤醒时产生一个SMI中断,在操作系统扫描PCI设备之前完成对PCI设备寄存器的配置。
本发明利用SMI中断的方式完成S3唤醒时对PCI设备寄存器配置的方法,与现有技术相比更为简单,只需在原有的系统中配置一个产生SMI中断的寄存器即可实现,完美的解决了笔记本电脑从S3唤醒时,扩展的PCI设备上的寄存器掉电重置的问题,具有广泛的市场应用价值。
Claims (3)
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设备寄存器掉电重置的方法,其特征在于:通过在BIOS的ASL代码中添加判断程序,对计算机系统当前的唤醒状态是否为S3唤醒进行判断。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510503253.5A CN105183506A (zh) | 2015-08-17 | 2015-08-17 | 一种解决s3唤醒时pci设备寄存器掉电重置的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510503253.5A CN105183506A (zh) | 2015-08-17 | 2015-08-17 | 一种解决s3唤醒时pci设备寄存器掉电重置的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105183506A true CN105183506A (zh) | 2015-12-23 |
Family
ID=54905604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510503253.5A Pending CN105183506A (zh) | 2015-08-17 | 2015-08-17 | 一种解决s3唤醒时pci设备寄存器掉电重置的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105183506A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111338700A (zh) * | 2020-02-24 | 2020-06-26 | 杭州迪普科技股份有限公司 | 加载fpga版本的方法及装置、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1255211A (zh) * | 1997-05-07 | 2000-05-31 | 通用动力信息系统公司 | 用于计算机系统的非侵入性电源控制 |
US20090100280A1 (en) * | 2007-10-11 | 2009-04-16 | Lindsay Steven B | Method and system for improving pci-e l1 aspm exit latency |
CN101944035A (zh) * | 2009-07-03 | 2011-01-12 | 深圳市神舟电脑股份有限公司 | 一种计算机系统一键恢复的方法 |
CN103345425A (zh) * | 2013-05-28 | 2013-10-09 | 山东超越数控电子有限公司 | 一种通过smi中断实现系统风扇转速控制的方法 |
CN104011624A (zh) * | 2011-12-22 | 2014-08-27 | 英特尔公司 | 包括设备中自主的基于硬件的深度掉电的用于能效和节能的方法、装置和系统 |
-
2015
- 2015-08-17 CN CN201510503253.5A patent/CN105183506A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1255211A (zh) * | 1997-05-07 | 2000-05-31 | 通用动力信息系统公司 | 用于计算机系统的非侵入性电源控制 |
US20090100280A1 (en) * | 2007-10-11 | 2009-04-16 | Lindsay Steven B | Method and system for improving pci-e l1 aspm exit latency |
CN101944035A (zh) * | 2009-07-03 | 2011-01-12 | 深圳市神舟电脑股份有限公司 | 一种计算机系统一键恢复的方法 |
CN104011624A (zh) * | 2011-12-22 | 2014-08-27 | 英特尔公司 | 包括设备中自主的基于硬件的深度掉电的用于能效和节能的方法、装置和系统 |
CN103345425A (zh) * | 2013-05-28 | 2013-10-09 | 山东超越数控电子有限公司 | 一种通过smi中断实现系统风扇转速控制的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111338700A (zh) * | 2020-02-24 | 2020-06-26 | 杭州迪普科技股份有限公司 | 加载fpga版本的方法及装置、存储介质 |
CN111338700B (zh) * | 2020-02-24 | 2022-11-25 | 杭州迪普科技股份有限公司 | 加载fpga版本的方法及装置、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7529956B2 (en) | Granular reduction in power consumption | |
US9678560B2 (en) | Methods and apparatuses to wake computer systems from sleep states | |
CN110069280B (zh) | 电子装置与其固件更新方法 | |
CN104024980A (zh) | 连接的待机睡眠状态 | |
CN105446916B (zh) | Usb总线状态切换方法及装置 | |
TWI578152B (zh) | 用於進入低功率狀態之設備、物品及控制器 | |
US20190272014A1 (en) | Wake-up control method and device for body control module | |
CN104460925A (zh) | 一种基于申威平台的电源管理实现方法 | |
CN105159722B (zh) | Rtc唤醒系统的方法及计算机 | |
CN102437917B (zh) | 一种网络唤醒方法、网络唤醒装置及计算机 | |
CN103105920A (zh) | 节能系统以及节能方法 | |
US20080178026A1 (en) | Computer system and power saving method thereof | |
CN105183506A (zh) | 一种解决s3唤醒时pci设备寄存器掉电重置的方法 | |
CN111142653B (zh) | 一种PCIe设备低功耗控制方法、装置及电子设备 | |
US8825917B2 (en) | Method, system and device for enabling USB data card with USB flash drive function to hibernate | |
WO2014127690A1 (zh) | 一种蓝牙唤醒pos机的方法 | |
CN110865959B (zh) | 一种用于唤醒i2c设备的方法及电路 | |
CN103986588A (zh) | 电脑系统及电脑装置的远端遥控方法 | |
CN114137881B (zh) | 一种芯片唤醒装置、方法及其介质 | |
CN102830985A (zh) | 开机方法 | |
CN116010143A (zh) | 一种休眠下自动喂狗的方法和储能系统 | |
TWI482090B (zh) | 可經由通用序列匯流排裝置開機的系統及其方法 | |
CN106774788B (zh) | 一种基于mcu的soc及其内核协作控制单元 | |
CN105487865A (zh) | 一种解决usb设备异常唤醒系统的方法 | |
CN106569879B (zh) | 唤醒外设的方法及移动终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151223 |
|
RJ01 | Rejection of invention patent application after publication |