Code: Select all
UDF-fs: no partition found
XFS: bad magic number
XFS: SB validate failed
No filesystem could mount rout, tried: reiserfs ext3 ... (a whole list)
kernel panic - not syncing: VFS: Unable to mount root fs on unknown_block(1,0)
Code: Select all
title=Gentoo Linux (kernel 2.6.17-r4)
root (hd0,1)
kernel (hd0,1)/boot/kernel-genkernel-x86-2.6.17-gentoo-r4 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda2 doscsi video=vesafb:ywrap,mtrr:3,1280x800-32@75
initrd (hd0,1)/boot/initramfs-genkernel-x86-2.6.17-gentoo-r4
Code: Select all
ACPI: DSDT (v001 255EI 255EI008 0x00000008 INTL 0x02002026) @ 0x00000000
ACPI: Looking for DSDT in initramfs... error, file /DSDT.aml not found.

Code: Select all
Intel ACPI Component Architecture
ASL Optimizing Compiler version 20060512 [Aug 4 2006]
Copyright (C) 2000 - 2006 Intel Corporation
Supports ACPI Specification Revision 3.0a
dsdt.dsl 4220: Acquire (MUTE, 0x03E8)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4234: Acquire (MUTE, 0x03E8)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4249: Acquire (MUTE, 0x03E8)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4264: Acquire (MUTE, 0x0FFF)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4278: Acquire (MUTE, 0x03E8)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4293: Acquire (MUTE, 0x03E8)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4308: Acquire (MUTE, 0x03E8)
Warning 1103 - ^ Possible operator timeout is ignored
dsdt.dsl 4506: Method (WFZF, 1, NotSerialized)
Warning 1086 - ^ Not all control paths return a value (WFZF)
dsdt.dsl 4521: Return (Stall (0x0F))
Error 4094 - ^ syntax error, unexpected PARSEOP_STALL
ASL Input: dsdt.dsl - 4793 lines, 147191 bytes, 2014 keywords
Compilation complete. 1 Errors, 8 Warnings, 0 Remarks, 638 Optimizations

