ASL Code中的_DSM方法

一、HID I2C设备的”_DSM”方法

_DSM方法一共有4个参数,分别为Arg0Arg1Arg2Arg3。该方法的具体定义以及每个参数的含义请参看ACPI 5.0规范的9.14.1小节(可直接参看本文最后附录)。

该方法主要是提供了一些与设备相关的数据和操作方法,以供驱动去调用。根据微软给出的"WindowsACPI Design Guide for SOC Platforms中的定义,对于HIDI2C设备,驱动在调用_DSM方法时传递的参数为:

·        Arg0: UUID = 3cdff6f7-4267-4555-ad05-b30a3d8938de

·        Arg1: Revision ID = 1

·        Arg2: Function index = 1

·        Arg3: None

对于HIDI2C设置该方法的返回值是一个包含HID描述符地址的整数。这个地址也即HID I2C Driver向固件读取HID描述符的I2C寄存器地址,目前的Nanjing固件支持的HID描述符地址为:0x0000。

二、_DSM方法中各参数的意义

_DSM方法提供的都是与具体设备相关的操作及数据,该方法一共具备4个参数,我们对其中用到较多的前三个参数做一下详细的解释。

Arg0 – A Buffercontaining a UUID

Arg0是一个UUID,用于标识不同的设备,在Windows上对于不同的设备该UUID是有固定值的,具体可参看“WindowsACPI Design Guide for SOC Platforms


Arg1 – An Integercontaining the Revision ID

Arg1Function的版本ID,它是于UUID相关联的。


Arg2 – An Integercontaining the Function Index

Arg2

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值