news 2026/2/7 2:24:44

ACPIBuildProcessRunMethodPhaseCheckSta和ACPIBuildProcessDevicePhaseAdr都调用了ACPIGetDevicePresenceAsync

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ACPIBuildProcessRunMethodPhaseCheckSta和ACPIBuildProcessDevicePhaseAdr都调用了ACPIGetDevicePresenceAsync


ACPIBuildProcessRunMethodPhaseCheckSta函数和ACPIBuildProcessDevicePhaseAdr函数都调用了ACPIGetDevicePresenceAsync

ACPIDetectPdoDevices函数调用了ACPIGetDevicePresenceSync只不过是同步的

NTSTATUS
ACPIBuildProcessDevicePhaseAdr(
IN PACPI_BUILD_REQUEST BuildRequest
)
{
//
// Get the device status
//
status = ACPIGetDevicePresenceAsync(

deviceExtension,
ACPIBuildCompleteMustSucceed,
BuildRequest,
(PVOID *) &(BuildRequest->Integer),
NULL
);

//
// What happened?
//
ACPIDevPrint( (
ACPI_PRINT_LOADING,
deviceExtension,
"ACPIBuildProcessDevicePhaseAdr: Status = %08lx\n",
status
) );


NTSTATUS
ACPIBuildProcessRunMethodPhaseCheckSta(
IN PACPI_BUILD_REQUEST BuildRequest
)
{
//
// Do we have to check the device status?
//
if (BuildRequest->RunRequest.Flags & RUN_REQUEST_CHECK_STATUS) {

//
// Get the device status
//
status = ACPIGetDevicePresenceAsync(

deviceExtension,
ACPIBuildCompleteMustSucceed,
BuildRequest,
(PVOID *) &(BuildRequest->Integer),
NULL
);

//
// What happened?
//
ACPIDevPrint( (
ACPI_PRINT_LOADING,
deviceExtension,
"ACPIBuildProcessRunMethodPhaseCheckSta: Status = %08lx\n",
status
) );
if (status == STATUS_PENDING) {

return status;

}

}


ACPI!ACPIDetectPdoDevices
NTSTATUS
ACPIDetectPdoDevices(
IN PDEVICE_OBJECT DeviceObject,
IN PDEVICE_RELATIONS *DeviceRelations
)
{


//
// Update the current device status
//
status =ACPIGetDevicePresenceSync(
deviceExtension,
(PVOID *) &deviceStatus,
NULL
);

//
// If the device exists
//
if ( NT_SUCCESS(status) &&
!(deviceExtension->Flags & DEV_MASK_NOT_PRESENT) ) {

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/6 4:59:31

导师推荐9个AI论文网站,专科生轻松搞定毕业论文!

导师推荐9个AI论文网站,专科生轻松搞定毕业论文! AI 工具如何帮你轻松搞定毕业论文 对于专科生来说,撰写一篇完整的毕业论文往往是一项既复杂又耗时的任务。尤其是在时间紧张、资料匮乏的情况下,很多同学都会感到无从下手。而随着…

作者头像 李华
网站建设 2026/2/6 4:20:48

Linux驱动核心API调用链路清单

Linux驱动核心API调用链路清单 说明 本清单聚焦嵌入式Linux驱动开发高频子系统(GPIO/中断/Input/Framebuffer/PWM),涵盖核心API、从驱动到硬件的完整调用链路、底层硬件操作,适配ARM SOC(全志/瑞芯微等)&…

作者头像 李华
网站建设 2026/2/6 14:11:09

Linux 命令:csplit

概述 这个命令的核心作用是按指定规则将一个文件分割成多个小文件(split by context),区别于 split 按大小/行数拆分的简单逻辑,csplit 支持按行号、正则表达式等“上下文”拆分,是处理日志、配置文件、文本数据的高效…

作者头像 李华
网站建设 2026/2/4 13:27:28

基于Java的无人图书借阅系统源码解析

以下是一个基于Java的无人图书借阅系统源码解析,涵盖系统架构、核心功能模块、关键代码示例及技术实现要点: 一、系统架构 技术选型: 后端框架:Spring Boot 2.x,利用其自动配置和起步依赖特性快速搭建项目&#xff0c…

作者头像 李华
网站建设 2026/2/6 8:15:12

一站式酒店管理解决方案,多用户在线订房小程序系统全新发布

温馨提示:文末有资源获取方式 在数字化浪潮中,酒店与宾馆行业正积极寻求线上转型,以提升客户体验与管理效率。一款集在线预订、餐饮服务、积分商城与营销分销于一体的多用户SAAS系统应运而生,为行业注入创新动力。该系统基于稳定的…

作者头像 李华
网站建设 2026/2/7 1:36:14

Spring Boot + MybatisX = 王炸!!

1.什么是MybatisX? MybatisX 是一款基于 IDEA 的快速开发插件,方便在使用mybatis以及mybatis-plus开始时简化繁琐的重复操作,提高开发速率。 2.使用MybatisX的好处 节省大量持久层代码开发时间 强大的功能为业务编写提供各类支持 配置简单…

作者头像 李华