Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 123605 - Patch for ACPI DSDT in initrd
Summary: Patch for ACPI DSDT in initrd
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL: http://gaugusch.at/kernel.shtml
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-02-21 04:59 UTC by David Girault
Modified: 2006-02-23 08:55 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Girault 2006-02-21 04:59:04 UTC
Hi all,

Some laptop or motherboard (Like Asus A8N-VM CSM) have bad ACPI DSDT in their ROM. The inclusion of this patch will allow users to fix themselve the DSDT table.

Patch can be downloaded from:
http://gaugusch.at/kernel.shtml

How-to use was posted in the forum:
http://forums.gentoo.org/viewtopic-t-122145-postdays-0-postorder-asc-start-225.html?sid=59a72bc68081422619197686974f39d8

I hope this patch can be included, so users don't have to appli it manually after each upgrade of their kernel.

-----------------
Portage 2.0.54 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.15-ge
ntoo-r5 x86_64)
=================================================================
System uname: 2.6.15-gentoo-r5 x86_64 AMD Athlon(tm) 64 Processor 3200+
Gentoo Base System version 1.6.14
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X1
1/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo ftp://ftp.eas
ynet.nl/mirror/gentoo http://gentoo.mirror.sdv.fr http://gentoo.oregonstate.edu
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X acl alsa avi berkdb bitmap-fonts bzip2 crypt cups curl eds emboss e
ncode expat foomaticdb fortran gif gmp gpm gstreamer gtk gtk2 imlib ipv6 jpeg lc
ms lzw lzw-tiff mng mp3 mpeg ncurses nls opengl pam pcre pdflib perl png python
quicktime readline samba sdl spell ssl tcpd tiff truetype truetype-fonts type1-f
onts udev usb userlocales xml2 xpm xv zlib userland_GNU kernel_linux elibc_glibc
"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY


-----------------
lspci output:

00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.1 RAM memory: nVidia Corporation C51 Memory Controller 0 (rev a2)
00:00.2 RAM memory: nVidia Corporation C51 Memory Controller 1 (rev a2)
00:00.3 RAM memory: nVidia Corporation C51 Memory Controller 5 (rev a2)
00:00.4 RAM memory: nVidia Corporation C51 Memory Controller 4 (rev a2)
00:00.5 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.6 RAM memory: nVidia Corporation C51 Memory Controller 3 (rev a2)
00:00.7 RAM memory: nVidia Corporation C51 Memory Controller 2 (rev a2)
00:02.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:03.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:04.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:05.0 VGA compatible controller: nVidia Corporation C51PV [GeForce 6150] (rev
a2)
00:09.0 RAM memory: nVidia Corporation MCP51 Host Bridge (rev a2)
00:0a.0 ISA bridge: nVidia Corporation MCP51 LPC Bridge (rev a2)
00:0a.1 SMBus: nVidia Corporation MCP51 SMBus (rev a2)
00:0b.0 USB Controller: nVidia Corporation MCP51 USB Controller (rev a2)
00:0b.1 USB Controller: nVidia Corporation MCP51 USB Controller (rev a2)
00:0d.0 IDE interface: nVidia Corporation MCP51 IDE (rev a1)
00:10.0 PCI bridge: nVidia Corporation MCP51 PCI Bridge (rev a2)
00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio (rev a2)
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a1)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTra
nsport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address
Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Con
troller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscella
neous Control
04:05.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (
rev 80)

-----------------
partial dmesg:

........
CPU: AMD Athlon(tm) 64 Processor 3200+ stepping 02
ACPI: Looking for DSDT in initrd... found (at offset 0x00).
    ACPI-0284: *** Info: Table [DSDT] replaced by host OS
