public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] s4bios for 2.5.59 + apci-20030123
@ 2003-01-31 17:39 Ducrot Bruno
       [not found] ` <20030131173904.GA3240-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Ducrot Bruno @ 2003-01-31 17:39 UTC (permalink / raw)
  To: Grover, Andrew
  Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	ducrot-kk6yZipjEM5g9hUCZPvPmw

Hi Andy,

This patch is for s4bios support in 2.5.59 with acpi-20030123.

This is the 'minimal' requirement.  Some devices (especially the
IDE part) are not well resumed.  Handle with care..

Note also that the resuming part (I mean IDE) was more stable
with an equivalent patch when I tested with 2.5.54 (grumble grumble)...

I think also that it is a 'good' checker for devices power management
in general...




 arch/i386/kernel/acpi_wakeup.S  |   35 ++++++++++++++++++++++++++-----
 drivers/acpi/acpi_ksyms.c       |    1 
 drivers/acpi/hardware/hwsleep.c |   45 ++++++++++++++++++++++++++++++++++++++++
 drivers/acpi/sleep.c            |   39 ++++++++++++++++++++++++++++++----
 include/acpi/acpixf.h           |    4 +++
 include/linux/suspend.h         |    1 
 6 files changed, 115 insertions(+), 10 deletions(-)


--- linux-2.5.59-acpi-20030123/arch/i386/kernel/acpi_wakeup.S	2003/01/31 15:37:05	1.1
+++ linux-2.5.59-acpi-20030123/arch/i386/kernel/acpi_wakeup.S	2003/01/31 16:33:25
@@ -160,9 +160,9 @@
 	ALIGN
 
 
-.org	0x2000
+.org	0x800
 wakeup_stack:
-.org	0x3000
+.org	0x900
 ENTRY(wakeup_end)
 .org	0x4000
 
@@ -274,7 +274,7 @@
 
 ENTRY(do_suspend_lowlevel)
 	cmpl $0,4(%esp)
-	jne .L1432
+	jne ret_point
 	call save_processor_state
 
 	movl %esp, saved_context_esp
@@ -287,7 +287,7 @@
 	movl %edi, saved_context_edi
 	pushfl ; popl saved_context_eflags
 
-	movl $.L1432,saved_eip
+	movl $ret_point,saved_eip
 	movl %esp,saved_esp
 	movl %ebp,saved_ebp
 	movl %ebx,saved_ebx
@@ -299,7 +299,7 @@
 	addl $4,%esp
 	ret
 	.p2align 4,,7
-.L1432:
+ret_point:
 	movl $__KERNEL_DS,%eax
 	movw %ax, %ds
 	movl saved_context_esp, %esp
@@ -312,6 +312,31 @@
 	movl saved_context_edi, %edi
 	call restore_processor_state
 	pushl saved_context_eflags ; popfl
+	ret
+
+ENTRY(do_suspend_lowlevel_s4bios)
+	cmpl $0,4(%esp)
+	jne ret_point
+	call save_processor_state
+
+	movl %esp, saved_context_esp
+	movl %eax, saved_context_eax
+	movl %ebx, saved_context_ebx
+	movl %ecx, saved_context_ecx
+	movl %edx, saved_context_edx
+	movl %ebp, saved_context_ebp
+	movl %esi, saved_context_esi
+	movl %edi, saved_context_edi
+	pushfl ; popl saved_context_eflags
+
+	movl $ret_point,saved_eip
+	movl %esp,saved_esp
+	movl %ebp,saved_ebp
+	movl %ebx,saved_ebx
+	movl %edi,saved_edi
+	movl %esi,saved_esi
+
+	call acpi_enter_sleep_state_s4bios
 	ret
 
 ALIGN
--- linux-2.5.59-acpi-20030123/drivers/acpi/hardware/hwsleep.c	2003/01/31 15:37:10	1.1
+++ linux-2.5.59-acpi-20030123/drivers/acpi/hardware/hwsleep.c	2003/01/31 16:37:27
@@ -316,6 +316,51 @@
 	return_ACPI_STATUS (AE_OK);
 }
 
+
+/******************************************************************************
+ *
+ * FUNCTION:    acpi_enter_sleep_state_s4bios
+ *
+ * PARAMETERS:  None
+ *
+ * RETURN:      Status
+ *
+ * DESCRIPTION: Perform a s4 bios request.
+ *              THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED
+ *
+ ******************************************************************************/
+
+acpi_status
+acpi_enter_sleep_state_s4bios (
+	void)
+{
+	u32                     in_value;
+	acpi_status             status;
+
+
+	ACPI_FUNCTION_TRACE ("Acpi_enter_sleep_state_s4bios");
+
+	acpi_set_register (ACPI_BITREG_WAKE_STATUS, 1, ACPI_MTX_LOCK);
+	acpi_hw_clear_acpi_status();
+
+	acpi_hw_disable_non_wakeup_gpes();
+
+	ACPI_FLUSH_CPU_CACHE();
+
+	status = acpi_os_write_port (acpi_gbl_FADT->smi_cmd, (acpi_integer) acpi_gbl_FADT->S4bios_req, 8);
+
+	do {
+		acpi_os_stall(1000);
+		status = acpi_get_register (ACPI_BITREG_WAKE_STATUS, &in_value, ACPI_MTX_LOCK);
+		if (ACPI_FAILURE (status)) {
+			return_ACPI_STATUS (status);
+		}
+	} while (!in_value);
+ 
+ 	return_ACPI_STATUS (AE_OK);
+ }
+ 
+
 /******************************************************************************
  *
  * FUNCTION:    acpi_leave_sleep_state
--- linux-2.5.59-acpi-20030123/drivers/acpi/sleep.c	2003/01/31 15:37:19	1.1
+++ linux-2.5.59-acpi-20030123/drivers/acpi/sleep.c	2003/01/31 16:29:13
@@ -150,8 +150,10 @@
 		if (state > ACPI_STATE_S1) {
 			error = acpi_save_state_mem();
 
+#if 0
 			if (!error && (state == ACPI_STATE_S4))
 				error = acpi_save_state_disk();
+#endif
 
 			if (error) {
 				device_resume(RESUME_RESTORE_STATE);
@@ -223,11 +225,17 @@
 		status = acpi_enter_sleep_state(state);
 		break;
 
-	case ACPI_STATE_S2:
 #ifdef CONFIG_SOFTWARE_SUSPEND
+	case ACPI_STATE_S2:
 	case ACPI_STATE_S3:
 		do_suspend_lowlevel(0);
+		break;
 #endif
+	case ACPI_STATE_S4:
+		do_suspend_lowlevel_s4bios(0);
+		break;
+	default:
+		printk(KERN_WARNING PREFIX "don't know how to handle %d state.\n", state);
 		break;
 	}
 	local_irq_restore(flags);
@@ -251,10 +259,20 @@
 	if (state < ACPI_STATE_S1 || state > ACPI_STATE_S5)
 		return AE_ERROR;
 
+	/* Since we handle S4OS via a different path (swsusp), give up if no s4bios. */
+	if (state == ACPI_STATE_S4 && !acpi_gbl_FACS->S4bios_f)
+		return AE_ERROR;
+
+	/*
+	 * TBD: S1 can be done without device_suspend.  Make a CONFIG_XX
+	 * to handle however when S1 failed without device_suspend.
+	 */
 	freeze_processes();		/* device_suspend needs processes to be stopped */
 
 	/* do we have a wakeup address for S2 and S3? */
-	if (state == ACPI_STATE_S2 || state == ACPI_STATE_S3) {
+	/* Here, we support only S4BIOS, those we set the wakeup address */
+	/* S4OS is only supported for now via swsusp.. */
+	if (state == ACPI_STATE_S2 || state == ACPI_STATE_S3 || ACPI_STATE_S4) {
 		if (!acpi_wakeup_address)
 			return AE_ERROR;
 		acpi_set_firmware_waking_vector((acpi_physical_address) acpi_wakeup_address);
@@ -297,8 +315,11 @@
 	ACPI_FUNCTION_TRACE("acpi_system_sleep_seq_show");
 
 	for (i = 0; i <= ACPI_STATE_S5; i++) {
-		if (sleep_states[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 ");
+		}
 	}
 
 	seq_puts(seq, "\n");
@@ -337,12 +358,16 @@
 	if (!sleep_states[state])
 		return_VALUE(-ENODEV);
 
+	if (state == 4 && state_string[1] != 'b') {
 #ifdef CONFIG_SOFTWARE_SUSPEND
-	if (state == 4) {
 		software_suspend();
 		return_VALUE(count);
-	}
+#else
+		printk(KERN_WARNING PREFIX "no swsusp support!?\n");
+		printk(KERN_WARNING PREFIX "Trying S4bios instead\n");
 #endif
+	}
+
 	status = acpi_suspend(state);
 
 	if (ACPI_FAILURE(status))
@@ -661,6 +686,10 @@
 		if (ACPI_SUCCESS(status)) {
 			sleep_states[i] = 1;
 			printk(" S%d", i);
+		}
+		if (i == ACPI_STATE_S4 && acpi_gbl_FACS->S4bios_f) {
+			sleep_states[i] = 1;
+			printk(" S4bios");
 		}
 	}
 	printk(")\n");
--- linux-2.5.59-acpi-20030123/drivers/acpi/acpi_ksyms.c	2003/01/31 15:37:21	1.1
+++ linux-2.5.59-acpi-20030123/drivers/acpi/acpi_ksyms.c	2003/01/31 16:29:39
@@ -86,6 +86,7 @@
 EXPORT_SYMBOL(acpi_get_register);
 EXPORT_SYMBOL(acpi_set_register);
 EXPORT_SYMBOL(acpi_enter_sleep_state);
+EXPORT_SYMBOL(acpi_enter_sleep_state_s4bios);
 EXPORT_SYMBOL(acpi_get_system_info);
 EXPORT_SYMBOL(acpi_get_devices);
 
--- linux-2.5.59-acpi-20030123/include/acpi/acpixf.h	2003/01/31 15:38:22	1.1
+++ linux-2.5.59-acpi-20030123/include/acpi/acpixf.h	2003/01/31 16:31:57
@@ -380,6 +380,10 @@
 	u8                              sleep_state);
 
 acpi_status
+acpi_enter_sleep_state_s4bios (
+	void);
+
+acpi_status
 acpi_leave_sleep_state (
 	u8                              sleep_state);
 
--- linux-2.5.59-acpi-20030123/include/linux/suspend.h	2003/01/31 15:37:22	1.1
+++ linux-2.5.59-acpi-20030123/include/linux/suspend.h	2003/01/31 16:30:28
@@ -73,6 +73,7 @@
 /* Communication between acpi and arch/i386/suspend.c */
 
 extern void do_suspend_lowlevel(int resume);
+extern void do_suspend_lowlevel_s4bios(int resume);
 
 #else
 static inline void software_suspend(void)




Cheers,

-- 
Ducrot Bruno
http://www.poupinou.org        Page profaissionelle
http://toto.tu-me-saoules.com  Haume page

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH] s4bios for 2.5.59 + apci-20030123
@ 2003-02-04  1:25 Grover, Andrew
       [not found] ` <F760B14C9561B941B89469F59BA3A847137FFE-sBd4vmA9Se4Lll3ZsUKC9FDQ4js95KgL@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Grover, Andrew @ 2003-02-04  1:25 UTC (permalink / raw)
  To: ducrot-kk6yZipjEM5g9hUCZPvPmw
  Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

