[ltp] My war with T40 and ACPI drain

Bob Alexander linux-thinkpad@linux-thinkpad.org
Wed, 26 Jan 2005 17:27:43 +0100


Peter Frühberger wrote:
> Bob Alexander wrote:
> 
>> Peter Frühberger wrote:
>>
>>> Hi Bob, try this link,
>>> http://www.stud.uni-karlsruhe.de/~unatk/media/radeonstuff.tar.bz2
>>> here I got it working with 2.6.11-rc2,
>>> just read the info file, change the Power File to add your model and 
>>> apply the patches in the given order.
>>> If you want you can also apply swsusp2-2.1.5.15 for 2.6.11-rc2
>>>
>>> Good Luck
>>> Peter
>>>
>>>
>>
>> Peter,
>> (and of course all other friends giving me some hope and support).
>>
>> Let me understand better before I act.
>>
>> I currently have a 2.6.11-rc2 with ibm_acpi-0.10, swsusp2 2.1.5.15(and 
>> a patch to this).
>>
>> If I understand correctly I shoud edit the 
>> 05-radeonfb-Thinkpad-Power.patch file by REPLACING/OVERWRITING the 
>> first .ident entry with proper values for my thinkpad (which I can see 
>> also with the dmidecode command) and the corresponding .matches entry.
>>
>> I will then apply the patches in order ... did I get it ? :)
>>
>> TIA,
>> Bob
> 
> 
> Yes this is the way to go, for example the entry for my R40 2722-B3G 
> looks like that:
> 
> +       {
> +               .ident = "IBM ThinkPad R40 (2722-B3G)",
> +               .matches = {
> +                       DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
> +                       DMI_MATCH(DMI_PRODUCT_NAME, "2722B3G"),
> +               },
> +       },
> 
> just edit this entry to fit to your values.
> 
> If you go into S3 mode you should see sth. like that:
> radeonfb (0000:01:00.0): suspending to state: 3...
> radeonfb: switching to D2 state...
> radeonfb (0000:01:00.0): resuming from state: 3...
> radeonfb: switching to D0 state...
> 
> D2 state is the important thing.
> 
> I did compile radeonfb (new version) directly into the kernel and my 
> append lilo conf for 2.6.11-rc2 looks like that:
>         append="video=radeonfb:1024x768-16@60 apm=off acpi=on 
> pci=routeirq resume2=swap:/dev/hda5 acpi_sleep=s3_bios"
> 
> good luck
> Peter
> 
> 
> 
Peter,
thank you for the ongoing support. Still no luck.

I added radeonfb in my /etc/modules since I could not see any messages 
related to radeonfb in my logs.

I also added the same kern params in my GRUB menu.lst config (only diff 
is video=radeonfb:1400x1050-24@60 for my screen).

Now that I have done:

a) During boot the screen stays black for quite a long time (I finally 
see the last few lines of the console boot before GDM kicks in)

b) When I suspend I do not see the D2 state (see below)