... but no battery, AC-adaptor, power button, sleep states etc. are found ...dmesg | grep DSDT
ACPI: DSDT (v001 MSI 1057 0x06212006 INTL 0x02002026) @ 0x00000000
ACPI: Looking for DSDT in initramfs... successfully read 16642 bytes from /DSDT.aml.
ACPI (tbget-0290): Table [DSDT] replaced by host OS [20060127]
Code: Select all
dmesg | grep ACPI | grep batterACPI: Battery Slot [BAT1] (battery present)
Code: Select all
Intel ACPI Component Architecture
ASL Optimizing Compiler version 20060912 [Dec 18 2006]
Copyright (C) 2000 - 2006 Intel Corporation
Supports ACPI Specification Revision 3.0a
ACPI Error (nsaccess-0531): ACPI path has too many parent prefixes (^) - reached beyond root node [20060912]
Maximum error count (200) exceeded
dsdt.dsl 24: External (^^^PEGP.EGFX._PSC)
Error 4014 - From ACPI CA Subsystem ^ (AE_NOT_FOUND Failure from lookup %s
)
dsdt.dsl 26: OperationRegion (XNTI, SystemMemory, 0x000F3261, 0x0062)
Error 4062 - Object does not exist ^ (XNTI)
...
... * lots more "Object does not exist ^ (FOO)" *
...
dsdt.dsl 294: RP2D, 1,
Error 4062 - ^ Object does not exist (RP2D)
Maximum error count (200) exceeded
ASL Input: dsdt.dsl - 9061 lines, 320827 bytes, 3510 keywords
Compilation complete. 201 Errors, 0 Warnings, 0 Remarks, 7 Optimizations
Code: Select all
# find . -print | cpio -o -H newc > ../initramfs
# cd ..
(if you want)
# gzip initramfs
Code: Select all
Device (LID)
{
Name (_HID, EisaId ("PNP0C0D"))
Method (_LID, 0, NotSerialized)
{
Store (0x00, LIDP)
Sleep (0x0A)
Store (LIDS, Local0)
Store (0x08, LIDP)
Return (Local0)
}
}
Code: Select all
Device (LID)
{
Name (_HID, EisaId ("PNP0C0D"))
Method (_LID, 0, NotSerialized)
{
Store (0x01, LIDS)
If (LIDS)
{
If (LIDP)
{
Store (0x00, Local0)
}
Else
{
Store (0x01, Local0)
}
}
Else
{
Store (LIDP, Local0)
}
Return (Local0)
}
}
Ouch! Did you copy this code from SDark's dsdt? That won't help him.Crono81 wrote:Code: Select all
Method (_LID, 0, NotSerialized) { Store (0x01, LIDS) If (LIDS) { If (LIDP) { Store (0x00, Local0) } Else { Store (0x01, Local0) } } Else { Store (LIDP, Local0) } Return (Local0) }
Code: Select all
Method (_LID, 0, NotSerialized)
{
Return (One)
}There's /proc/acpi/button/lid/LID/state for that, but its value is the value returned by _LID: you have lid events but state will always be 'open'.I still have to figure out if i get the same lid event, or two different lid events.
Code: Select all
Method (_LID, 0, NotSerialized)
{
...
}Code: Select all
Method (_LID, 0, NotSerialized)
{
Return (One)
}Code: Select all
dsdt.custom.lid-hack.dsl 7598: And (0xFE, Local7)
Warning 1104 - Result is not used, operator has no effect ^ The line belongs to the _BST method. If you look at the ACPI specs at page 321, you'll see:SDark wrote:Code: Select all
dsdt.custom.lid-hack.dsl 7598: And (0xFE, Local7) Warning 1104 - Result is not used, operator has no effect ^
So fixing this warning may only improve battery monitoring. If it already works perfectly, ignore it (or remove the line since it doesn't do anything). Otherwise, you can try:_BST: Returns the current battery status (in other words, dynamic information about the battery, such as whether the battery is currently charging or discharging, an estimate of the remaining battery capacity, and so on).
Code: Select all
- And (0xFE, Local7)
+ And (Local7, 0xFE, Local7)I don't understand. If that line does nothing, it is obvious that leaving it untouched or removing it are exactly the same thing.SDark wrote:you mean that in this case, I should keep that line untouched or remove it?
The value is computed in Local3. An example of value way off scale would help.The issue only happens when the battery is charging, reporting a "present rate:" value that is way off scale.
Code: Select all
present: yes
capacity state: ok
charging state: discharging
present rate: 1208 mA
remaining capacity: 3429 mAh
present voltage: 1 mVCode: Select all
present: yes
capacity state: ok
charging state: charging
present rate: 63699 mA <----
remaining capacity: 2544 mAh
present voltage: 2 mVCode: Select all
If (LAnd (Local3, 0x8000))
{
If (LNot (LEqual (Local3, 0xFFFF)))
{
Not (Local3, Local3)
Increment (Local3)
And (Local3, 0xFFFF, Local3)
}
}Code: Select all
- Store (Local7, Index (PBST, 0x03))
+ Store (Local2, Index (PBST, 0x03))Code: Select all
present: yes
design capacity: 4300 mAh
last full capacity: 3470 mAh
battery technology: rechargeable
design voltage: 14800 mV
design capacity warning: 300 mAh
design capacity low: 132 mAh
capacity granularity 1: 32 mAh
capacity granularity 2: 32 mAh
model number: ZL08
serial number: 20617
battery type: LION
OEM info: SONY
Code: Select all
present: yes
capacity state: ok
charging state: discharging
present rate: 62961 mA
remaining capacity: 3043 mAh
present voltage: 15049 mV
Code: Select all
present: yes
design capacity: 4300 mAh
last full capacity: 3470 mAh
battery technology: rechargeable
design voltage: 14800 mV
design capacity warning: 300 mAh
design capacity low: 132 mAh
capacity granularity 1: 32 mAh
capacity granularity 2: 32 mAh
model number: ZL08
serial number: 20617
battery type: LION
OEM info: SONY
Code: Select all
present: yes
capacity state: ok
charging state: charging
present rate: 1285 mA
remaining capacity: 2968 mAh
present voltage: 16374 mV
I see nothing so perhaps that a variable needs to be ajusted, as in the example of the ACPI specs. So: LIDS or LIDP ? If the variables of well-named, the example would say LIDP. But according to the original code, only LIDS would be writeable. Another strange thingSDark wrote:I guess the notification is looped elsewhere.
Code: Select all
Method (_LID, 0, NotSerialized)
{
Return (LIDS)
}Code: Select all
Method (_LID, 0, NotSerialized)
{
Return (LIDP)
}Code: Select all
Method (_LID, 0, NotSerialized)
{
Store (One, LIDS)
Return (LIDS)
}Code: Select all
# acpi_listen | while read; do cat /proc/acpi/button/lid/LID/state; doneCode: Select all
- If (LAnd (Local3, 0x8000))
+ If (And (Local3, 0x8000))