> From: Ducrot Bruno [mailto:poup-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org] 
> This patch is for s4bios support in 2.5.59 with acpi-20030123.
> 
> This is the 'minimal' requirement.  Some devices (especially the
> IDE part) are not well resumed.  Handle with care..
> 
> Note also that the resuming part (I mean IDE) was more stable
> with an equivalent patch when I tested with 2.5.54 (grumble 
> grumble)...
> 
> I think also that it is a 'good' checker for devices power management
> in general...

I'd really rather just have S4OS (aka swsusp) in 2.5 patches -- if the
OS can do S4 on its own, that is really preferable to S4bios.

Regards -- Andy

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] s4bios for 2.5.59 + apci-20030123
       [not found] ` <F760B14C9561B941B89469F59BA3A847137FFE-sBd4vmA9Se4Lll3ZsUKC9FDQ4js95KgL@public.gmane.org>
@ 2003-02-04 22:10   ` Pavel Machek
  0 siblings, 0 replies; 7+ messages in thread
From: Pavel Machek @ 2003-02-04 22:10 UTC (permalink / raw)
  To: Grover, Andrew
  Cc: ducrot-kk6yZipjEM5g9hUCZPvPmw,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Hi!

> > This patch is for s4bios support in 2.5.59 with acpi-20030123.
> > 
> > This is the 'minimal' requirement.  Some devices (especially the
> > IDE part) are not well resumed.  Handle with care..
> > 
> > Note also that the resuming part (I mean IDE) was more stable
> > with an equivalent patch when I tested with 2.5.54 (grumble 
> > grumble)...
> > 
> > I think also that it is a 'good' checker for devices power management
> > in general...
> 
> I'd really rather just have S4OS (aka swsusp) in 2.5 patches -- if the
> OS can do S4 on its own, that is really preferable to S4bios.

