RE: [PATCH 1/3] ACPICA: Add acpi_gbl_force_rsdt variable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sounds like there are still a lot of "unknowns", namely

1) what does XP do?
2) what does Vista do?
3) is there actually a bug in ACPICA?

I'm not comfortable just slapping in another global when so many
questions remain unanswered.

Bob


>-----Original Message-----
>From: Thomas Renninger [mailto:trenn@xxxxxxx]
>Sent: Friday, May 09, 2008 1:50 AM
>To: Moore, Robert
>Cc: linux-acpi; Len Brown; Zhao, Yakui; me@xxxxxxxxxxxxxxxxx;
Starikovskiy,
>Alexey Y
>Subject: RE: [PATCH 1/3] ACPICA: Add acpi_gbl_force_rsdt variable
>
>On Thu, 2008-05-08 at 09:32 -0700, Moore, Robert wrote:
>> Has there any investigation into how windows handles this?
>It's too late now, anyway.
>This is about 3 years old machines, we do not want to change the
>behavior XSDT vs RSDT in general and produce some regressions as a
>side-effect, but just fix up some known broken machines.
>
>I expect that XP did violate a bit the spec and tended to prefer the
>RSDT. I don't know how to check all this, but I expect that Vista is
>preferring the XSDT again.
>Or there always were bugs in acpica setting up the FADT via XSDT
causing
>this.
>
>Providing OS a knob at this place shouldn't be a big deal?
>
>   Thomas
>
>> >-----Original Message-----
>> >From: Thomas Renninger [mailto:trenn@xxxxxxx]
>> >Sent: Thursday, May 08, 2008 8:10 AM
>> >To: linux-acpi; Len Brown
>> >Cc: Zhao, Yakui; me@xxxxxxxxxxxxxxxxx; Moore, Robert; Starikovskiy,
>> Alexey
>> >Y
>> >Subject: [PATCH 1/3] ACPICA: Add acpi_gbl_force_rsdt variable
>> >
>> >I expect separate patches should now be patched against
>> >acpica when possible?
>> >
>> >Does this also make sense with patches which have dependencies
>> >to other patches for the Linux kernel? In this case there is not a
>> >"does not compile" dependency, but at least they belong together.
>> >
>> >I wonder what works out for acpica and Linux kernel maintainers
best,
>> >please advise.
>> >
>> >
>> >----
>> >
>> >ACPICA: Add acpi_gbl_force_rsdt variable
>> >
>> >Signed-off-by: Thomas Renninger <trenn@xxxxxxx>
>> >Tested-by: Mark Doughty <me@xxxxxxxxxxxxxxxxx>
>> >
>> >
>> >---
>> > drivers/acpi/tables/tbutils.c     |    3 ++-
>> > drivers/acpi/utilities/utglobal.c |    1 +
>> > include/acpi/acglobal.h           |    1 +
>> > 3 files changed, 4 insertions(+), 1 deletion(-)
>> >
>> >Index: linux-acpi-
>> >2.6_video_native_vs_vendor/drivers/acpi/utilities/utglobal.c
>> >===================================================================
>> >--- linux-acpi-
>> >2.6_video_native_vs_vendor.orig/drivers/acpi/utilities/utglobal.c
>> >+++
>>
linux-acpi-2.6_video_native_vs_vendor/drivers/acpi/utilities/utglobal.c
>> >@@ -76,6 +76,7 @@ u8 acpi_gbl_method_executing = FALSE;
>> > /* System flags */
>> >
>> > u32 acpi_gbl_startup_flags = 0;
>> >+int acpi_gbl_force_rsdt = 0;
>> >
>> > /* System starts uninitialized */
>> >
>> >Index: linux-acpi-2.6_video_native_vs_vendor/include/acpi/acglobal.h
>> >===================================================================
>> >---
linux-acpi-2.6_video_native_vs_vendor.orig/include/acpi/acglobal.h
>> >+++ linux-acpi-2.6_video_native_vs_vendor/include/acpi/acglobal.h
>> >@@ -246,6 +246,7 @@ ACPI_EXTERN u8 acpi_gbl_system_awake_and
>> >
>> > extern u8 acpi_gbl_shutdown;
>> > extern u32 acpi_gbl_startup_flags;
>> >+extern int acpi_gbl_force_rsdt;
>> > extern const char *acpi_gbl_sleep_state_names[ACPI_S_STATE_COUNT];
>> > extern const char *acpi_gbl_highest_dstate_names[4];
>> > extern const struct acpi_opcode_info
>> >acpi_gbl_aml_op_info[AML_NUM_OPCODES];
>> >Index:
>> linux-acpi-2.6_video_native_vs_vendor/drivers/acpi/tables/tbutils.c
>> >===================================================================
>> >--- linux-acpi-
>> >2.6_video_native_vs_vendor.orig/drivers/acpi/tables/tbutils.c
>> >+++
linux-acpi-2.6_video_native_vs_vendor/drivers/acpi/tables/tbutils.c
>> >@@ -421,7 +421,8 @@ acpi_tb_parse_root_table(acpi_physical_a
>> >
>> > 	/* Differentiate between RSDT and XSDT root tables */
>> >
>> >-	if (rsdp->revision > 1 && rsdp->xsdt_physical_address) {
>> >+	if (rsdp->revision > 1 && rsdp->xsdt_physical_address
>> >+	    && !acpi_gbl_force_rsdt) {
>> > 		/*
>> > 		 * Root table is an XSDT (64-bit physical addresses). We
>> must
>> >use the
>> > 		 * XSDT if the revision is > 1 and the XSDT pointer is
>> present,
>> >as per
>> >
>>

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux