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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bus.c

?? linux 內核源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
	 * Make sure this device's parent is present before we go about	 * messing with the device.	 */	if (device->parent && !device->parent->status.present) {		device->status = device->parent->status;		if (STRUCT_TO_INT(old_status) != STRUCT_TO_INT(device->status)) {			if (status_changed)				*status_changed = 1;		}		return 0;	}	status = acpi_bus_get_status(device);	if (ACPI_FAILURE(status))		return -ENODEV;	if (STRUCT_TO_INT(old_status) == STRUCT_TO_INT(device->status))		return 0;	if (status_changed)		*status_changed = 1;	/*	 * Device Insertion/Removal	 */	if ((device->status.present) && !(old_status.present)) {		ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Device insertion detected\n"));		/* TBD: Handle device insertion */	} else if (!(device->status.present) && (old_status.present)) {		ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Device removal detected\n"));		/* TBD: Handle device removal */	}	return 0;}static int acpi_bus_check_scope(struct acpi_device *device){	int result = 0;	int status_changed = 0;	if (!device)		return -EINVAL;	/* Status Change? */	result = acpi_bus_check_device(device, &status_changed);	if (result)		return result;	if (!status_changed)		return 0;	/*	 * TBD: Enumerate child devices within this device's scope and	 *       run acpi_bus_check_device()'s on them.	 */	return 0;}/** * acpi_bus_notify * --------------- * Callback for all 'system-level' device notifications (values 0x00-0x7F). */static void acpi_bus_notify(acpi_handle handle, u32 type, void *data){	int result = 0;	struct acpi_device *device = NULL;	if (acpi_bus_get_device(handle, &device))		return;	switch (type) {	case ACPI_NOTIFY_BUS_CHECK:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received BUS CHECK notification for device [%s]\n",				  device->pnp.bus_id));		result = acpi_bus_check_scope(device);		/*		 * TBD: We'll need to outsource certain events to non-ACPI		 *      drivers via the device manager (device.c).		 */		break;	case ACPI_NOTIFY_DEVICE_CHECK:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received DEVICE CHECK notification for device [%s]\n",				  device->pnp.bus_id));		result = acpi_bus_check_device(device, NULL);		/*		 * TBD: We'll need to outsource certain events to non-ACPI		 *      drivers via the device manager (device.c).		 */		break;	case ACPI_NOTIFY_DEVICE_WAKE:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received DEVICE WAKE notification for device [%s]\n",				  device->pnp.bus_id));		/* TBD */		break;	case ACPI_NOTIFY_EJECT_REQUEST:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received EJECT REQUEST notification for device [%s]\n",				  device->pnp.bus_id));		/* TBD */		break;	case ACPI_NOTIFY_DEVICE_CHECK_LIGHT:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received DEVICE CHECK LIGHT notification for device [%s]\n",				  device->pnp.bus_id));		/* TBD: Exactly what does 'light' mean? */		break;	case ACPI_NOTIFY_FREQUENCY_MISMATCH:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received FREQUENCY MISMATCH notification for device [%s]\n",				  device->pnp.bus_id));		/* TBD */		break;	case ACPI_NOTIFY_BUS_MODE_MISMATCH:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received BUS MODE MISMATCH notification for device [%s]\n",				  device->pnp.bus_id));		/* TBD */		break;	case ACPI_NOTIFY_POWER_FAULT:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received POWER FAULT notification for device [%s]\n",				  device->pnp.bus_id));		/* TBD */		break;	default:		ACPI_DEBUG_PRINT((ACPI_DB_INFO,				  "Received unknown/unsupported notification [%08x]\n",				  type));		break;	}	return;}/* --------------------------------------------------------------------------                             Initialization/Cleanup   -------------------------------------------------------------------------- */static int __init acpi_bus_init_irq(void){	acpi_status status = AE_OK;	union acpi_object arg = { ACPI_TYPE_INTEGER };	struct acpi_object_list arg_list = { 1, &arg };	char *message = NULL;	/*	 * Let the system know what interrupt model we are using by	 * evaluating the \_PIC object, if exists.	 */	switch (acpi_irq_model) {	case ACPI_IRQ_MODEL_PIC:		message = "PIC";		break;	case ACPI_IRQ_MODEL_IOAPIC:		message = "IOAPIC";		break;	case ACPI_IRQ_MODEL_IOSAPIC:		message = "IOSAPIC";		break;	case ACPI_IRQ_MODEL_PLATFORM:		message = "platform specific model";		break;	default:		printk(KERN_WARNING PREFIX "Unknown interrupt routing model\n");		return -ENODEV;	}	printk(KERN_INFO PREFIX "Using %s for interrupt routing\n", message);	arg.integer.value = acpi_irq_model;	status = acpi_evaluate_object(NULL, "\\_PIC", &arg_list, NULL);	if (ACPI_FAILURE(status) && (status != AE_NOT_FOUND)) {		ACPI_EXCEPTION((AE_INFO, status, "Evaluating _PIC"));		return -ENODEV;	}	return 0;}acpi_native_uint acpi_gbl_permanent_mmap;void __init acpi_early_init(void){	acpi_status status = AE_OK;	if (acpi_disabled)		return;	printk(KERN_INFO PREFIX "Core revision %08x\n", ACPI_CA_VERSION);	/* enable workarounds, unless strict ACPI spec. compliance */	if (!acpi_strict)		acpi_gbl_enable_interpreter_slack = TRUE;	acpi_gbl_permanent_mmap = 1;	status = acpi_reallocate_root_table();	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX		       "Unable to reallocate ACPI tables\n");		goto error0;	}	status = acpi_initialize_subsystem();	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX		       "Unable to initialize the ACPI Interpreter\n");		goto error0;	}	status = acpi_load_tables();	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX		       "Unable to load the System Description Tables\n");		goto error0;	}#ifdef CONFIG_X86	if (!acpi_ioapic) {		extern u8 acpi_sci_flags;		/* compatible (0) means level (3) */		if (!(acpi_sci_flags & ACPI_MADT_TRIGGER_MASK)) {			acpi_sci_flags &= ~ACPI_MADT_TRIGGER_MASK;			acpi_sci_flags |= ACPI_MADT_TRIGGER_LEVEL;		}		/* Set PIC-mode SCI trigger type */		acpi_pic_sci_set_trigger(acpi_gbl_FADT.sci_interrupt,					 (acpi_sci_flags & ACPI_MADT_TRIGGER_MASK) >> 2);	} else {		extern int acpi_sci_override_gsi;		/*		 * now that acpi_gbl_FADT is initialized,		 * update it with result from INT_SRC_OVR parsing		 */		acpi_gbl_FADT.sci_interrupt = acpi_sci_override_gsi;	}#endif	status =	    acpi_enable_subsystem(~				  (ACPI_NO_HARDWARE_INIT |				   ACPI_NO_ACPI_ENABLE));	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX "Unable to enable ACPI\n");		goto error0;	}	return;      error0:	disable_acpi();	return;}static int __init acpi_bus_init(void){	int result = 0;	acpi_status status = AE_OK;	extern acpi_status acpi_os_initialize1(void);	status = acpi_os_initialize1();	status =	    acpi_enable_subsystem(ACPI_NO_HARDWARE_INIT | ACPI_NO_ACPI_ENABLE);	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX		       "Unable to start the ACPI Interpreter\n");		goto error1;	}	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX		       "Unable to initialize ACPI OS objects\n");		goto error1;	}#ifdef CONFIG_ACPI_EC	/*	 * ACPI 2.0 requires the EC driver to be loaded and work before	 * the EC device is found in the namespace (i.e. before acpi_initialize_objects()	 * is called).	 *	 * This is accomplished by looking for the ECDT table, and getting	 * the EC parameters out of that.	 */	status = acpi_ec_ecdt_probe();	/* Ignore result. Not having an ECDT is not fatal. */#endif	status = acpi_initialize_objects(ACPI_FULL_INITIALIZATION);	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX "Unable to initialize ACPI objects\n");		goto error1;	}	printk(KERN_INFO PREFIX "Interpreter enabled\n");	/* Initialize sleep structures */	acpi_sleep_init();	/*	 * Get the system interrupt model and evaluate \_PIC.	 */	result = acpi_bus_init_irq();	if (result)		goto error1;	/*	 * Register the for all standard device notifications.	 */	status =	    acpi_install_notify_handler(ACPI_ROOT_OBJECT, ACPI_SYSTEM_NOTIFY,					&acpi_bus_notify, NULL);	if (ACPI_FAILURE(status)) {		printk(KERN_ERR PREFIX		       "Unable to register for device notifications\n");		goto error1;	}	/*	 * Create the top ACPI proc directory	 */	acpi_root_dir = proc_mkdir(ACPI_BUS_FILE_ROOT, NULL);	return 0;	/* Mimic structured exception handling */      error1:	acpi_terminate();	return -ENODEV;}decl_subsys(acpi, NULL, NULL);static int __init acpi_init(void){	int result = 0;	if (acpi_disabled) {		printk(KERN_INFO PREFIX "Interpreter disabled.\n");		return -ENODEV;	}	result = firmware_register(&acpi_subsys);	if (result < 0)		printk(KERN_WARNING "%s: firmware_register error: %d\n",			__FUNCTION__, result);	result = acpi_bus_init();	if (!result) {		if (!(pm_flags & PM_APM))			pm_flags |= PM_ACPI;		else {			printk(KERN_INFO PREFIX			       "APM is already active, exiting\n");			disable_acpi();			result = -ENODEV;		}	} else		disable_acpi();	return result;}subsys_initcall(acpi_init);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粉嫩av一区二区三区粉嫩 | 欧美国产日韩a欧美在线观看| 亚洲精品在线观看视频| 中文字幕中文字幕一区二区| 日韩电影在线观看一区| 成人国产在线观看| 日韩一区二区三区av| 亚洲欧美日韩国产综合| 精品一二三四在线| 欧美午夜精品一区二区三区| 国产精品婷婷午夜在线观看| 黄色资源网久久资源365| 欧美日韩中文另类| 亚洲九九爱视频| 成人午夜精品在线| 久久蜜桃av一区精品变态类天堂 | 国产精品乱子久久久久| 久久精品av麻豆的观看方式| 欧美日韩一区二区三区四区| 亚洲色图一区二区| 不卡一卡二卡三乱码免费网站| 欧美mv和日韩mv国产网站| 午夜精品久久一牛影视| 91国模大尺度私拍在线视频| 亚洲欧美激情插| 色婷婷综合久久| 一区二区三区日本| 一本一道波多野结衣一区二区| 国产精品成人一区二区艾草| 成人国产精品视频| 国产精品久久一卡二卡| a亚洲天堂av| 亚洲精品福利视频网站| 在线看国产日韩| 亚洲成人久久影院| 欧美日韩免费高清一区色橹橹| 亚洲一区二区三区四区在线免费观看 | 久久九九99视频| 国产高清在线精品| 亚洲国产成人自拍| 97国产精品videossex| 中文字幕在线观看不卡| 91伊人久久大香线蕉| 日韩美女视频一区| 色吧成人激情小说| 亚洲国产精品一区二区尤物区| 欧美视频一区二区三区| 日韩av一级片| 欧美电影免费提供在线观看| 精品一区二区三区免费视频| 国产亚洲成av人在线观看导航| 国产福利91精品一区| 自拍偷拍亚洲激情| 欧美一区二区久久| 国产精品系列在线播放| 亚洲人一二三区| 欧美福利视频一区| 国产精品中文字幕日韩精品| 中文字幕一区二区三区色视频 | 欧美成人精品二区三区99精品| 国产专区欧美精品| 亚洲视频香蕉人妖| 69av一区二区三区| 大桥未久av一区二区三区中文| 国产精品久久久久久久久免费丝袜| 日本韩国欧美一区| 国内精品久久久久影院薰衣草 | 成人欧美一区二区三区视频网页 | 欧美三级中文字| 国产一区二三区| 亚洲黄色av一区| 日韩视频免费观看高清完整版在线观看 | 日韩欧美一二区| 成人福利电影精品一区二区在线观看| 一区二区三区国产精品| 精品国产乱码久久| 色婷婷av久久久久久久| 激情欧美日韩一区二区| 亚洲日本免费电影| 久久网站最新地址| 色先锋久久av资源部| 激情都市一区二区| 一区二区在线看| 久久精品一区蜜桃臀影院| 在线观看91视频| 国产成人av福利| 日本成人在线看| 一区二区三区日韩精品视频| 国产视频一区在线观看 | 中文字幕免费一区| 欧美一级日韩一级| 欧美日韩成人综合天天影院| eeuss鲁片一区二区三区 | 色综合天天综合网天天狠天天| 国内精品国产成人国产三级粉色| 亚洲成av人影院| 亚洲蜜臀av乱码久久精品| 国产午夜亚洲精品理论片色戒| 日韩欧美国产一区在线观看| 欧美丝袜丝交足nylons图片| 色综合咪咪久久| 成人精品视频一区二区三区尤物| 激情综合色播激情啊| 日韩在线观看一区二区| 亚洲一区日韩精品中文字幕| 最新高清无码专区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 制服丝袜亚洲色图| 日本福利一区二区| 在线亚洲+欧美+日本专区| 色哟哟欧美精品| 一本大道综合伊人精品热热 | 成人动漫视频在线| 高清不卡在线观看| 国产成人免费在线观看不卡| 国产九色精品成人porny| 国产精品一二一区| 国产风韵犹存在线视精品| 国产成人啪免费观看软件| 粉嫩久久99精品久久久久久夜| 国产成人亚洲精品青草天美| 国产成人午夜99999| 99久久99久久综合| 欧美主播一区二区三区| 欧美日韩综合不卡| 欧美一区中文字幕| 精品国产乱码久久久久久闺蜜| 国产欧美一区二区精品忘忧草| 国产精品水嫩水嫩| 一区二区欧美在线观看| 香蕉久久夜色精品国产使用方法 | 亚洲成在人线免费| 日韩高清一区在线| 国产一区二区美女| 成人av先锋影音| 欧美日韩一区二区三区高清| 欧美一区二区三区白人| 久久精品人人做| 亚洲精品国产精品乱码不99| 日韩精品成人一区二区在线| 国产曰批免费观看久久久| 91香蕉视频污在线| 69堂精品视频| 国产精品色哟哟网站| 午夜精品久久久久久不卡8050| 国产在线视频一区二区三区| 99re热这里只有精品视频| 在线成人午夜影院| 欧美国产激情二区三区 | 成人av综合在线| 欧美日韩一区成人| 久久男人中文字幕资源站| 一区二区三区欧美在线观看| 欧美自拍丝袜亚洲| 国产精品私人影院| 欧美成人精品福利| 亚洲美女屁股眼交3| 蜜桃视频在线观看一区二区| 成人av第一页| 精品久久国产字幕高潮| 免费高清在线视频一区·| 成人免费va视频| 日韩欧美在线影院| 亚洲男人电影天堂| 狠狠色狠狠色综合日日91app| 色老汉av一区二区三区| 久久嫩草精品久久久久| 日本麻豆一区二区三区视频| 91美女片黄在线| 国产欧美日韩在线视频| 蜜臀av国产精品久久久久 | 国产精品久久久一本精品| 蜜臀精品久久久久久蜜臀| 91福利资源站| ㊣最新国产の精品bt伙计久久| 久久99日本精品| 91精品一区二区三区久久久久久| 欧美一区二区三区小说| 国产精品久久久久久福利一牛影视 | 欧美mv日韩mv国产网站app| 一区二区三区 在线观看视频 | 国产精品一区在线观看你懂的| 欧美精品粉嫩高潮一区二区| 亚洲免费大片在线观看| 97精品电影院| 国产精品久久久久久久久免费丝袜| 国产一区二区主播在线| 精品sm捆绑视频| 麻豆久久一区二区| 8v天堂国产在线一区二区| 图片区小说区区亚洲影院| 91麻豆精东视频| 亚洲美女电影在线| 成人av在线观| 日韩美女视频19| 一本到不卡免费一区二区| 亚洲精品欧美激情| 91蝌蚪porny| 国产乱色国产精品免费视频| 欧亚一区二区三区|