Well, we already have S4OS, and having S4OS does not mean we can't
have S4bios.

Some people apparently want slower suspend/resume but have all caches
intact when resumed. Thats not easy for swsusp but they can have that
with S4bios. And S4bios is usefull for testing device support; it
seems to behave slightly differently to S3 meaning better testing.

If you already have hibernation partition from factory, which you are
using anyway for w98, S4bios is easier to use and more foolproof
(i.e. you can't boot into wrong kernel which does not resume but does
fsck instead).

								Pavel
-- 
Worst form of spam? Adding advertisment signatures ala sourceforge.net.
What goes next? Inserting advertisment *into* email?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] s4bios for 2.5.59 + apci-20030123
       [not found] ` <20030131173904.GA3240-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
@ 2003-02-05  1:40   ` Matthew Garrett
       [not found]     ` <20030205014041.GA27937-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Matthew Garrett @ 2003-02-05  1:40 UTC (permalink / raw)
  To: ducrot-kk6yZipjEM5g9hUCZPvPmw; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

On Fri, Jan 31, 2003 at 06:39:04PM +0100, Ducrot Bruno wrote:

Hi Ducrot,

> This is the 'minimal' requirement.  Some devices (especially the
> IDE part) are not well resumed.  Handle with care..

Using this patch (on top of 2.5.59 and acpi 20030123), echo 4b 
>/proc/acpi/sleep results in the system freezing all of the processes 
and then resetting itself without any state change. This is an IBM 
Thinkpad 240x which claims to support S4Bios, and I have the appropriate 
partition. Would it be worth me enabling debugging and hooking up a 
serial console?

Thanks,
-- 
Matthew Garrett | mjg59-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org


-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] s4bios for 2.5.59 + apci-20030123
       [not found]     ` <20030205014041.GA27937-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
