rpms/kernel/devel linux-2.6-acpi-ignore-reset_reg_sup.patch, NONE, 1.1 kernel.spec, 1.1088, 1.1089

Dave Jones davej at fedoraproject.org
Mon Oct 27 16:36:41 UTC 2008


Author: davej

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv11243

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-acpi-ignore-reset_reg_sup.patch 
Log Message:
ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism. (461228)

linux-2.6-acpi-ignore-reset_reg_sup.patch:

--- NEW FILE linux-2.6-acpi-ignore-reset_reg_sup.patch ---
Subject: ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism
From: Zhao Yakui <yakui.zhao at intel.com>

       According to ACPI 3.0 spec the RESET_REG_SUP bit of FADT flag indicates
whether the acpi reboot is supported. On some boxes this flag bit is zero. But
there exists the definition of ACPI_RESET_REG & RESET_VALUE. And on such boxes
the system can be rebooted only by using ACPI reboot after the cycle of
suspend/resume.
       So in such case it is unnecessary to check the flag bit any more. When 
acpi reboot is expected, only the reset_register is checked. If the following
conditions are meeted, it indicates that the reset register is supported.
Otherwise it means that reset register is unsupported.
	a. reset_register is not zero
	b. the access width is eight
	c. the bit_offset is zero

http://bugzilla.kernel.org/show_bug.cgi?id=7299
http://bugzilla.kernel.org/show_bug.cgi?id=1148

Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
---
 drivers/acpi/reboot.c |   21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

Index: linux-2.6/drivers/acpi/reboot.c
===================================================================
--- linux-2.6.orig/drivers/acpi/reboot.c
+++ linux-2.6/drivers/acpi/reboot.c
@@ -15,9 +15,24 @@ void acpi_reboot(void)
 
 	rr = &acpi_gbl_FADT.reset_register;
 
-	/* Is the reset register supported? */
-	if (!(acpi_gbl_FADT.flags & ACPI_FADT_RESET_REGISTER) ||
-	    rr->bit_width != 8 || rr->bit_offset != 0)
+	/*
+	 * Is the reset register supported?
+	 * According to ACPI 3.0 spec the RESET_REG_SUP bit of FADT flag
+	 * indicates whether the acpi reboot is supported. On some
+	 * boxes this bit is zero. But there exists the definition of
+	 * ACPI_RESET_REG & RESET_VALUE.
+	 * And on such boxes the system can be rebooted only by using ACPI
+	 * reboot after the cycle of suspend/resume.
+	 * So in such case it is unnecessary to check the flag bit any more.
+	 * When acpi reboot is expected, only the reset_register is checked.
+	 * If the following conditions are meeted, it indicates that the reset
+	 * register is supported. Otherwise it means that reset register is
+	 * unsupported.
+	 * a. reset_register is not zero
+	 * b. the access width is eight
+	 * c. the bit_offset is zero
+	 */
+	if (!(rr->address) || rr->bit_width != 8 || rr->bit_offset != 0)
 		return;
 
 	reset_value = acpi_gbl_FADT.reset_value;


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1088
retrieving revision 1.1089
diff -u -r1.1088 -r1.1089
--- kernel.spec	27 Oct 2008 06:52:25 -0000	1.1088
+++ kernel.spec	27 Oct 2008 16:36:10 -0000	1.1089
@@ -616,6 +616,7 @@
 Patch390: linux-2.6-defaults-acpi-video.patch
 Patch391: linux-2.6-acpi-video-dos.patch
 Patch392: linux-2.6-acpi-clear-wake-status.patch
+Patch393: linux-2.6-acpi-ignore-reset_reg_sup.patch
 Patch400: linux-2.6-scsi-cpqarray-set-master.patch
 Patch420: linux-2.6-squashfs.patch
 Patch430: linux-2.6-net-silence-noisy-printks.patch
@@ -1149,6 +1150,7 @@
 ApplyPatch linux-2.6-defaults-acpi-video.patch
 ApplyPatch linux-2.6-acpi-video-dos.patch
 ApplyPatch linux-2.6-acpi-clear-wake-status.patch
+ApplyPatch linux-2.6-acpi-ignore-reset_reg_sup.patch
 
 # Various low-impact patches to aid debugging.
 ApplyPatch linux-2.6-debug-sizeof-structs.patch
@@ -1870,6 +1872,9 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Mon Oct 27 2008 Dave Jones <davej at redhat.com>
+- ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism. (461228)
+
 * Mon Oct 27 2008 Dave Airlie <airlied at redhat.com> 2.6.27.4-52
 - drm-modesetting-radeon.patch - fix some kms issues + add better CS scheme
 




More information about the fedora-extras-commits mailing list