能力值:
( LV12,RANK:290 )
|
-
-
2 楼
感谢分享
|
能力值:
( LV4,RANK:50 )
|
-
-
3 楼
666,感谢分享!
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这么底层全面的文章,少见
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
感谢分享
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
说到关键处 最精彩的部分一笔带过了? register operation region?
|
能力值:
( LV12,RANK:260 )
|
-
-
7 楼
水上心
说到关键处 最精彩的部分一笔带过了?
register operation region?
Register operation region指哪块?我看看能不能补上
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
好的,多谢,
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
https://docs.microsoft.com/en-us/windows-hardware/drivers/acpi/operation-of-an-acpi-device-function-driver
|
能力值:
( LV12,RANK:260 )
|
-
-
10 楼
水上心
https://docs.microsoft.com/en-us/windows-hardware/drivers/acpi/operation-of-an-acpi-device-function- ...
确认一下,你是想在驱动中主动调用acpi命名空间中的某个方法,对吧?
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
我是想知道operation region(OpRegisterRegionHandler)的用途和应用场景是啥 调用acpi中的method我这里有方法的,可以在r3任意调用acpi namespace中的任意一个method 很感谢你帮我扫盲了sci interrupt、gpe,和devienotification
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
acpi.sys deviceiocontrol有好几个方法,除了evalacpimethod之外,还有OpXXXX,会在namespace node device下生成一个operationRegion,是fdo驱动提供的一块内存空间,同时还会注册一个callback,也是fdo驱动提供,在acpi node 设备调用方法时会异步调用fdo的callback 操作这块region,像是fdo在acpi node device下注册了一个小端口,所以也有异步通知的功能,不知道和acpi node device下的deviceNotification callback(RegisterForDeiveNotication向下级pdo挂的acpi 分device object结构中注册的)有啥区别,应用场景上有啥不同
|
能力值:
( LV12,RANK:260 )
|
-
-
13 楼
水上心
acpi.sys deviceiocontrol有好几个方法,除了evalacpimethod之外,还有OpXXXX,会在namespace node device下生成一个operationRegi ...
我靠,你研究的这么深,我看下
|
能力值:
( LV12,RANK:260 )
|
-
-
14 楼
我仔细看了一下,你说的operationregion,我们是直接在bios里做好了,所以没我没接触过。我找找显卡相关的,不知道有没有
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
多谢了啊,老哥,这行研究这块的真的凤毛麟角,少之又少,懂得人也很少 你这种文章完全属于精品,收藏和点赞数不相符,帮你加把油了
|
能力值:
( LV12,RANK:260 )
|
-
-
16 楼
水上心
[em_27] 多谢了啊,老哥,这行研究这块的真的凤毛麟角,少之又少,懂得人也很少
你这种文章完全属于精品,收藏和点赞数不相符,帮你加把油了
那就谢谢了
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
感觉opregion是另一种异步数据交互形式,有点像r3层的内存映射,在bios和driver之间共享一段内存,大家都可以访问它,但driver不能主动去修改和写它,必须等着bios有需要的时候,利用drv注册的ophandler去修改它,好想是这个意思
兄弟有空的话,可以翻翻你那边的显卡驱动代码,是不是这么回事,如果我理解的不对,请尽管指正我
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
Opregion的handler一般是ACPI.sys 注册的,也就是由ACPI.SYS去访问。 ASL code去访问某个Opregion会触发ACPI的里面的Opregion handler. 当然driver也可以自己定义一块私有的区域,然后注册OpregionHandler去处理,但是一般没有必要,直接写ASL code访问就行了,driver里面直接call ALS code method。这样实现起来更简单,所有的同步机制交给ACPI driver去做。
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
好的,非常感谢指点
最后于 2021-4-23 09:11
被水上心编辑
,原因:
|
能力值:
( LV1,RANK:0 )
|
-
-
20 楼
所以Driver主动调用 acpi asl code method应该怎样实现,按照ms的acpi method 调用提示,也不蓝屏也看不到执行效果
|
能力值:
( LV1,RANK:0 )
|
-
-
21 楼
谁有完整的demo code和示例讲解吗
|
能力值:
( LV12,RANK:260 )
|
-
-
22 楼
mb_eeoynudy
谁有完整的demo code和示例讲解吗
微软泄露的xp代码里,有电池 ec驱动,这些驱动带有你要的driver调用asl的例子
|
|
|