@ 2003-02-06 20:56       ` Ducrot Bruno
       [not found]         ` <20030206205608.GV1205-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
  2003-02-07 10:54       ` Pavel Machek
  1 sibling, 1 reply; 7+ messages in thread
From: Ducrot Bruno @ 2003-02-06 20:56 UTC (permalink / raw)
  To: Matthew Garrett
  Cc: ducrot-kk6yZipjEM5g9hUCZPvPmw,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

On Wed, Feb 05, 2003 at 01:40:41AM +0000, Matthew Garrett wrote:
> On Fri, Jan 31, 2003 at 06:39:04PM +0100, Ducrot Bruno wrote:
> 
> Hi Ducrot,
> 
> > This is the 'minimal' requirement.  Some devices (especially the
> > IDE part) are not well resumed.  Handle with care..
> 
> Using this patch (on top of 2.5.59 and acpi 20030123), echo 4b 
> >/proc/acpi/sleep results in the system freezing all of the processes 
> and then resetting itself without any state change. This is an IBM 
> Thinkpad 240x which claims to support S4Bios, and I have the appropriate 
> partition. Would it be worth me enabling debugging and hooking up a 
> serial console?
> 

Strange.  What say dmesg?

-- 
Ducrot Bruno

--  Which is worse:  ignorance or apathy?
--  Don't know.  Don't care.


-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] s4bios for 2.5.59 + apci-20030123
       [not found]         ` <20030206205608.GV1205-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