........
ACPI: Subsystem revision 20050902
ACPI: Interpreter enabled
ACPI: Using IOAPIC for interrupt routing
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Probing PCI hardware (bus 00)
Boot video device is 0000:00:05.0
PCI: Transparent bridge - 0000:00:10.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCE0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCE1._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCE2._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P1._PRT]
ACPI: PCI Interrupt Link [LNKA] (IRQs 16 17 18 19) *0, disabled
ACPI: PCI Interrupt Link [LNKB] (IRQs 16 17 18 19) *0, disabled
ACPI: PCI Interrupt Link [LNKC] (IRQs 16 17 18 19) *0, disabled
ACPI: PCI Interrupt Link [LNKD] (IRQs 16 17 18 19) *5
ACPI: PCI Interrupt Link [LNEA] (IRQs 16 17 18 19) *0, disabled
ACPI: PCI Interrupt Link [LNEB] (IRQs 16 17 18 19) *0, disabled
ACPI: PCI Interrupt Link [LNEC] (IRQs 16 17 18 19) *11
ACPI: PCI Interrupt Link [LNED] (IRQs 16 17 18 19) *0, disabled
ACPI: PCI Interrupt Link [LUB0] (IRQs 20 21 22 23) *5
ACPI: PCI Interrupt Link [LUB2] (IRQs 20 21 22 23) *16
ACPI: PCI Interrupt Link [LMAC] (IRQs 20 21 22 23) *5
ACPI: PCI Interrupt Link [LAZA] (IRQs 20 21 22 23) *5
ACPI: PCI Interrupt Link [LACI] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [LMC9] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [LSMB] (IRQs 20 21 22 23) *5
ACPI: PCI Interrupt Link [LPMU] (IRQs 20 21 22 23) *10
ACPI: PCI Interrupt Link [LSA0] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [LSA1] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [LATA] (IRQs 20 21 22 23) *0, disabled.
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: PnP ACPI init
pnp: PnP ACPI: found 15 devices
........
ACPI: Power Button (FF) [PWRF]
ACPI: Power Button (CM) [PWRB]
PNP: PS/2 Controller [PNP0303:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12
serio: i8042 AUX port at 0x60,0x64 irq 12
serio: i8042 KBD port at 0x60,0x64 irq 1
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
00:0b: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
mice: PS/2 mouse device common for all mice
Comment 1 Daniel Drake (RETIRED) gentoo-dev 2006-02-21 08:00:26 UTC
Hi David,

The linux kernel already includes this functionality.

234 config ACPI_CUSTOM_DSDT
235         bool "Include Custom DSDT"
236         depends on !STANDALONE
237         default n 
238         help
239           Thist option is to load a custom ACPI DSDT
240           If you don't know what that is, say N.
241 
242 config ACPI_CUSTOM_DSDT_FILE
243         string "Custom DSDT Table file to include"
244         depends on ACPI_CUSTOM_DSDT
245         default ""
246         help
247           Enter the full path name to the file wich includes the AmlCode declaration.
Comment 2 David Girault 2006-02-23 08:38:54 UTC
(In reply to comment #1)
> Hi David,
> 
> The linux kernel already includes this functionality.
> 
> 234 config ACPI_CUSTOM_DSDT
> 235         bool "Include Custom DSDT"
> 236         depends on !STANDALONE
> 237         default n 
> 238         help
> 239           Thist option is to load a custom ACPI DSDT
> 240           If you don't know what that is, say N.
> 241 
> 242 config ACPI_CUSTOM_DSDT_FILE
> 243         string "Custom DSDT Table file to include"
> 244         depends on ACPI_CUSTOM_DSDT
> 245         default ""
> 246         help
> 247           Enter the full path name to the file wich includes the AmlCode
> declaration.
> 


Ok, thanks, but how can activate these on x86 and amd64?
I don't find these option in gentoo-sources when I do a 'make menuconfig'.
Do i need to manually set these options in '.config'?


Thank for your information,
David
Comment 3 David Girault 2006-02-23 08:55:44 UTC
(In reply to comment #2)
> 
> Ok, thanks, but how can activate these on x86 and amd64?
> I don't find these option in gentoo-sources when I do a 'make menuconfig'.
> Do i need to manually set these options in '.config'?
> 
> 
> Thank for your information,
> David
> 

Ok, I reply to myself since I just found the solution:
In '.config', change 'CONFIG_STANDALONE=y' to 'CONFIG_STANDALONE=n',  'CONFIG_ACPI_CUSTOM_DSDT' to 'y' and CONFIG_ACPI_CUSTOM_DSDT_FILE to the AML C File.

Or in menuconfig, change the following to 'No';
'Device Drivers'/'Generic Driver Options'/'Select only drivers that don't...'

Then, go back to 'Power Management options'/'ACPI', the DSDT options are now visible.

David