diff options
author | Len Brown <len.brown@intel.com> | 2007-07-22 02:27:40 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2007-07-22 02:27:40 -0400 |
commit | f79e3185dd0f8650022518d7624c876d8929061b (patch) | |
tree | 4cec3a434036031b4e2d4fef608f5523fb21c829 | |
parent | e8b495fe09bc793ae26774e7b2667f7f658d56e2 (diff) | |
parent | 8b8eb7d8cfc6cd95ed00cd58754e8493322505bd (diff) |
Pull misc into release branch
Conflicts:
Documentation/feature-removal-schedule.txt
-rw-r--r-- | Documentation/feature-removal-schedule.txt | 21 | ||||
-rw-r--r-- | arch/i386/kernel/acpi/boot.c | 8 | ||||
-rw-r--r-- | drivers/acpi/Kconfig | 13 | ||||
-rw-r--r-- | drivers/acpi/glue.c | 2 | ||||
-rw-r--r-- | drivers/acpi/pci_link.c | 2 | ||||
-rw-r--r-- | drivers/acpi/processor_idle.c | 20 | ||||
-rw-r--r-- | drivers/acpi/sleep/main.c | 5 | ||||
-rw-r--r-- | include/acpi/acmacros.h | 40 |
8 files changed, 43 insertions, 68 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index a5cb7839a679..c175eedadb5f 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -180,24 +180,11 @@ Who: Adrian Bunk <bunk@stusta.de> | |||
180 | 180 | ||
181 | --------------------------- | 181 | --------------------------- |
182 | 182 | ||
183 | What: /sys/firmware/acpi/namespace | ||
184 | When: 2.6.21 | ||
185 | Why: The ACPI namespace is effectively the symbol list for | ||
186 | the BIOS. The device names are completely arbitrary | ||
187 | and have no place being exposed to user-space. | ||
188 | |||
189 | For those interested in the BIOS ACPI namespace, | ||
190 | the BIOS can be extracted and disassembled with acpidump | ||
191 | and iasl as documented in the pmtools package here: | ||
192 | http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils | ||
193 | Who: Len Brown <len.brown@intel.com> | ||
194 | |||
195 | --------------------------- | ||
196 | |||
197 | What: ACPI procfs interface | 183 | What: ACPI procfs interface |
198 | When: July 2007 | 184 | When: July 2008 |
199 | Why: After ACPI sysfs conversion, ACPI attributes will be duplicated | 185 | Why: ACPI sysfs conversion should be finished by January 2008. |
200 | in sysfs and the ACPI procfs interface should be removed. | 186 | ACPI procfs interface will be removed in July 2008 so that |
187 | there is enough time for the user space to catch up. | ||
201 | Who: Zhang Rui <rui.zhang@intel.com> | 188 | Who: Zhang Rui <rui.zhang@intel.com> |
202 | 189 | ||
203 | --------------------------- | 190 | --------------------------- |
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index b87cedeaf59b..cacdd883bf2b 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -986,14 +986,6 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = { | |||
986 | }, | 986 | }, |
987 | { | 987 | { |
988 | .callback = force_acpi_ht, | 988 | .callback = force_acpi_ht, |
989 | .ident = "DELL GX240", | ||
990 | .matches = { | ||
991 | DMI_MATCH(DMI_BOARD_VENDOR, "Dell Computer Corporation"), | ||
992 | DMI_MATCH(DMI_BOARD_NAME, "OptiPlex GX240"), | ||
993 | }, | ||
994 | }, | ||
995 | { | ||
996 | .callback = force_acpi_ht, | ||
997 | .ident = "HP VISUALIZE NT Workstation", | 989 | .ident = "HP VISUALIZE NT Workstation", |
998 | .matches = { | 990 | .matches = { |
999 | DMI_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"), | 991 | DMI_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"), |
diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index 1121a1f4b5d7..501ed6ffa40f 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig | |||
@@ -2,16 +2,12 @@ | |||
2 | # ACPI Configuration | 2 | # ACPI Configuration |
3 | # | 3 | # |
4 | 4 | ||
5 | menu "ACPI (Advanced Configuration and Power Interface) Support" | 5 | menuconfig ACPI |
6 | bool "ACPI Support (Advanced Configuration and Power Interface) Support" | ||
6 | depends on !X86_NUMAQ | 7 | depends on !X86_NUMAQ |
7 | depends on !X86_VISWS | 8 | depends on !X86_VISWS |
8 | depends on !IA64_HP_SIM | 9 | depends on !IA64_HP_SIM |
9 | depends on IA64 || X86 | 10 | depends on IA64 || X86 |
10 | depends on PM | ||
11 | |||
12 | config ACPI | ||
13 | bool "ACPI Support" | ||
14 | depends on IA64 || X86 | ||
15 | depends on PCI | 11 | depends on PCI |
16 | depends on PM | 12 | depends on PM |
17 | select PNP | 13 | select PNP |
@@ -49,7 +45,6 @@ if ACPI | |||
49 | config ACPI_SLEEP | 45 | config ACPI_SLEEP |
50 | bool "Sleep States" | 46 | bool "Sleep States" |
51 | depends on X86 && (!SMP || SUSPEND_SMP) | 47 | depends on X86 && (!SMP || SUSPEND_SMP) |
52 | depends on PM | ||
53 | default y | 48 | default y |
54 | ---help--- | 49 | ---help--- |
55 | This option adds support for ACPI suspend states. | 50 | This option adds support for ACPI suspend states. |
@@ -82,7 +77,6 @@ config ACPI_SLEEP_PROC_SLEEP | |||
82 | 77 | ||
83 | config ACPI_PROCFS | 78 | config ACPI_PROCFS |
84 | bool "Procfs interface (deprecated)" | 79 | bool "Procfs interface (deprecated)" |
85 | depends on ACPI | ||
86 | default y | 80 | default y |
87 | ---help--- | 81 | ---help--- |
88 | The Procfs interface for ACPI is made optional for backward compatibility. | 82 | The Procfs interface for ACPI is made optional for backward compatibility. |
@@ -338,7 +332,6 @@ config ACPI_CONTAINER | |||
338 | 332 | ||
339 | config ACPI_HOTPLUG_MEMORY | 333 | config ACPI_HOTPLUG_MEMORY |
340 | tristate "Memory Hotplug" | 334 | tristate "Memory Hotplug" |
341 | depends on ACPI | ||
342 | depends on MEMORY_HOTPLUG | 335 | depends on MEMORY_HOTPLUG |
343 | default n | 336 | default n |
344 | help | 337 | help |
@@ -367,5 +360,3 @@ config ACPI_SBS | |||
367 | to today's ACPI "Control Method" battery. | 360 | to today's ACPI "Control Method" battery. |
368 | 361 | ||
369 | endif # ACPI | 362 | endif # ACPI |
370 | |||
371 | endmenu | ||
diff --git a/drivers/acpi/glue.c b/drivers/acpi/glue.c index 41427a41f620..4893e256e399 100644 --- a/drivers/acpi/glue.c +++ b/drivers/acpi/glue.c | |||
@@ -16,7 +16,7 @@ | |||
16 | #if ACPI_GLUE_DEBUG | 16 | #if ACPI_GLUE_DEBUG |
17 | #define DBG(x...) printk(PREFIX x) | 17 | #define DBG(x...) printk(PREFIX x) |
18 | #else | 18 | #else |
19 | #define DBG(x...) | 19 | #define DBG(x...) do { } while(0) |
20 | #endif | 20 | #endif |
21 | static LIST_HEAD(bus_type_list); | 21 | static LIST_HEAD(bus_type_list); |
22 | static DECLARE_RWSEM(bus_type_sem); | 22 | static DECLARE_RWSEM(bus_type_sem); |
diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c index acc594771379..3448edd61dc4 100644 --- a/drivers/acpi/pci_link.c +++ b/drivers/acpi/pci_link.c | |||
@@ -733,7 +733,7 @@ static int acpi_pci_link_add(struct acpi_device *device) | |||
733 | /* query and set link->irq.active */ | 733 | /* query and set link->irq.active */ |
734 | acpi_pci_link_get_current(link); | 734 | acpi_pci_link_get_current(link); |
735 | 735 | ||
736 | printk(PREFIX "%s [%s] (IRQs", acpi_device_name(device), | 736 | printk(KERN_INFO PREFIX "%s [%s] (IRQs", acpi_device_name(device), |
737 | acpi_device_bid(device)); | 737 | acpi_device_bid(device)); |
738 | for (i = 0; i < link->irq.possible_count; i++) { | 738 | for (i = 0; i < link->irq.possible_count; i++) { |
739 | if (link->irq.active == link->irq.possible[i]) { | 739 | if (link->irq.active == link->irq.possible[i]) { |
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index bb5d23be4260..a898991f77cb 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c | |||
@@ -490,7 +490,17 @@ static void acpi_processor_idle(void) | |||
490 | 490 | ||
491 | case ACPI_STATE_C3: | 491 | case ACPI_STATE_C3: |
492 | 492 | ||
493 | if (pr->flags.bm_check) { | 493 | /* |
494 | * disable bus master | ||
495 | * bm_check implies we need ARB_DIS | ||
496 | * !bm_check implies we need cache flush | ||
497 | * bm_control implies whether we can do ARB_DIS | ||
498 | * | ||
499 | * That leaves a case where bm_check is set and bm_control is | ||
500 | * not set. In that case we cannot do much, we enter C3 | ||
501 | * without doing anything. | ||
502 | */ | ||
503 | if (pr->flags.bm_check && pr->flags.bm_control) { | ||
494 | if (atomic_inc_return(&c3_cpu_count) == | 504 | if (atomic_inc_return(&c3_cpu_count) == |
495 | num_online_cpus()) { | 505 | num_online_cpus()) { |
496 | /* | 506 | /* |
@@ -499,7 +509,7 @@ static void acpi_processor_idle(void) | |||
499 | */ | 509 | */ |
500 | acpi_set_register(ACPI_BITREG_ARB_DISABLE, 1); | 510 | acpi_set_register(ACPI_BITREG_ARB_DISABLE, 1); |
501 | } | 511 | } |
502 | } else { | 512 | } else if (!pr->flags.bm_check) { |
503 | /* SMP with no shared cache... Invalidate cache */ | 513 | /* SMP with no shared cache... Invalidate cache */ |
504 | ACPI_FLUSH_CPU_CACHE(); | 514 | ACPI_FLUSH_CPU_CACHE(); |
505 | } | 515 | } |
@@ -511,7 +521,7 @@ static void acpi_processor_idle(void) | |||
511 | acpi_cstate_enter(cx); | 521 | acpi_cstate_enter(cx); |
512 | /* Get end time (ticks) */ | 522 | /* Get end time (ticks) */ |
513 | t2 = inl(acpi_gbl_FADT.xpm_timer_block.address); | 523 | t2 = inl(acpi_gbl_FADT.xpm_timer_block.address); |
514 | if (pr->flags.bm_check) { | 524 | if (pr->flags.bm_check && pr->flags.bm_control) { |
515 | /* Enable bus master arbitration */ | 525 | /* Enable bus master arbitration */ |
516 | atomic_dec(&c3_cpu_count); | 526 | atomic_dec(&c3_cpu_count); |
517 | acpi_set_register(ACPI_BITREG_ARB_DISABLE, 0); | 527 | acpi_set_register(ACPI_BITREG_ARB_DISABLE, 0); |
@@ -961,9 +971,9 @@ static void acpi_processor_power_verify_c3(struct acpi_processor *pr, | |||
961 | if (pr->flags.bm_check) { | 971 | if (pr->flags.bm_check) { |
962 | /* bus mastering control is necessary */ | 972 | /* bus mastering control is necessary */ |
963 | if (!pr->flags.bm_control) { | 973 | if (!pr->flags.bm_control) { |
974 | /* In this case we enter C3 without bus mastering */ | ||
964 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, | 975 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, |
965 | "C3 support requires bus mastering control\n")); | 976 | "C3 support without bus mastering control\n")); |
966 | return; | ||
967 | } | 977 | } |
968 | } else { | 978 | } else { |
969 | /* | 979 | /* |
diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c index 42127c0d612c..3279e72a94f8 100644 --- a/drivers/acpi/sleep/main.c +++ b/drivers/acpi/sleep/main.c | |||
@@ -210,11 +210,6 @@ static void acpi_hibernation_finish(void) | |||
210 | 210 | ||
211 | /* reset firmware waking vector */ | 211 | /* reset firmware waking vector */ |
212 | acpi_set_firmware_waking_vector((acpi_physical_address) 0); | 212 | acpi_set_firmware_waking_vector((acpi_physical_address) 0); |
213 | |||
214 | if (init_8259A_after_S1) { | ||
215 | printk("Broken toshiba laptop -> kicking interrupts\n"); | ||
216 | init_8259A(0); | ||
217 | } | ||
218 | } | 213 | } |
219 | 214 | ||
220 | static int acpi_hibernation_pre_restore(void) | 215 | static int acpi_hibernation_pre_restore(void) |
diff --git a/include/acpi/acmacros.h b/include/acpi/acmacros.h index c22f6da6d372..45662f6dbdb6 100644 --- a/include/acpi/acmacros.h +++ b/include/acpi/acmacros.h | |||
@@ -622,26 +622,26 @@ | |||
622 | #define ACPI_DEBUG_EXEC(a) | 622 | #define ACPI_DEBUG_EXEC(a) |
623 | #define ACPI_NORMAL_EXEC(a) a; | 623 | #define ACPI_NORMAL_EXEC(a) a; |
624 | 624 | ||
625 | #define ACPI_DEBUG_DEFINE(a) | 625 | #define ACPI_DEBUG_DEFINE(a) do { } while(0) |
626 | #define ACPI_DEBUG_ONLY_MEMBERS(a) | 626 | #define ACPI_DEBUG_ONLY_MEMBERS(a) do { } while(0) |
627 | #define ACPI_FUNCTION_NAME(a) | 627 | #define ACPI_FUNCTION_NAME(a) do { } while(0) |
628 | #define ACPI_FUNCTION_TRACE(a) | 628 | #define ACPI_FUNCTION_TRACE(a) do { } while(0) |
629 | #define ACPI_FUNCTION_TRACE_PTR(a,b) | 629 | #define ACPI_FUNCTION_TRACE_PTR(a,b) do { } while(0) |
630 | #define ACPI_FUNCTION_TRACE_U32(a,b) | 630 | #define ACPI_FUNCTION_TRACE_U32(a,b) do { } while(0) |
631 | #define ACPI_FUNCTION_TRACE_STR(a,b) | 631 | #define ACPI_FUNCTION_TRACE_STR(a,b) do { } while(0) |
632 | #define ACPI_FUNCTION_EXIT | 632 | #define ACPI_FUNCTION_EXIT do { } while(0) |
633 | #define ACPI_FUNCTION_STATUS_EXIT(s) | 633 | #define ACPI_FUNCTION_STATUS_EXIT(s) do { } while(0) |
634 | #define ACPI_FUNCTION_VALUE_EXIT(s) | 634 | #define ACPI_FUNCTION_VALUE_EXIT(s) do { } while(0) |
635 | #define ACPI_FUNCTION_ENTRY() | 635 | #define ACPI_FUNCTION_ENTRY() do { } while(0) |
636 | #define ACPI_DUMP_STACK_ENTRY(a) | 636 | #define ACPI_DUMP_STACK_ENTRY(a) do { } while(0) |
637 | #define ACPI_DUMP_OPERANDS(a,b,c,d,e) | 637 | #define ACPI_DUMP_OPERANDS(a,b,c,d,e) do { } while(0) |
638 | #define ACPI_DUMP_ENTRY(a,b) | 638 | #define ACPI_DUMP_ENTRY(a,b) do { } while(0) |
639 | #define ACPI_DUMP_TABLES(a,b) | 639 | #define ACPI_DUMP_TABLES(a,b) do { } while(0) |
640 | #define ACPI_DUMP_PATHNAME(a,b,c,d) | 640 | #define ACPI_DUMP_PATHNAME(a,b,c,d) do { } while(0) |
641 | #define ACPI_DUMP_RESOURCE_LIST(a) | 641 | #define ACPI_DUMP_RESOURCE_LIST(a) do { } while(0) |
642 | #define ACPI_DUMP_BUFFER(a,b) | 642 | #define ACPI_DUMP_BUFFER(a,b) do { } while(0) |
643 | #define ACPI_DEBUG_PRINT(pl) | 643 | #define ACPI_DEBUG_PRINT(pl) do { } while(0) |
644 | #define ACPI_DEBUG_PRINT_RAW(pl) | 644 | #define ACPI_DEBUG_PRINT_RAW(pl) do { } while(0) |
645 | 645 | ||
646 | #define return_VOID return | 646 | #define return_VOID return |
647 | #define return_ACPI_STATUS(s) return(s) | 647 | #define return_ACPI_STATUS(s) return(s) |