@ 2003-02-06 22:36           ` Matthew Garrett
  0 siblings, 0 replies; 7+ messages in thread
From: Matthew Garrett @ 2003-02-06 22:36 UTC (permalink / raw)
  To: Ducrot Bruno; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

[-- Attachment #1: Type: text/plain, Size: 1063 bytes --]

On Thu, Feb 06, 2003 at 09:56:08PM +0100, Ducrot Bruno wrote:
> On Wed, Feb 05, 2003 at 01:40:41AM +0000, Matthew Garrett wrote:
> > Using this patch (on top of 2.5.59 and acpi 20030123), echo 4b 
> > >/proc/acpi/sleep results in the system freezing all of the processes 
> > and then resetting itself without any state change. This is an IBM 
> > Thinkpad 240x which claims to support S4Bios, and I have the appropriate 
> > partition. Would it be worth me enabling debugging and hooking up a 
> > serial console?
> > 
> 
> Strange.  What say dmesg?

Included dmesg is what I have after boot. FWIW, suspend to disk "works" 
under APM (system suspends, restores, dies due to failing to deal with 
IDE interrupts). There is a newer BIOS available that claims to fix some 
issues with ACPI on Windows XP, which I can try if you think it'd be 
worth it. I've no kernel output of a suspend attempt because the machine 
reboots itself immediately, but I can hook up a serial console if you'd 
like.

-- 
Matthew Garrett | mjg59-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org

[-- Attachment #2: dmesg --]
[-- Type: text/plain, Size: 9584 bytes --]

Linux version 2.5.59 (root@asparagine) (gcc version 3.2.2 20030129 (Debian prerelease)) #2 Wed Feb 5 01:52:04 GMT 2003
Video mode to be used for restore is f00
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
 BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 000000000bff0000 (usable)
 BIOS-e820: 000000000bff0000 - 000000000bfffc00 (ACPI data)
 BIOS-e820: 000000000bfffc00 - 000000000c000000 (ACPI NVS)
 BIOS-e820: 00000000fff80000 - 0000000100000000 (reserved)
191MB LOWMEM available.
ACPI: have wakeup address 0xc0001000
On node 0 totalpages: 49136
  DMA zone: 4096 pages, LIFO batch:1
  Normal zone: 45040 pages, LIFO batch:10
  HighMem zone: 0 pages, LIFO batch:1
ACPI: RSDP (v000 PTLTD                      ) @ 0x000f6c80
ACPI: RSDT (v001 PTLTD    RSDT   01540.00000) @ 0x0bffc972
ACPI: FADT (v001 IBM    TP240    01540.00000) @ 0x0bfffb65
ACPI: BOOT (v001 PTLTD  $SBFTBL$ 01540.00000) @ 0x0bfffbd9
ACPI: DSDT (v001    PTL    BX-TJ 01540.00000) @ 0x00000000
ACPI: BIOS passes blacklist
IBM machine detected. Enabling interrupts during APM calls.
IBM machine detected. Disabling SMBus accesses.
Building zonelist for node : 0
Kernel command line: auto BOOT_IMAGE=Linux ro root=306 video=vesa resume=/dev/hda5 reboot=w
Initializing CPU#0
PID hash table entries: 1024 (order 10: 8192 bytes)
Detected 497.735 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 985.08 BogoMIPS
Memory: 190788k/196544k available (2134k kernel code, 5120k reserved, 659k data, 128k init, 0k highmem)
Security Scaffold v1.0.0 initialized
Dentry cache hash table entries: 32768 (order: 6, 262144 bytes)
Inode-cache hash table entries: 16384 (order: 5, 131072 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
-> /dev
-> /dev/console
-> /root
CPU: L1 I cache: 16K, L1 D cache: 16K
CPU: L2 cache: 256K
CPU:     After generic, caps: 0383f9ff 00000000 00000000 00000000
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU: Intel Pentium III (Coppermine) stepping 06
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
mtrr: v2.0 (20020519)
EISA bus registered
EISA: Probing bus...
EISA: Detected 0 card.
PCI: PCI BIOS revision 2.10 entry at 0xfd9df, last bus=0
PCI: Using configuration type 1
BIO: pool of 256 setup, 14Kb (56 bytes/bio)
biovec pool[0]:   1 bvecs: 256 entries (12 bytes)
biovec pool[1]:   4 bvecs: 256 entries (48 bytes)
biovec pool[2]:  16 bvecs: 256 entries (192 bytes)
biovec pool[3]:  64 bvecs: 256 entries (768 bytes)
biovec pool[4]: 128 bvecs: 256 entries (1536 bytes)
biovec pool[5]: 256 bvecs: 256 entries (3072 bytes)
ACPI: Subsystem revision 20030122
    ACPI-0262: *** Info: GPE Block0 defined as GPE0 to GPE15
    ACPI-0262: *** Info: GPE Block1 defined as GPE16 to GPE31
ACPI: Interpreter enabled
ACPI: Using PIC for interrupt routing
ACPI: (supports S0 S1 S3 S4 S4bios S5)
ACPI: PCI Root Bridge [PCI0] (00:00)
PCI: Probing PCI hardware (bus 00)
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 10 11 14 15, disabled)
ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 10 *11 14 15)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 *5 6 7 10 11 14 15)
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 6 7 9 10 *11 14 15)
ACPI: Embedded Controller [EC0] (gpe 25)
ACPI: Power Resource [PCR0] (off)
ACPI: Power Resource [PFAN] (off)
Linux Plug and Play Support v0.94 (c) Adam Belay
pnp: Enabling Plug and Play Card Services.
PnPBIOS: Found PnP BIOS installation structure at 0xc00f6d20
PnPBIOS: PnP BIOS version 1.0, entry 0xf0000:0xac81, dseg 0x400
PnPBIOS: 19 nodes reported by PnP BIOS; 19 recorded by driver
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
block request queues:
 128 requests per read queue
 128 requests per write queue
 8 requests per batch
 enter congestion at 15
 exit congestion at 17
drivers/usb/core/usb.c: registered new driver usbfs
drivers/usb/core/usb.c: registered new driver hub
ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 10
ACPI: No IRQ known for interrupt pin A of device 00:09.0 - using IRQ 255
PCI: Using ACPI for IRQ routing
PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off'
SBF: ACPI BOOT descriptor is wrong length (39)
SBF: Simple Boot Flag extension found and enabled.
SBF: Setting boot flags 0x1
IA-32 Microcode Update Driver: v1.11 <tigran-DTz5qymZ9yRBDgjK7y7TUQ@public.gmane.org>
Enabling SEP on CPU 0
aio_setup: sizeof(struct page) = 40
Journalled Block Device driver loaded
devfs: v1.22 (20021013) Richard Gooch (rgooch-r1x6VkxMR+00zabcByZE4g@public.gmane.org)
devfs: boot_options: 0x0
Capability LSM initialized
Initializing Cryptographic API
ACPI: AC Adapter [ACAD] (on-line)
ACPI: Battery Slot [BAT1] (battery present)
ACPI: Power Button (FF) [PWRF]
ACPI: Sleep Button (CM) [SBTN]
ACPI: Lid Switch [LID]
ACPI: Fan [FAN] (off)
ACPI: Processor [CPU0] (supports C1 C2 C3, 8 throttling states)
ACPI: Thermal Zone [THRM] (31 C)
Serial: 8250/16550 driver $Revision: 1.90 $ IRQ sharing enabled
tts/0 at I/O 0x3f8 (irq = 4) is a 16550A
tts/1 at I/O 0x2f8 (irq = 3) is a 16550A
Floppy drive(s): fd0 is 1.44M
FDC 0 is a National Semiconductor PC87306
loop: loaded (max 8 devices)
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX4: IDE controller at PCI slot 00:07.1
PIIX4: chipset revision 0
PIIX4: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0x1420-0x1427, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x1428-0x142f, BIOS settings: hdc:pio, hdd:pio
hda: IBM-DARA-212000, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: host protected area => 1
hda: 23579136 sectors (12073 MB) w/418KiB Cache, CHS=23392/16/63, UDMA(33)
 /dev/ide/host0/bus0/target0/lun0: p1 p2 p3 < p5 p6 p7 >
Linux Kernel Card Services 3.1.22
  options:  [pci] [cardbus] [pm]
mice: PS/2 mouse device common for all mice
input: PC Speaker
input: PS/2 Generic Mouse on isa0060/serio1
serio: i8042 AUX port at 0x60,0x64 irq 12
input: AT Set 2 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
Advanced Linux Sound Architecture Driver Version 0.9.0rc6 (Tue Dec 17 19:01:13 2002 UTC).
request_module[snd-card-0]: not ready
request_module[snd-card-1]: not ready
request_module[snd-card-2]: not ready
request_module[snd-card-3]: not ready
request_module[snd-card-4]: not ready
request_module[snd-card-5]: not ready
request_module[snd-card-6]: not ready
request_module[snd-card-7]: not ready
ALSA device list:
  No soundcards found.
NET4: Linux TCP/IP 1.0 for NET4.0
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 16384 bind 32768)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
BIOS EDD facility v0.07 2002-Oct-24, 1 devices found
Yenta IRQ list 0098, PCI irq11
Socket status: 30000010
Resume Machine: resuming from /dev/hda5
Resuming from device ide0(3,5)
Resume Machine: This is normal swap space
EXT3-fs: INFO: recovery required on readonly filesystem.
EXT3-fs: write access will be enabled during recovery.
kjournald starting.  Commit interval 5 seconds
EXT3-fs: ide0(3,6): orphan cleanup on readonly fs
ext3_orphan_cleanup: deleting unreferenced inode 179955
EXT3-fs: ide0(3,6): 1 orphan inode deleted
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 128k freed
Adding 409616k swap on /dev/hda5.  Priority:-1 extents:1
EXT3 FS 2.4-0.9.16, 02 Dec 2001 on ide0(3,6), internal journal
Real Time Clock Driver v1.11
warning: process `update' used the obsolete bdflush system call
Fix your initscripts?
cs4281: version v1.13.32 time 01:56:51 Feb  5 2003
drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface driver v2.0
uhci-hcd 00:07.2: Intel Corp. 82440MX USB Universa
uhci-hcd 00:07.2: irq 11, io base 00001400
Please use the 'usbfs' filetype instead, the 'usbdevfs' name is deprecated.
uhci-hcd 00:07.2: new USB bus registered, assigned bus number 1
hub 1-0:0: USB hub found
hub 1-0:0: 2 ports detected
ttyS2: LSR safety check engaged!
ttyS2: LSR safety check engaged!
cs: IO port probe 0x0c00-0x0cff: clean.
cs: IO port probe 0x0800-0x08ff: clean.
cs: IO port probe 0x0100-0x04ff: excluding 0x398-0x39f 0x3b8-0x3df 0x4d0-0x4d7
cs: IO port probe 0x0a00-0x0aff: clean.
cs: memory probe 0xa0000000-0xa0ffffff: clean.
hermes.c: 4 Jul 2002 David Gibson <hermes-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org>
orinoco.c 0.13a (David Gibson <hermes-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org> and others)
orinoco_cs.c 0.13a (David Gibson <hermes-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org> and others)
eth0: Station identity 001f:0004:0001:0003
eth0: Looks like an Intersil firmware version 1.3.4
eth0: Ad-hoc demo mode supported
eth0: IEEE standard IBSS ad-hoc mode supported
eth0: WEP supported, 104-bit key
eth0: MAC address 00:60:B3:68:A4:47
eth0: Station name "Prism  I"
eth0: ready
eth0: index 0x01: Vcc 5.0, irq 3, io 0x0100-0x013f
eth0: New link status: Connected (0001)
Module cs4281 cannot be unloaded due to unsafe usage in include/linux/module.h:430

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] s4bios for 2.5.59 + apci-20030123
       [not found]     ` <20030205014041.GA27937-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
  2003-02-06 20:56       ` Ducrot Bruno
