ACPI寄存器

PM1 Event Registers


PM1 Control Registers


PM2 Control Register


PM Timer Register


Processor Control Registers


General-Purpose Event Registers


PM1事件寄存器

PM1事件寄存器组包含两个寄存器块

PM1a_EVT_BLK是一个必须的寄存器块

当类特定平台设计指南需要以下ACPI接口类别时

·  电源管理计时器控制/状态

·  处理器功率状态控制/状态

·  全局锁相关的接口

·  电源或睡眠按钮(固定注册接口)

·  系统功率状态控制(睡眠/唤醒控制)

 

PM1b_EVT_BLK是一个可选的寄存器块

每个寄存器块在固定的ACPI(FADT)中有一个唯一的32位指针

以允许在两个芯片之间分割PM1事件位

如果不支持PM1b_EVT_BLK,则它的指针在FADT中包含一个0

 

PM1事件分组中的每个寄存器块都包含两个相同大小的寄存器:

PM1x_STSPM1x_EN(其中x可以是“a”“b”)。

寄存器的长度是可变的并由FADT中的PM1_EVT_LEN字段描述

它表示寄存器块的总长度以字节为单位

因此如果给出“4”的长度则表示每个寄存器包含两个I/O空间的字节

PM1事件寄存器块的最小大小为4字节

 

PM2控制寄存器

PM2控制寄存器包含在PM2_CNT_BLK寄存器块中

FADT包含这个寄存器块(PM2_CNT_LEN)的长度变量

它等于PM2_CNT寄存器的字节大小(在这个寄存器组中唯一的寄存器)。

这个寄存器块是可选的如果不支持它的块指针长度包含0的值

 

PM计时器寄存器

PM计时寄存器包含在PM_TMR_BLK寄存器块中

当电源管理定时器控件/状态ACPI接口类别被一个类特定的平台设计指南要求时

它是一个可选的寄存器块

 

 

 

 

 

 

处理器控制块(P_BLK)

系统中每个处理器都有一个可选的处理器控制寄存器块

由于这是一个同构特性所有处理器必须具有相同级别的支持

ACPI操作系统将恢复到处理器控制块支持的最小公分母

处理器控制块包含处理器控制寄存器(p_cnt -一个32位的性能控制配置寄存器)

以及P_LVL2P_LVL3 CPU休眠状态控制寄存器

32P_CNT寄存器控制处理器时钟逻辑的行为

P_LVL2寄存器用于将CPU放置到C2状态

P_LVL3寄存器用于将处理器放置到C3状态

 

一般目的事件寄存器

通用事件寄存器包含所有通用特性的根级别事件

为了方便地对根事件进行分区

ACPI为两个不同的通用事件块提供了支持

GPE0_BLK GPE1_BLK。

这些是单独的寄存器块并不是一个寄存器组因为没有必要保持一个正交位排列

此外每个寄存器块在FADT中包含它自己的长度变量

其中GPE0_LENGPE1_LEN表示每个寄存器块的字节长度

 

每个寄存器块包含两个相同长度的寄存器:GPEx_STSGPEx_EN(其中x01),GPE0_STSGPE0_EN寄存器的长度等于GPE0_LEN的一半

GPE1_STSGPE1_EN寄存器的长度等于GPE1_LEN的一半

如果不支持通用寄存器块FADT表中的相应块指针和块长度值包含0。

GPE0_LENGPE1_LEN不需要是相同的大小

 

 

 


  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值