From: Adrian Bunk <bunk@stusta.de>

Remove S4BIOS support.  It is pretty useless, and only ever worked for _me_
once.  (I do not think anyone else ever tried it).  It was in feature-removal
for a long time, and it should have been removed before.

From: Pavel Machek <pavel@suse.cz>
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 Documentation/feature-removal-schedule.txt |    7 -------
 arch/i386/kernel/acpi/wakeup.S             |    6 ------
 drivers/acpi/sleep/main.c                  |    8 --------
 drivers/acpi/sleep/poweroff.c              |    4 +---
 drivers/acpi/sleep/proc.c                  |    2 --
 5 files changed, 1 insertion(+), 26 deletions(-)

diff -puN arch/i386/kernel/acpi/wakeup.S~remove-acpi-s4bios-support arch/i386/kernel/acpi/wakeup.S
--- devel/arch/i386/kernel/acpi/wakeup.S~remove-acpi-s4bios-support	2005-09-01 19:14:12.000000000 -0700
+++ devel-akpm/arch/i386/kernel/acpi/wakeup.S	2005-09-01 19:14:12.000000000 -0700
@@ -304,12 +304,6 @@ ret_point:
 	call	restore_processor_state
 	ret
 
-ENTRY(do_suspend_lowlevel_s4bios)
-	call save_processor_state
-	call save_registers
-	call acpi_enter_sleep_state_s4bios
-	ret
-
 ALIGN
 # saved registers
 saved_gdt:	.long	0,0
diff -puN Documentation/feature-removal-schedule.txt~remove-acpi-s4bios-support Documentation/feature-removal-schedule.txt
--- devel/Documentation/feature-removal-schedule.txt~remove-acpi-s4bios-support	2005-09-01 19:14:12.000000000 -0700
+++ devel-akpm/Documentation/feature-removal-schedule.txt	2005-09-01 19:14:12.000000000 -0700
@@ -17,14 +17,6 @@ Who:	Greg Kroah-Hartman <greg@kroah.com>
 
 ---------------------------
 
-What:	ACPI S4bios support
-When:	May 2005
-Why:	Noone uses it, and it probably does not work, anyway. swsusp is
-	faster, more reliable, and people are actually using it.
-Who:	Pavel Machek <pavel@suse.cz>
-
----------------------------
-
 What:	io_remap_page_range() (macro or function)
 When:	September 2005
 Why:	Replaced by io_remap_pfn_range() which allows more memory space
diff -puN drivers/acpi/sleep/main.c~remove-acpi-s4bios-support drivers/acpi/sleep/main.c
--- devel/drivers/acpi/sleep/main.c~remove-acpi-s4bios-support	2005-09-01 19:14:12.000000000 -0700
+++ devel-akpm/drivers/acpi/sleep/main.c	2005-09-01 19:14:12.000000000 -0700
@@ -23,7 +23,6 @@ u8 sleep_states[ACPI_S_STATE_COUNT];
 
 static struct pm_ops acpi_pm_ops;
 
-extern void do_suspend_lowlevel_s4bios(void);
 extern void do_suspend_lowlevel(void);
 
 static u32 acpi_suspend_states[] = {
@@ -98,8 +97,6 @@ static int acpi_pm_enter(suspend_state_t
 	case PM_SUSPEND_DISK:
 		if (acpi_pm_ops.pm_disk_mode == PM_DISK_PLATFORM)
 			status = acpi_enter_sleep_state(acpi_state);
-		else
-			do_suspend_lowlevel_s4bios();
 		break;
 	case PM_SUSPEND_MAX:
 		acpi_power_off();
@@ -206,11 +203,6 @@ static int __init acpi_sleep_init(void)
 			printk(" S%d", i);
 		}
 		if (i == ACPI_STATE_S4) {
-			if (acpi_gbl_FACS->S4bios_f) {
-				sleep_states[i] = 1;
-				printk(" S4bios");
-				acpi_pm_ops.pm_disk_mode = PM_DISK_FIRMWARE;
-			}
 			if (sleep_states[i])
 				acpi_pm_ops.pm_disk_mode = PM_DISK_PLATFORM;
 		}
diff -puN drivers/acpi/sleep/poweroff.c~remove-acpi-s4bios-support drivers/acpi/sleep/poweroff.c
--- devel/drivers/acpi/sleep/poweroff.c~remove-acpi-s4bios-support	2005-09-01 19:14:12.000000000 -0700
+++ devel-akpm/drivers/acpi/sleep/poweroff.c	2005-09-01 19:14:12.000000000 -0700
@@ -21,9 +21,7 @@ int acpi_sleep_prepare(u32 acpi_state)
 {
 #ifdef CONFIG_ACPI_SLEEP
 	/* do we have a wakeup address for S2 and S3? */
-	/* Here, we support only S4BIOS, those we set the wakeup address */
-	/* S4OS is only supported for now via swsusp.. */
-	if (acpi_state == ACPI_STATE_S3 || acpi_state == ACPI_STATE_S4) {
+	if (acpi_state == ACPI_STATE_S3) {
 		if (!acpi_wakeup_address) {
 			return -EFAULT;
 		}
diff -puN drivers/acpi/sleep/proc.c~remove-acpi-s4bios-support drivers/acpi/sleep/proc.c
--- devel/drivers/acpi/sleep/proc.c~remove-acpi-s4bios-support	2005-09-01 19:14:12.000000000 -0700
+++ devel-akpm/drivers/acpi/sleep/proc.c	2005-09-01 19:14:12.000000000 -0700
@@ -25,8 +25,6 @@ static int acpi_system_sleep_seq_show(st
 	for (i = 0; i <= ACPI_STATE_S5; i++) {
 		if (sleep_states[i]) {
 			seq_printf(seq, "S%d ", i);
-			if (i == ACPI_STATE_S4 && acpi_gbl_FACS->S4bios_f)
-				seq_printf(seq, "S4bios ");
 		}
 	}
 
_