@ 2003-02-07 10:54       ` Pavel Machek
  1 sibling, 0 replies; 7+ messages in thread
From: Pavel Machek @ 2003-02-07 10:54 UTC (permalink / raw)
  To: Matthew Garrett
  Cc: ducrot-kk6yZipjEM5g9hUCZPvPmw,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Hi!

> Hi Ducrot,
> 
> > This is the 'minimal' requirement.  Some devices (especially the
> > IDE part) are not well resumed.  Handle with care..

Good news: works for me. Either I have to disable vesafb *or* pass
acpi_sleep=s3_mode, but it works (2.5.59 on hp omnibook xe3).

There are some glitches, through. Sometimes it takes > 10 seconds
before the BIOS's progress bars shown (and I have powered down at
this point thinking machine is dead). And once it did save to disk but
did not power down after that.

> Using this patch (on top of 2.5.59 and acpi 20030123), echo 4b 
> >/proc/acpi/sleep results in the system freezing all of the processes 
> and then resetting itself without any state change. This is an IBM 
> Thinkpad 240x which claims to support S4Bios, and I have the appropriate 
> partition. Would it be worth me enabling debugging and hooking up a 
> serial console?

Yes, plus you might want to add some printks to see where exactly it
dies.

								Pavel
-- 
Worst form of spam? Adding advertisment signatures ala sourceforge.net.
What goes next? Inserting advertisment *into* email?


-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2003-02-07 10:54 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-01-31 17:39 [PATCH] s4bios for 2.5.59 + apci-20030123 Ducrot Bruno
     [not found] ` <20030131173904.GA3240-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-05  1:40   ` Matthew Garrett
     [not found]     ` <20030205014041.GA27937-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>
2003-02-06 20:56       ` Ducrot Bruno
     [not found]         ` <20030206205608.GV1205-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-06 22:36           ` Matthew Garrett
2003-02-07 10:54       ` Pavel Machek
  -- strict thread matches above, loose matches on Subject: below --
2003-02-04  1:25 Grover, Andrew
     [not found] ` <F760B14C9561B941B89469F59BA3A847137FFE-sBd4vmA9Se4Lll3ZsUKC9FDQ4js95KgL@public.gmane.org>
2003-02-04 22:10   ` Pavel Machek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox