Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Kernel & Hardware
  • Search

--- ACPI Support

Kernel not recognizing your hardware? Problems with power management or PCMCIA? What hardware is compatible with Gentoo? See here. (Only for kernels supported by Gentoo.)
Post Reply
Advanced search
15 posts • Page 1 of 1
Author
Message
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

--- ACPI Support

  • Quote

Post by leosgb » Tue Mar 07, 2006 9:59 pm

Hi,

I am trying to get my A8N-VM CSM to shut down properly by changing the DSDT and adding it to my kernel so i ran into a problem: I believe i dont have ACPI enabled in my kernel. So i "menu config" and browse thru the options to find out this :"--- ACPI Support", which, I believe, means I cant even select it. What do I have to do? I am running 2.6.15-gentoo-r5. I thought I had it enabled until now when I tried to load the acpid and i got this:
/etc/init.d/acpid start
ACPI support has not been compiled into the kernel

Can anyone help me on this?

After this issue is solved then I have to attack the DSDT problem again.

Thanks for any help,
----

My dmesg|grep ACPI output:

BIOS-e820: 000000003bfc0000 - 000000003bfce000 (ACPI data)
BIOS-e820: 000000003bfce000 - 000000003bff0000 (ACPI NVS)
ACPI: RSDP (v002 ACPIAM ) @ 0x00000000000fb870
ACPI: XSDT (v001 A M I OEMXSDT 0x01000617 MSFT 0x00000097) @ 0x000000003bfc0100
ACPI: FADT (v003 A M I OEMFACP 0x01000617 MSFT 0x00000097) @ 0x000000003bfc0290
ACPI: MADT (v001 A M I OEMAPIC 0x01000617 MSFT 0x00000097) @ 0x000000003bfc0390
ACPI: MCFG (v001 A M I OEMMCFG 0x01000617 MSFT 0x00000097) @ 0x000000003bfc0400
ACPI: OEMB (v001 A M I AMI_OEM 0x01000617 MSFT 0x00000097) @ 0x000000003bfce040
ACPI: DSDT (v001 A0368 A0368001 0x00000001 INTL 0x02002026) @ 0x0000000000000000
Nvidia board detected. Ignoring ACPI timer override.
ACPI: PM-Timer IO Port: 0x508
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x81] disabled)
ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: BIOS IRQ0 pin2 override ignored.
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
ACPI: IRQ9 used by override.
ACPI: IRQ14 used by override.
ACPI: IRQ15 used by override.
Using ACPI (MADT) for SMP configuration information
ACPI-0311: *** Error: ns_search_and_enter: Bad character in ACPI Name: 43045350
ACPI-0292: *** Error: Looking up [0x43045350] (NON-ASCII)
ACPI-0115: *** Error: acpi_load_tables: Could not load namespace: AE_BAD_CHARACTER
ACPI-0123: *** Error: acpi_load_tables: Could not load tables: AE_BAD_CHARACTER
ACPI: Unable to load the System Description Tables
ACPI: Subsystem revision 20050902
ACPI: Interpreter disabled.
Top
widan
Veteran
Veteran
User avatar
Posts: 1512
Joined: Tue Jun 07, 2005 4:26 pm
Location: Paris, France

Re: --- ACPI Support

  • Quote

Post by widan » Wed Mar 08, 2006 12:52 am

leosgb wrote:So i "menu config" and browse thru the options to find out this :"--- ACPI Support", which, I believe, means I cant even select it.
It means it's already enabled because another option needs it. You do have ACPI in the kernel, else you wouldn't get any ACPI messages in dmesg. It's just that the DSDT is badly broken, and the kernel refuses to use it, so acpid won't find ACPI.

Code: Select all

ACPI-0311: *** Error: ns_search_and_enter: Bad character in ACPI Name: 43045350
ACPI-0292: *** Error: Looking up [0x43045350] (NON-ASCII)
Check for a name with a weird character in the DSDT. The name will be either C?SP or PS?C (probably PS?C, as x86/x86_64 are little endian), with the "?" being a weird character. Then you will have to guess which character got mangled (one of 0x44 = D, 0x54 = T, assuming the lowest nibble 4 is correct).
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Wed Mar 08, 2006 9:01 pm

Where can I find the DSDT? All tutorials point me to /proc/acpi/dsdt but I dont have that. I just tried to start it and i get:

zeus / # /etc/init.d/acpid start
* ACPI support has not been compiled into the kernel

Have any idea why?

Thanks for your help,
Top
widan
Veteran
Veteran
User avatar
Posts: 1512
Joined: Tue Jun 07, 2005 4:26 pm
Location: Paris, France

  • Quote

