Re: ACPI Regression in -CURRENT?
Stijn Hoop wrote: This is due to the Dell laptops having an invalid ACPI table in the BIOS. The only way to avoid these messages is to tell FreeBSD ACPI to override the vendor supplied table with a correct one. Alternately, since Microsoft works just peachy with this thing, it's somewhat apparent that the Derefof() and Refof() can be implied by the types of the values being passed, and the ACPI table parsing code should be changed to work like Microsoft's does, at least until FreeBSD displaces the 70% marketshare and can dictate defacto implementation standards, where Intel can't. Yeah, I know that it's better to be correct than Microsoft compatible, but it's also better to work with hardware as shipped by vendors. Unless you think you can get Dell to rev their BIOS... -- Terry ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: ACPI Regression in -CURRENT?
+ Stijn Hoop [EMAIL PROTECTED]: | Hi Thorsten, | | On Tue, Jun 10, 2003 at 03:42:18PM +0200, Thorsten Greiner wrote: | some time ago several people (including me) reported ACPI related problems | on various Dell laptops resulting in error messages of the form | | ACPI-0293: *** Warning: Buffer created with zero length in AML | | During the 5.1 release process these problems have been temporarily fixed. | | This is due to the Dell laptops having an invalid ACPI table in the BIOS. | The only way to avoid these messages is to tell FreeBSD ACPI to override | the vendor supplied table with a correct one. | | Mark Santcroos developed a patch which worked on his C640 and my Inspiron | 4150, which you can find attached. Here are the steps to use it: [...] I tried that on my Inspiron 4150 with 5.1-RELEASE. The patch failed, but only for trivial reasons like different placment of braces. So I applied it by hand and followed directions, but the warning messages did not go away. I know my efforts did *something* though, as I find this in dmesg output: Preloaded acpi_dsdt /boot/acpi_dsdt.aml at 0xc055c1cc. [...] ACPI: DSDT was overridden. ACPI-0375: *** Info: Table [DSDT] replaced by host OS Also, I still cannot suspend the machine: acpiconf -s number results in a variety of interesting behaviour, always ending with the machine in a useless state (except acpiconf -s 5, which does what it should - like halt -p). Actually, acpiconf -s 3 seems to almost work: The screen goes blank, and the machine turns itself off - only to turn back on immediately, but with the screen remaining blank. So I hit Fn-F8 a couple of times, and lo and behold the screen is alive again and the machine is responsive once more. I did this from a console, but when I do Ctrl-Alt-F9 the X server is hosed: Wrong colours, garbage in the top of the screen, and zero response to any keypresses. Can you suspend yours? Any more clever tricks? (Hmm, I suppose we should discuss this on -mobile, but since the thread started here...) - Harald ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: ACPI Regression in -CURRENT?
On Wed, Jun 11, 2003 at 08:18:26PM +0200, Harald Hanche-Olsen wrote: + Stijn Hoop [EMAIL PROTECTED]: | Hi Thorsten, | | On Tue, Jun 10, 2003 at 03:42:18PM +0200, Thorsten Greiner wrote: | some time ago several people (including me) reported ACPI related problems | on various Dell laptops resulting in error messages of the form | | ACPI-0293: *** Warning: Buffer created with zero length in AML | | During the 5.1 release process these problems have been temporarily fixed. | | This is due to the Dell laptops having an invalid ACPI table in the BIOS. | The only way to avoid these messages is to tell FreeBSD ACPI to override | the vendor supplied table with a correct one. | | Mark Santcroos developed a patch which worked on his C640 and my Inspiron | 4150, which you can find attached. Here are the steps to use it: [...] I tried that on my Inspiron 4150 with 5.1-RELEASE. The patch failed, but only for trivial reasons like different placment of braces. Note that you have to patch the output of iasl -d, *NOT* the .asl file that acpidump generates. There is a difference although they look alike. Don't ask me what the meaning of all this is, I'm just the messenger :) So I applied it by hand and followed directions, but the warning messages did not go away. I know my efforts did *something* though, as I find this in dmesg output: Preloaded acpi_dsdt /boot/acpi_dsdt.aml at 0xc055c1cc. [...] ACPI: DSDT was overridden. ACPI-0375: *** Info: Table [DSDT] replaced by host OS That's ok, but I think you patched compiled the wrong file. I *know* it works because I also have an Inspiron 4150. Also, I still cannot suspend the machine: acpiconf -s number results in a variety of interesting behaviour, always ending with the machine in a useless state (except acpiconf -s 5, which does what it should - like halt -p). acpiconf -s 4 works, now that I have reinstalled the laptop with a suspend partition as the first primary partition. You need the Dell utility mks2d.exe for this, available somewhere on the Dell website. Actually, acpiconf -s 3 seems to almost work: The screen goes blank, and the machine turns itself off - only to turn back on immediately, but with the screen remaining blank. So I hit Fn-F8 a couple of times, and lo and behold the screen is alive again and the machine is responsive once more. I did this from a console, but when I do Ctrl-Alt-F9 the X server is hosed: Wrong colours, garbage in the top of the screen, and zero response to any keypresses. According to Mark, this actually should work from within X -- something to do with DPMS. I haven't gotten around to testing it after my reinstall though (*cough*Zelda:WW*cough* :) Can you suspend yours? Any more clever tricks? (Hmm, I suppose we should discuss this on -mobile, but since the thread started here...) The ACPI thing got more coverage on -current, but the suspend stuff is probably -mobile topic, yeah :) HTH, --Stijn -- Diane, 2:15 in the afternoon, November 14. Entering town of Twin Peaks. Five miles south of the Canadian border, twelve miles west of the state line. Never seen so many trees in my life. As W.C. Fields would say, I'd rather be here than Philadelphia. -- Special Agent Dale Cooper, Twin Peaks pgp0.pgp Description: PGP signature
Re: ACPI Regression in -CURRENT?
+ Stijn Hoop [EMAIL PROTECTED]: | I tried that on my Inspiron 4150 with 5.1-RELEASE. The patch failed, | but only for trivial reasons like different placment of braces. | | Note that you have to patch the output of iasl -d, *NOT* the .asl file | that acpidump generates. There is a difference although they look alike. Aha. But the diff you included clearly indicated it was a patch for insp4150.asl. When I told patch to patch insp4150.dsl instead, using your patch, it applied cleanly, and moreover the fix now works to the extent that I don't get those error messages anymore. To be precise, I followed your exact instructions with this difference: # patch insp4150.dsl insp4150.patch | Actually, acpiconf -s 3 seems to almost work: [...] | | According to Mark, this actually should work from within X -- | something to do with DPMS. Still doesn't for me. Same result. Maybe I should learn what DPMS stands for. - Harald ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: ACPI Regression in -CURRENT?
On Thu, Jun 12, 2003 at 12:46:32AM +0200, Harald Hanche-Olsen wrote: + Stijn Hoop [EMAIL PROTECTED]: | I tried that on my Inspiron 4150 with 5.1-RELEASE. The patch failed, | but only for trivial reasons like different placment of braces. | | Note that you have to patch the output of iasl -d, *NOT* the .asl file | that acpidump generates. There is a difference although they look alike. Aha. But the diff you included clearly indicated it was a patch for insp4150.asl. When I told patch to patch insp4150.dsl instead, using your patch, it applied cleanly, and moreover the fix now works to the extent that I don't get those error messages anymore. To be precise, I followed your exact instructions with this difference: # patch insp4150.dsl insp4150.patch I'm sorry, like I wrote the earlier procedure was typed off of the top of my head, and wasn't verified. I should have done that. | Actually, acpiconf -s 3 seems to almost work: [...] | | According to Mark, this actually should work from within X -- | something to do with DPMS. Still doesn't for me. Same result. Maybe I should learn what DPMS stands for. Something with display power management. But maybe it's something else then. Glad to hear the ACPI messages got sorted out at least :) --Stijn -- I wish there was a knob on the TV to turn up the intelligence. There's a knob called `brightness', but it doesn't work. -- Gallagher pgp0.pgp Description: PGP signature
Re: ACPI Regression in -CURRENT?
On Tue, Jun 10, 2003 at 11:38:18PM -0700, Terry Lambert wrote: Stijn Hoop wrote: This is due to the Dell laptops having an invalid ACPI table in the BIOS. The only way to avoid these messages is to tell FreeBSD ACPI to override the vendor supplied table with a correct one. Alternately, since Microsoft works just peachy with this thing, it's somewhat apparent that the Derefof() and Refof() can be implied by the types of the values being passed, Not that I can read one bit of ASL, but I fail to see how this is apparent. If it is, is it still as apparent to an interpreter? and the ACPI table parsing code should be changed to work like Microsoft's does, at least until FreeBSD displaces the 70% marketshare and can dictate defacto implementation standards, where Intel can't. That would be great except probably nobody knows why this laptop works with Windows without a hitch -- it could very well be that the Dell drivers implement their own battery management and completely ignore the fact that it's broken in their ACPI table. Yeah, I know that it's better to be correct than Microsoft compatible, but it's also better to work with hardware as shipped by vendors. Unless you think you can get Dell to rev their BIOS... That would be great, but I don't have the contacts at Dell. Anybody reading this who does? --Stijn -- This sentence contradicts itself -- no actually it doesn't. -- Hofstadter pgp0.pgp Description: PGP signature
Re: ACPI Regression in -CURRENT?
Date: Thu, 12 Jun 2003 01:12:06 +0200 From: Stijn Hoop [EMAIL PROTECTED] Sender: [EMAIL PROTECTED] On Thu, Jun 12, 2003 at 12:46:32AM +0200, Harald Hanche-Olsen wrote: + Stijn Hoop [EMAIL PROTECTED]: | I tried that on my Inspiron 4150 with 5.1-RELEASE. The patch failed, | but only for trivial reasons like different placment of braces. | | Note that you have to patch the output of iasl -d, *NOT* the .asl file | that acpidump generates. There is a difference although they look alike. Aha. But the diff you included clearly indicated it was a patch for insp4150.asl. When I told patch to patch insp4150.dsl instead, using your patch, it applied cleanly, and moreover the fix now works to the extent that I don't get those error messages anymore. To be precise, I followed your exact instructions with this difference: # patch insp4150.dsl insp4150.patch I'm sorry, like I wrote the earlier procedure was typed off of the top of my head, and wasn't verified. I should have done that. | Actually, acpiconf -s 3 seems to almost work: [...] | | According to Mark, this actually should work from within X -- | something to do with DPMS. Still doesn't for me. Same result. Maybe I should learn what DPMS stands for. Something with display power management. But maybe it's something else then. Glad to hear the ACPI messages got sorted out at least :) There are two problems I see with s3 on my ThinkPad (T30): 1. The display back-light stays on. (The bit rot of the display is at least novel. Brings back the 60s and and psychodelia!) 2. The disk spins down INSTANTLY. If the is any un-written data in the write cache, you may have a problem. I have noticed that when I suspend in XP, there is a delay of about 3 seconds before the system actually suspends. It even display a window that says Preparing the system for sleep or something similar. I suspect that at least one function of this is to give the disk caches time to flush. They probably do a DOS equivalent of an sync, as well. I think that this delay needs to be available as I suspect that at least some BIOSes require it to avoid disk corruption. I suspect that XP does something to stop the video and turn off the back-light, but I have no way of guessing what. In V4 days I could use apmd to switch to a vty on suspend, but I have not looked into whether that will work with ACPI. ACPI basically works, but the rough bits keep me on APM. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: [EMAIL PROTECTED] Phone: +1 510 486-8634 ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
ACPI Regression in -CURRENT?
Hi everyone, some time ago several people (including me) reported ACPI related problems on various Dell laptops resulting in error messages of the form ACPI-0293: *** Warning: Buffer created with zero length in AML During the 5.1 release process these problems have been temporarily fixed. At least I have a 5.1-BETA kernel built on June 1st which does not exhibit these problems. Today I tried a 5.1-CURRENT kernel and found that these problems have reappeared. This made me wonder wether this is an intended behaviour or a regression. Best regards -Thorsten __ UNICEF bittet um Spenden für die Kinder im Irak! Hier online an UNICEF spenden: https://spenden.web.de/unicef/special/?mc=021101 ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: ACPI Regression in -CURRENT?
Hi Thorsten, On Tue, Jun 10, 2003 at 03:42:18PM +0200, Thorsten Greiner wrote: some time ago several people (including me) reported ACPI related problems on various Dell laptops resulting in error messages of the form ACPI-0293: *** Warning: Buffer created with zero length in AML During the 5.1 release process these problems have been temporarily fixed. At least I have a 5.1-BETA kernel built on June 1st which does not exhibit these problems. Today I tried a 5.1-CURRENT kernel and found that these problems have reappeared. This made me wonder wether this is an intended behaviour or a regression. This is due to the Dell laptops having an invalid ACPI table in the BIOS. The only way to avoid these messages is to tell FreeBSD ACPI to override the vendor supplied table with a correct one. Mark Santcroos developed a patch which worked on his C640 and my Inspiron 4150, which you can find attached. Here are the steps to use it: # cd /usr/ports/devel/acpicatools make install # acpidump -o insp4150.dsdt insp4150.asl # iasl -d insp4150.dsdt # patch -p0 insp4150.patch # iasl insp4150.dsl # cp DSDT.aml /boot/acpi_dsdt.aml # vi /boot/loader.conf add the lines acpi_dsdt_load=YES acpi_dsdt_name=/boot/acpi_dsdt.aml Then reboot. You might need to improvise, and/or edit the patch headers to specify the file to patch. I'm recalling this procedure from memory / older emails, but this should be the gist of it. HTH, --Stijn -- An Orb is for life, not just for Christmas. --- insp4150_orig.asl Wed May 14 02:07:27 2003 +++ insp4150.aslTue May 27 22:18:14 2003 @@ -120,9 +120,9 @@ Method (SXX5, 2, NotSerialized) { -If (LLess (Arg1, SizeOf (Arg0))) +If (LLess (Arg1, SizeOf (DerefOf(Arg0 { -CreateByteField (Arg0, Arg1, SX20) +CreateByteField (DerefOf(Arg0), Arg1, SX20) SXX6 (0x7C, SX20) } } @@ -133,16 +133,16 @@ Store (0x00, Local0) While (LLess (Local0, SXX2)) { -SXX5 (SXX0, Local0) +SXX5 (RefOf(SXX0), Local0) Increment (Local0) } } Method (SXX8, 2, NotSerialized) { -If (LLess (Arg1, SizeOf (Arg0))) +If (LLess (Arg1, SizeOf (DerefOf (Arg0 { -CreateByteField (Arg0, Arg1, SX20) +CreateByteField (DerefOf(Arg0), Arg1, SX20) Store (SXX6 (0x7D, 0x00), SX20) } } @@ -153,7 +153,7 @@ While (LLess (Local0, SXX3)) { Add (SXX2, Local0, Local1) -SXX8 (SXX0, Local1) +SXX8 (RefOf (SXX0), Local1) Increment (Local0) } } @@ -217,9 +217,9 @@ Method (SX43, 2, NotSerialized) { -If (LLess (Arg1, SizeOf (Arg0))) +If (LLess (Arg1, SizeOf (DerefOf(Arg0 { -CreateByteField (Arg0, Arg1, SX20) +CreateByteField (DerefOf(Arg0), Arg1, SX20) Store (SX40 (), SX20) } } @@ -238,7 +238,7 @@ { Store (SX40 (), Local0) Name (SX23, Buffer (Local0) {}) -SX44 (SX23, Local0) +SX44 (Refof(SX23), Local0) Return (SX23) } @@ -277,7 +277,7 @@ SX30 (Arg0) SX11 () Name (PGET, Buffer (SXX3) {}) -SX44 (PGET, SXX3) +SX44 (RefOf(PGET), SXX3) SX12 () Return (PGET) } pgp0.pgp Description: PGP signature
Re: ACPI Regression in -CURRENT?
In the last episode (Jun 10), Stijn Hoop said: On Tue, Jun 10, 2003 at 03:42:18PM +0200, Thorsten Greiner wrote: some time ago several people (including me) reported ACPI related problems on various Dell laptops resulting in error messages of the form ACPI-0293: *** Warning: Buffer created with zero length in AML This is due to the Dell laptops having an invalid ACPI table in the BIOS. The only way to avoid these messages is to tell FreeBSD ACPI to override the vendor supplied table with a correct one. Mark Santcroos developed a patch which worked on his C640 and my Inspiron 4150, which you can find attached. Here are the steps to use it: This patch fixes a -current hang on bootup and misdetection of the serial ports on my Dell CP. thanks! -- Dan Nelson [EMAIL PROTECTED] ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]