[PATCH 3/3] SRU LP69925 Intrepid - CPU fan stops at kernel load

Steve Conklin sconklin at canonical.com
Mon Dec 1 15:46:44 UTC 2008


>From 2fb41f56964fc3489a9b7c93fdf66bffed26e075 Mon Sep 17 00:00:00 2001
From: Zhao Yakui <yakui.zhao at intel.com>
Date: Mon, 11 Aug 2008 14:54:16 +0800
Subject: [PATCH 3/3] UBUNTU: ACPI: Attach the ACPI device to the ACPI handle as early as possible
 Bug: #69925

ACPI: Attach the ACPI device to the ACPI handle as early as possible

Attach the ACPI device to the ACPI handle as early as possible so that OS
can get the corresponding ACPI device by the acpi handle in the course
of getting the power/wakeup/performance flags.

http://bugzilla.kernel.org/show_bug.cgi?id=8049
http://bugzilla.kernel.org/show_bug.cgi?id=11000

Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
Signed-off-by: Zhang Rui <rui.zhang at intel.com>
Signed-off-by: Andi Kleen <ak at linux.intel.com>
Signed-off-by: Len Brown <len.brown at intel.com>
Signed-off-by: Steve Conklin <sconklin at canonical.com>
---
 drivers/acpi/scan.c |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
index 0450761..afa66f4 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
@@ -1262,6 +1262,16 @@ acpi_add_single_object(struct acpi_device **child,
 	acpi_device_set_id(device, parent, handle, type);
 
 	/*
+	 * The ACPI device is attached to acpi handle before getting
+	 * the power/wakeup/peformance flags. Otherwise OS can't get
+	 * the corresponding ACPI device by the acpi handle in the course
+	 * of getting the power/wakeup/performance flags.
+	 */
+	result = acpi_device_set_context(device, type);
+	if (result)
+		goto end;
+
+	/*
 	 * Power Management
 	 * ----------------
 	 */
@@ -1291,8 +1301,6 @@ acpi_add_single_object(struct acpi_device **child,
 			goto end;
 	}
 
-	if ((result = acpi_device_set_context(device, type)))
-		goto end;
 
 	result = acpi_device_register(device, parent);
 
-- 
1.5.6.3





More information about the kernel-team mailing list