Post by widan » Wed Mar 08, 2006 9:35 pm

If you can't get it the "normal" way (you won't have /proc/acpi/dsdt if ACPI is completely disabled because the kernel thinks the DSDT is too broken), you can get it directly from memory:

Code: Select all

phuket acpi # wget -O acpidmp.c http://cvs.sourceforge.net/viewcvs.py/*checkout*/acpi/pmtools/acpidmp/acpidmp.c?rev=1.2
phuket acpi # wget -O acpixtract http://cvs.sourceforge.net/viewcvs.py/*checkout*/acpi/pmtools/acpidmp/acpixtract?rev=1.2
phuket acpi # gcc acpidmp.c -o acpidmp
phuket acpi # chmod +x acpixtract 
phuket acpi # ./acpidmp | ./acpixtract DSDT > dsdt.dat 
phuket acpi # iasl -d dsdt.dat 
You should have your disassembled DSDT in dsdt.dsl at the end (and the binary DSDT in dsdt.dat).
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Wed Mar 08, 2006 10:16 pm

Just tried... unsuccessful :(

zeus acpistuff # acpi # wget -O acpidump.c
No ACPI support in kernel, or incorrect acpi_path ("/proc/acpi").

And acpid isnt loaded because it says "no support in kernel".

I just want to be able to access my A8N-VM CSM board sensor's readings.

Thanks again,

---- EDITED!!! ----

Ok I am very sorry but i didnt understand the commands well. Then after some thought here I realized i was breaking the commands. My bad!

So now i got:

Intel ACPI Component Architecture
AML Disassembler version 20060127 [Mar 7 2006]
Copyright (C) 2000 - 2006 Intel Corporation
Supports ACPI Specification Revision 3.0a

Loading Acpi table from file dsdt.dat
Acpi table [DSDT] successfully installed and loaded
Pass 1 parse of [DSDT]

My dsdt.dsl holds this info:
"ACPI Error (nssearch-0405): Bad character in ACPI Name: 43045350 [20060127]
ACPI Error (dswload-0393): [0x43045350] (NON-ASCII) Namespace lookup failure, AE_BAD_CHARACTER
ACPI Exception (psloop-0347): AE_BAD_CHARACTER, During name lookup/catalog [20060127]
Could not parse ACPI tables, AE_BAD_CHARACTER"

And I am trying to figure out what to do next. Thank you so much for your help! And sorry for the confusion.
Top
widan
Veteran
Veteran
User avatar
Posts: 1512
Joined: Tue Jun 07, 2005 4:26 pm
Location: Paris, France

  • Quote

Post by widan » Wed Mar 08, 2006 11:13 pm

Then emerge hexedit and load your (binary) DSDT with it. Then search (with Ctrl-S) the hex string 50530443 (if it's not there, try 43045350 instead - the same thing but byte-swapped - it depends on the endianness in which it is stored in the file). Then replace the "04" in it by "44" (just move to the proper place, and type the new number). Search again, in case there is another instance of the bad name somewhere (you need to do the same thing on all instances). Then exit (Ctrl-X, and answer you want to save the file when it asks you).

Now you should be able to disassemble the DSDT successfully (the bad PS?C name will be replaced by PSDC in the DSDT, so if you need to try other names like PSTC, you will need to look for this one).
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Thu Mar 09, 2006 12:10 am

It worked! Thank you so much. I have the dsdt.dsl here and will proceed with this instructions http://forums.gentoo.org/viewtopic.php?t=122145 and hopefully it will be solved by tomorrow. Thanks again!

--- EDITED ---

Well i tried to follow the instructions on the website but...

1) if i try to fix mine the errors are totally strange to me (i dont know this language):
"Intel ACPI Component Architecture
ASL Optimizing Compiler version 20060127 [Mar 7 2006]
Copyright (C) 2000 - 2006 Intel Corporation
Supports ACPI Specification Revision 3.0a

dsdt.dsl 5203: If (LNot (And (\_SB.PCI0.HFZF, Local2)))
Error 1061 - Object does not exist ^ (\_SB.PCI0.HFZF)

dsdt.dsl 5207: Or (\_SB.PCI0.HFZF, Local2, \_SB.PCI0.HFZF)
Error 1061 - Object does not exist ^ (\_SB.PCI0.HFZF)

dsdt.dsl 5207: Or (\_SB.PCI0.HFZF, Local2, \_SB.PCI0.HFZF)
Error 1061 - Object does not exist ^ (\_SB.PCI0.HFZF)

dsdt.dsl 5348: Method (WFZF, 1, NotSerialized)
Warning 2085 - ^ Not all control paths return a value (WFZF)

dsdt.dsl 5361: Return (While (Local1)
Error 1093 - ^ syntax error, unexpected PARSEOP_WHILE

dsdt.dsl 5379: Scopecal3)
Error 1093 - ^ syntax error, unexpected PARSEOP_SCOPE, expecting $end

ASL Input: dsdt.dsl - 6098 lines, 189930 bytes, 1947 keywords
Compilation complete. 5 Errors, 1 Warnings, 0 Remarks, 457 Optimizations"

2) Now I am trying to get the fixed table from sourceforge to work. It disassembles and assembles w/o errors nor warnings.
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Thu Mar 09, 2006 12:33 am