c) The power drain is still in the 4.8W per hour :( :( :(


Here is some data:

this is what happens when I press Fn+F4 (changed sleep to echo -n 3 > 
/proc/acpi/sleep

Jan 26 16:46:57 localhost kernel: usbcore: deregistering driver usbhid
Jan 26 16:46:57 localhost udev[8417]: removing device node 
'/dev/input/mouse1'
Jan 26 16:46:57 localhost udev[8428]: removing device node 
'/dev/input/event2'
Jan 26 16:46:57 localhost hal.hotplug[8432]: DEVPATH is not set
Jan 26 16:46:57 localhost kernel: uhci_hcd 0000:00:1d.0: remove, state 1
Jan 26 16:46:57 localhost kernel: usb usb2: USB disconnect, address 1
Jan 26 16:46:57 localhost kernel: usb 2-1: USB disconnect, address 2
Jan 26 16:46:58 localhost kernel: uhci_hcd 0000:00:1d.0: USB bus 2 
deregistered
Jan 26 16:46:58 localhost kernel: uhci_hcd 0000:00:1d.1: remove, state 1
Jan 26 16:46:58 localhost kernel: usb usb3: USB disconnect, address 1
Jan 26 16:46:58 localhost kernel: uhci_hcd 0000:00:1d.1: USB bus 3 
deregistered
Jan 26 16:46:58 localhost kernel: uhci_hcd 0000:00:1d.2: remove, state 1
Jan 26 16:46:58 localhost kernel: usb usb4: USB disconnect, address 1
Jan 26 16:46:58 localhost kernel: uhci_hcd 0000:00:1d.2: USB bus 4 
deregistered
Jan 26 16:46:58 localhost kernel: ehci_hcd 0000:00:1d.7: remove, state 1
Jan 26 16:46:58 localhost kernel: usb usb1: USB disconnect, address 1
Jan 26 16:46:58 localhost kernel: ehci_hcd 0000:00:1d.7: USB bus 1 
deregistered
Jan 26 16:46:58 localhost logger: Fn+F4 Suspending to RAM
Jan 26 17:10:28 localhost kernel: radeonfb (0000:01:00.0): suspending to 
state:
3...
Jan 26 17:10:28 localhost kernel: Back to C!
Jan 26 17:10:28 localhost kernel: ACPI: PCI interrupt 0000:00:1f.1[A] -> 
GSI 11
(level, low) -> IRQ 11
Jan 26 17:10:28 localhost kernel: ACPI: PCI interrupt 0000:00:1f.5[B] -> 
GSI 11
(level, low) -> IRQ 11
Jan 26 17:10:28 localhost kernel: PCI: Setting latency timer of device 
0000:00:1f.5 to 64
Jan 26 17:10:28 localhost kernel: radeonfb (0000:01:00.0): resuming from 
state:
3...

these are some debug info during boot

Jan 26 17:13:46 localhost kernel: radeonfb_pci_register BEGIN
Jan 26 17:13:46 localhost kernel: ACPI: PCI interrupt 0000:01:00.0[A] -> 
GSI 11
(level, low) -> IRQ 11
Jan 26 17:13:46 localhost kernel: radeonfb (0000:01:00.0): Found 32768k 
of DDR 64 bits wide videoram
Jan 26 17:13:46 localhost kernel: radeonfb (0000:01:00.0): mapped 16384k 
videoram
Jan 26 17:13:46 localhost kernel: radeonfb: Retreived PLL infos from BIOS
Jan 26 17:13:46 localhost kernel: radeonfb: Reference=27.00 MHz 
(RefDiv=12) Memory=252.00 Mhz, System=200.00 MHz
Jan 26 17:13:46 localhost kernel: radeonfb: PLL min 20000 max 35000
Jan 26 17:13:46 localhost kernel: 1 chips in connector info
Jan 26 17:13:46 localhost kernel:  - chip 1 has 2 connectors
Jan 26 17:13:46 localhost kernel:   * connector 0 of type 2 (CRT) : 2300
Jan 26 17:13:46 localhost kernel:   * connector 1 of type 4 (DVI-D) : 4201
Jan 26 17:13:46 localhost kernel: Starting monitor auto detection...
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 1) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 2) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 3) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 4) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 2) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 4) ... not found
Jan 26 17:13:46 localhost kernel: Non-DDC laptop panel detected
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 3) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: I2C (port 4) ... not found
Jan 26 17:13:46 localhost kernel: radeonfb: Monitor 1 type LCD found
Jan 26 17:13:46 localhost kernel: radeonfb: Monitor 2 type no found
Jan 26 17:13:46 localhost kernel: radeonfb: panel ID string: SXGA+ 
Single (85MHz)
Jan 26 17:13:46 localhost kernel: radeonfb: detected LVDS panel size 
from BIOS:
1400x1050
Jan 26 17:13:46 localhost kernel: BIOS provided panel power delay: 1000
Jan 26 17:13:46 localhost kernel: radeondb: BIOS provided dividers will 
be used
Jan 26 17:13:46 localhost kernel: ref_divider = 6
Jan 26 17:13:46 localhost kernel: post_divider = 2
Jan 26 17:13:46 localhost kernel: fbk_divider = 4c
Jan 26 17:13:46 localhost kernel: Scanning BIOS table ...
Jan 26 17:13:46 localhost kernel:  320 x 350
Jan 26 17:13:46 localhost kernel:  320 x 400
Jan 26 17:13:46 localhost kernel:  320 x 400
Jan 26 17:13:46 localhost kernel:  320 x 480
Jan 26 17:13:46 localhost kernel:  400 x 600
Jan 26 17:13:46 localhost kernel:  512 x 384
Jan 26 17:13:46 localhost kernel:  640 x 350
Jan 26 17:13:46 localhost kernel:  640 x 400
Jan 26 17:13:46 localhost kernel:  640 x 475
Jan 26 17:13:46 localhost kernel:  640 x 480
Jan 26 17:13:46 localhost kernel:  800 x 600
Jan 26 17:13:46 localhost kernel:  1024 x 768
Jan 26 17:13:46 localhost kernel:  1152 x 864
Jan 26 17:13:46 localhost kernel:  1280 x 1024
Jan 26 17:13:46 localhost kernel:  1400 x 1050
Jan 26 17:13:46 localhost kernel: Found panel in BIOS table:
Jan 26 17:13:46 localhost kernel:   hblank: 200
Jan 26 17:13:46 localhost kernel:   hOver_plus: 72
Jan 26 17:13:46 localhost kernel:   hSync_width: 40
Jan 26 17:13:46 localhost kernel:   vblank: 12
Jan 26 17:13:46 localhost kernel:   vOver_plus: 2
Jan 26 17:13:46 localhost kernel:   vSync_width: 1
Jan 26 17:13:46 localhost kernel:   clock: 8496
Jan 26 17:13:46 localhost kernel: Setting up default mode based on panel 
info
Jan 26 17:13:46 localhost kernel: radeonfb: Dynamic Clock Power 
Management enabled
Jan 26 17:13:46 localhost kernel: radeonfb (0000:01:00.0): ATI Radeon Lf
Jan 26 17:13:46 localhost kernel: radeonfb_pci_register END