亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? ac.c

?? Linux內(nèi)核源碼
?? C
字號(hào):
/***************************************************************************** * * Module Name: ac.c *   $Revision: 23 $ * *****************************************************************************//* *  Copyright (C) 2000, 2001 Andrew Grover * *  This program is free software; you can redistribute it and/or modify *  it under the terms of the GNU General Public License as published by *  the Free Software Foundation; either version 2 of the License, or *  (at your option) any later version. * *  This program is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *  GNU General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program; if not, write to the Free Software *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */#include <acpi.h>#include "ac.h"#define _COMPONENT		ACPI_AC_ADAPTER	MODULE_NAME 		("ac")/**************************************************************************** *                            Internal Functions ****************************************************************************//**************************************************************************** * * FUNCTION:	ac_print * * PARAMETERS:	 * * RETURN:	 * * DESCRIPTION: Prints out information on a specific ac_adapter. * ****************************************************************************/voidac_print (	AC_CONTEXT		*ac_adapter){#ifdef ACPI_DEBUG	acpi_buffer		buffer;	PROC_NAME("ac_print");	if (!ac_adapter) {		return;	}	buffer.length = 256;	buffer.pointer = acpi_os_callocate(buffer.length);	if (!buffer.pointer) {		return;	}	/*	 * Get the full pathname for this ACPI object.	 */	acpi_get_name(ac_adapter->acpi_handle, ACPI_FULL_PATHNAME, &buffer);	/*	 * Print out basic adapter information.	 */	ACPI_DEBUG_PRINT_RAW ((ACPI_DB_INFO, "+------------------------------------------------------------\n"));	ACPI_DEBUG_PRINT_RAW ((ACPI_DB_INFO, "| AC Adapter[%02x]:[%p] %s\n", ac_adapter->device_handle, ac_adapter->acpi_handle, (char*)buffer.pointer));	ACPI_DEBUG_PRINT_RAW ((ACPI_DB_INFO, "+------------------------------------------------------------\n"));	acpi_os_free(buffer.pointer);#endif /*ACPI_DEBUG*/	return;}/**************************************************************************** * * FUNCTION:	ac_add_device * * PARAMETERS:	 * * RETURN:	 * * DESCRIPTION: * ****************************************************************************/acpi_statusac_add_device(	BM_HANDLE		device_handle,	void			**context){	acpi_status 		status = AE_OK;	BM_DEVICE		*device = NULL;	AC_CONTEXT		*ac_adapter = NULL;	acpi_device_info	info;	FUNCTION_TRACE("ac_add_device");	ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Adding ac_adapter device [%02x].\n", device_handle));	if (!context || *context) {		ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Invalid (NULL) context."));		return_ACPI_STATUS(AE_BAD_PARAMETER);	}	/*	 * Get information on this device.	 */	status = bm_get_device_info(device_handle, &device);	if (ACPI_FAILURE(status)) {		return_ACPI_STATUS(status);	}	/*	 * Allocate a new AC_CONTEXT structure.	 */	ac_adapter = acpi_os_callocate(sizeof(AC_CONTEXT));	if (!ac_adapter) {		return_ACPI_STATUS(AE_NO_MEMORY);	}	ac_adapter->device_handle = device->handle;	ac_adapter->acpi_handle = device->acpi_handle;	/*	 * Get information on this object.	 */	status = acpi_get_object_info(ac_adapter->acpi_handle, &info);	if (ACPI_FAILURE(status)) {		ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Unable to get object info for ac_adapter device."));		goto end;	}	/*	 * _UID?	 * -----	 */	if (info.valid & ACPI_VALID_UID) {		strncpy(ac_adapter->uid, info.unique_id, sizeof(info.unique_id));	}	else {		strncpy(ac_adapter->uid, "0", sizeof("0"));	}	/*	 * _STA?	 * -----	 */	if (!(info.valid & ACPI_VALID_STA)) {		ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Must have valid _STA.\n"));		status = AE_ERROR;		goto end;	}	status = ac_osl_add_device(ac_adapter);	if (ACPI_FAILURE(status)) {		goto end;	}	*context = ac_adapter;	ac_print(ac_adapter);end:	if (ACPI_FAILURE(status)) {		acpi_os_free(ac_adapter);	}	return_ACPI_STATUS(status);}/**************************************************************************** * * FUNCTION:	ac_remove_device * * PARAMETERS:	 * * RETURN:	 * * DESCRIPTION: * ****************************************************************************/acpi_statusac_remove_device (	void			**context){	acpi_status 		status = AE_OK;	AC_CONTEXT		*ac_adapter = NULL;	FUNCTION_TRACE("ac_remove_device");	if (!context || !*context) {		return_ACPI_STATUS(AE_BAD_PARAMETER);	}	ac_adapter = (AC_CONTEXT*)*context;	ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Removing ac_adapter device [%02x].\n", ac_adapter->device_handle));	ac_osl_remove_device(ac_adapter);	acpi_os_free(ac_adapter);	*context = NULL;	return_ACPI_STATUS(status);}/**************************************************************************** *                             External Functions ****************************************************************************//**************************************************************************** * * FUNCTION:	ac_initialize * * PARAMETERS:	<none> * * RETURN:	 * * DESCRIPTION: * ****************************************************************************/acpi_statusac_initialize (void){	acpi_status		status = AE_OK;	BM_DEVICE_ID		criteria;	BM_DRIVER		driver;	FUNCTION_TRACE("ac_initialize");	MEMSET(&criteria, 0, sizeof(BM_DEVICE_ID));	MEMSET(&driver, 0, sizeof(BM_DRIVER));	driver.notify = &ac_notify;	driver.request = &ac_request;	/*	 * Register driver for AC Adapter devices.	 */	MEMCPY(criteria.hid, AC_HID_AC_ADAPTER, sizeof(AC_HID_AC_ADAPTER));	status = bm_register_driver(&criteria, &driver);	return_ACPI_STATUS(status);}/**************************************************************************** * * FUNCTION:	ac_terminate * * PARAMETERS:	<none> * * RETURN:	 * * DESCRIPTION: * ****************************************************************************/acpi_statusac_terminate (void){	acpi_status 		status = AE_OK;	BM_DEVICE_ID		criteria;	BM_DRIVER		driver;	FUNCTION_TRACE("ac_terminate");	MEMSET(&criteria, 0, sizeof(BM_DEVICE_ID));	MEMSET(&driver, 0, sizeof(BM_DRIVER));	/*	 * Unregister driver for AC Adapter devices.	 */	MEMCPY(criteria.hid, AC_HID_AC_ADAPTER, sizeof(AC_HID_AC_ADAPTER));	driver.notify = &ac_notify;	driver.request = &ac_request;	status = bm_unregister_driver(&criteria, &driver);	return_ACPI_STATUS(status);}/***************************************************************************** * * FUNCTION:	ac_notify * * PARAMETERS:	<none> * * RETURN:	 * * DESCRIPTION: * ****************************************************************************/acpi_statusac_notify (	BM_NOTIFY		notify_type,	BM_HANDLE		device_handle,	void			**context){	acpi_status 		status = AE_OK;	FUNCTION_TRACE("ac_notify");	if (!context) {		return_ACPI_STATUS(AE_BAD_PARAMETER);	}	switch (notify_type) {	case BM_NOTIFY_DEVICE_ADDED:		status = ac_add_device(device_handle, context);		break;	case BM_NOTIFY_DEVICE_REMOVED:		status = ac_remove_device(context);		break;	case AC_NOTIFY_STATUS_CHANGE:		ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Status change event detected.\n"));		status = ac_osl_generate_event(notify_type,			((AC_CONTEXT*)*context));		break;	default:		status = AE_SUPPORT;		break;	}	return_ACPI_STATUS(status);}/**************************************************************************** * * FUNCTION:	ac_request * * PARAMETERS:	 * * RETURN:	 * * DESCRIPTION: * ****************************************************************************/acpi_statusac_request (	BM_REQUEST		*request,	void			*context){	acpi_status 		status = AE_OK;	FUNCTION_TRACE("ac_request");	/*	 * Must have a valid request structure and context.	 */	if (!request || !context) {		return_ACPI_STATUS(AE_BAD_PARAMETER);	}	/*	 * Handle Request:	 * ---------------	 */	switch (request->command) {	default:		status = AE_SUPPORT;		break;	}	request->status = status;	return_ACPI_STATUS(status);}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品免费在线播放| voyeur盗摄精品| 日产国产欧美视频一区精品| 亚洲影视在线观看| 亚洲一区二区三区爽爽爽爽爽| 中文字幕在线一区| 亚洲欧美在线观看| 亚洲色图20p| 亚洲一二三级电影| 亚洲成人av资源| 天天操天天综合网| 蜜桃av噜噜一区二区三区小说| 奇米精品一区二区三区在线观看 | 欧美在线你懂得| 91久久精品国产91性色tv| 91视频观看视频| 91黄色免费观看| 欧美男生操女生| 精品伦理精品一区| 日本一区二区三区国色天香 | 国产91在线|亚洲| caoporn国产精品| 欧美影院一区二区| 欧美高清精品3d| 久久你懂得1024| 亚洲欧美日韩久久| 亚洲成人av资源| 激情综合亚洲精品| jiyouzz国产精品久久| 色中色一区二区| 91精品视频网| 日本一区免费视频| 亚洲一区二区视频在线| 久久99精品久久久久久动态图 | 久久久久国产精品人| 国产精品久久久久9999吃药| 一区二区三区欧美日韩| 麻豆精品久久精品色综合| 成人国产在线观看| 555www色欧美视频| 国产精品女同互慰在线看| 亚洲午夜精品在线| 国产一区二区三区精品视频| 色综合久久六月婷婷中文字幕| 欧美一级高清大全免费观看| 欧美激情资源网| 日韩一区欧美二区| 成人蜜臀av电影| 91.xcao| 国产精品电影院| 免费观看日韩电影| 91麻豆精品在线观看| 日韩精品一区二区三区在线 | 成人亚洲一区二区一| 欧美日韩一区成人| 国产精品妹子av| 爽好久久久欧美精品| 不卡一二三区首页| 日韩欧美一区在线| 亚洲精品久久嫩草网站秘色| 国产一区二区在线免费观看| 91成人网在线| 中文字幕精品综合| 美日韩黄色大片| 色94色欧美sute亚洲13| 久久精品亚洲精品国产欧美kt∨| 亚洲第一av色| 一本色道a无线码一区v| 久久久一区二区三区| 日韩成人一级大片| 欧美色大人视频| 日韩一区中文字幕| 国产精品原创巨作av| 欧美精品乱码久久久久久| 中文字幕一区二区三区精华液| 国内精品写真在线观看| 欧美丰满少妇xxxbbb| 亚洲免费资源在线播放| 国产成人av电影在线播放| 欧美电视剧在线看免费| 日韩国产欧美视频| 欧美日韩国产免费| 一区二区三区欧美在线观看| www.亚洲色图| 欧美国产精品专区| 国产精品白丝av| 精品奇米国产一区二区三区| 午夜免费久久看| 欧美亚洲国产一卡| 亚洲一区二区在线免费观看视频| 色婷婷综合激情| 亚洲免费视频成人| 一本久久综合亚洲鲁鲁五月天 | 欧美精品一区二区久久婷婷| 午夜不卡av免费| 欧美老女人在线| 日日摸夜夜添夜夜添精品视频 | 中文字幕欧美激情一区| 国产精品亚洲视频| 国产视频一区二区三区在线观看| 精品一区二区三区视频 | 蜜桃av一区二区在线观看| 欧美浪妇xxxx高跟鞋交| 亚洲成人av资源| 91精品国产色综合久久ai换脸| 五月婷婷欧美视频| 日韩天堂在线观看| 国产曰批免费观看久久久| 精品伦理精品一区| 国产成a人无v码亚洲福利| 日本一区二区综合亚洲| 91在线视频免费观看| 一区二区三区免费观看| 欧美日韩和欧美的一区二区| 婷婷开心激情综合| 欧美v日韩v国产v| 国产电影一区二区三区| 国产精品美女久久久久久久| 色香蕉成人二区免费| 亚洲一二三级电影| 精品人在线二区三区| 国产精品1区2区3区| 成人欧美一区二区三区黑人麻豆| 91免费视频大全| 亚洲电影视频在线| 日韩欧美第一区| 粉嫩一区二区三区性色av| 亚洲精品成人在线| 欧美一级xxx| 豆国产96在线|亚洲| 一区二区三区丝袜| 欧美一区二区久久久| 国产一区二区三区日韩 | 国产一区二区伦理片| 国产精品家庭影院| 欧美日韩mp4| 国产在线视频精品一区| 亚洲欧美日韩在线| 日韩欧美在线网站| 99在线精品一区二区三区| 午夜精品福利一区二区三区av| 精品国产自在久精品国产| 不卡免费追剧大全电视剧网站| 亚洲自拍偷拍麻豆| 精品国产乱码久久久久久闺蜜| 成人免费毛片嘿嘿连载视频| 一区二区三区精品久久久| 日韩免费视频线观看| 91在线视频在线| 极品销魂美女一区二区三区| 亚洲特级片在线| 欧美xxxx在线观看| 色爱区综合激月婷婷| 国产制服丝袜一区| 亚洲精品免费电影| 久久伊人中文字幕| 欧美亚洲高清一区| 丁香婷婷综合激情五月色| 午夜欧美在线一二页| 中文字幕永久在线不卡| 日韩视频免费观看高清完整版 | 欧美女孩性生活视频| 成人性生交大合| 日本不卡一区二区三区| 亚洲丝袜精品丝袜在线| 精品蜜桃在线看| 欧美日韩精品电影| 成人avav在线| 麻豆成人久久精品二区三区红 | 亚洲欧美日韩一区二区三区在线观看| 日韩一区二区在线观看视频| 91小视频免费看| 国产成人精品亚洲日本在线桃色 | 韩国精品主播一区二区在线观看| 亚洲欧美日韩在线播放| www激情久久| 日韩一级二级三级| 欧美私模裸体表演在线观看| 国产**成人网毛片九色| 久久成人免费日本黄色| 亚洲成人精品一区| 18欧美亚洲精品| 国产喷白浆一区二区三区| 日韩欧美一二区| 欧美日韩久久一区| 欧美性猛交xxxxxx富婆| 91蜜桃在线观看| 成人免费av网站| 成人毛片视频在线观看| 国产又黄又大久久| 久久精品国产**网站演员| 日本中文字幕一区二区视频| 一区二区久久久久久| 亚洲私人影院在线观看| 一区二区中文字幕在线| 国产欧美精品区一区二区三区| 亚洲精品一区二区三区四区高清 | 国产日韩高清在线| 久久久久免费观看| 久久网这里都是精品|