I believe I made a major mistake here, i dont know. I followed the instructions dowloading the requested file and patched my kernel. But i forgot to add the "<" so my terminal was frozen for some time when i finally decided to hit enter. Then i realized the mistake and fixed it and the patch returned me this error:

zeus linux # patch -p1 ~/acpistuff/dsdt_override.diff <<==== MAJOR MiSTAKE

zeus linux # patch -p1 < ~/acpistuff/dsdt_override.diff <<==== CORRECT COMMAND
patching file drivers/acpi/osl.c
Hunk #1 succeeded at 25 with fuzz 2.
Hunk #2 FAILED at 209.
1 out of 2 hunks FAILED -- saving rejects to file drivers/acpi/osl.c.rej

I have no idea what this means. I just know that i shouldnt recompile my kernel for now. Could you give me some assistance? Sorry for all this trouble.
Top
widan
Veteran
Veteran
User avatar
Posts: 1512
Joined: Tue Jun 07, 2005 4:26 pm
Location: Paris, France

  • Quote

Post by widan » Thu Mar 09, 2006 12:40 am

There is no need for a patch to use a custom DSDT. First apply the patch in reverse to remove the effect:

Code: Select all

patch -p1 -R < ~/acpistuff/dsdt_override.diff
Then select those options:

Code: Select all

Device Drivers  --->
  Generic Driver Options  --->
    [ ] Select only drivers that don't need compile-time external firmware
Power management options (ACPI, APM)  --->
  ACPI (Advanced Configuration and Power Interface) Support  --->
    [*]   Include Custom DSDT
    ()      Custom DSDT Table file to include
And select your fixed DSDT on the "Custom DSDT to include" line.
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Thu Mar 09, 2006 12:49 am

My problem is that i dont have that option in my kernel. Mine is 2.6.15-r5gentoo. How can i make them be available to me?
Top
widan
Veteran
Veteran
User avatar
Posts: 1512
Joined: Tue Jun 07, 2005 4:26 pm
Location: Paris, France

  • Quote

Post by widan » Thu Mar 09, 2006 12:54 am

You need to unselect the "Select only drivers that don't need compile-time external firmware" before the option will appear.
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Thu Mar 09, 2006 1:09 am

I see. I deselect both:
Select only drivers that dont need compile-time external firmware and
Prevent firmware from being built

Going for recompile now! Thanks!
Top
leosgb
Apprentice
Apprentice
Posts: 272
Joined: Tue Mar 07, 2006 9:43 pm
Location: Rio de Janeiro, Brazil

  • Quote

Post by leosgb » Thu Mar 09, 2006 3:42 am

Ok, I added the file to the kernel sources and it boots well. When I check dmesg it doesnt return any errors as before. It gives me a msg saying it is replacing the old DSDT with one provided by the Operating System. Nevertheless when I try to shutdown i still need to go there and press the button. What is missing? The original file was created by someone else (posted at acpi) for my board with 128MB of video RAM and 2GB or RAM. Can it cause a problem? I only have 1GB of RAM. Thanks for all your help so far.
Top
widan
Veteran
Veteran
User avatar
Posts: 1512
Joined: Tue Jun 07, 2005 4:26 pm
Location: Paris, France

  • Quote

Post by widan » Thu Mar 09, 2006 4:14 am

leosgb wrote:The original file was created by someone else (posted at acpi) for my board with 128MB of video RAM and 2GB or RAM. Can it cause a problem? I only have 1GB of RAM.
It's possible, it depends on the BIOS. You can try to use the 2GB DSDT to fix your own DSDT (look at how the errors were fixed in the DSDT you have, and try to do the same on your own DSDT).
Top
bludger
Guru
Guru
Posts: 389
Joined: Wed Apr 09, 2003 7:14 am

  • Quote

Post by bludger » Sat Apr 01, 2006 7:54 am

You can also check out this link. It worked for me.
http://quaggaspace.org/a8nvm/
Top
Post Reply

15 posts • Page 1 of 1

Return to “Kernel & Hardware”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic