Bug 41762

Summary: Sony Vaio VPCS12X9E: Plugging/unplugging the AC adapter does not generate ACPI events
Product: ACPI Reporter: M. Vefa Bicakci (m.v.b)
Component: Config-InterruptsAssignee: Aaron Lu (aaron.lu)
Status: CLOSED INVALID    
Severity: normal CC: aaron.lu, alan, kernel_vaio, rui.zhang, tianyu.lan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 3.3 Subsystem:
Regression: No Bisected commit-id:
Attachments: acpidump
dmesg output after a clean boot with kernel version 3.0.3
dmesg output after the mentioned test
dmesg output after the corrected test

Description M. Vefa Bicakci 2011-08-26 06:00:26 UTC
Hello,

As the summary line suggests, vanilla kernel version 3.0.3 does not
generate ACPI events on the Sony Vaio VPCS12X9E when the AC
adapter is plugged/unplugged.

Currently, Kubuntu 11.04 is installed on this machine. The stock kernel
that comes with Kubuntu 11.04, version 2.6.38, also exhibits the same problem,
so I am assuming that this problem is not a regression.

As suggested by [1], I am going to attach the following information to
this bug report:

- acpidump output
- dmesg output after a clean boot
- dmesg output after the following:
      # dmesg -c
      # echo 0x04 > /sys/module/acpi/parameters/debug_layer
      # echo 0x8800001f > /sys/module/acpi/parameters/debug_level
      plug/unplug the AC adapter

Thank you,

Mehmet Vefa Bicakci

[1] http://marc.info/?l=linux-acpi&m=119517666909485&w=2
Comment 1 M. Vefa Bicakci 2011-08-26 06:06:13 UTC
Created attachment 70362 [details]
acpidump

Output generated by acpidump
Comment 2 M. Vefa Bicakci 2011-08-26 06:06:57 UTC
Created attachment 70372 [details]
dmesg output after a clean boot with kernel version 3.0.3
Comment 3 M. Vefa Bicakci 2011-08-26 06:12:54 UTC
Created attachment 70382 [details]
dmesg output after the mentioned test

To produce this output, the following actions were taken
with kernel 3.0.3:

# dmesg -c
# echo 0x04 > /sys/module/acpi/parameters/debug_layer
# echo 0x8800001f > /sys/module/acpi/parameters/debug_level

- run "yacpi"
- unplug AC adapter
- refresh display of "yacpi"
- plug in AC adapter
- refresh display of "yacpi"

I should also note the following:

In order to generate the events in dmesg, I had to run the "yacpi" utility
and after unplugging/plugging in the AC adapter, I had to refresh the "yacpi" 
utility's display. "yacpi" reads its information from /proc.

If I do not refresh "yacpi"'s display after taking plugging/unplugging the
AC adapter, then the kernel does not generate ACPI events.
Comment 4 M. Vefa Bicakci 2011-08-26 06:33:27 UTC
Created attachment 70392 [details]
dmesg output after the corrected test

I just realized that I had not set the debug_level parameter of the acpi
kernel module properly before carrying out the test.

I am attaching the dmesg output after the steps mentioned below have been
carried out.

I should also note that this time I did not need to use "yacpi".

# dmesg -c
# echo 0x04 > /sys/module/acpi/parameters/debug_layer
# echo 0x8800001f > /sys/module/acpi/parameters/debug_level
- unplug AC adapter
- plug in AC adapter

The timing is as follows:
- 624 seconds after boot, the AC adapter was unplugged.
- 643 seconds after boot, the AC adapter was plugged in.
Comment 5 Zhang Rui 2012-01-18 05:47:17 UTC
how do you know it does not generate any ACPI event?
please attach the output of "grep . /sys/firmware/acpi/interrupts/*" both before and after plugging/unplugging the AC adapter.
Comment 6 Lan Tianyu 2012-02-07 06:52:40 UTC
Please run acpi_listen during plugging or unplugging AC adapter to scratch ACPI event.
Comment 7 luca90 2012-02-23 22:36:29 UTC
I've also this problem with a Sony Vaio VPCEH1S0E:
acpi_list when UNPLUGGED:
processor LNXCPU:00 00000081 00000000
processor LNXCPU:01 00000081 00000000
processor LNXCPU:02 00000081 00000000
processor LNXCPU:03 00000081 00000000
battery PNP0C0A:00 00000080 00000001
battery PNP0C0A:00 00000000 00000001
battery PNP0C0A:00 00000080 00000001
battery PNP0C0A:00 00000000 00000001
battery PNP0C0A:00 00000080 00000001

acpi_list when PLUGGED:
processor LNXCPU:00 00000081 00000000
processor LNXCPU:01 00000081 00000000
processor LNXCPU:02 00000081 00000000
processor LNXCPU:03 00000081 00000000
battery PNP0C0A:00 00000080 00000001
Comment 8 luca90 2012-02-23 22:38:15 UTC
PLUGGED:
grep . /sys/firmware/acpi/interrupts/*
/sys/firmware/acpi/interrupts/error:       0
/sys/firmware/acpi/interrupts/ff_gbl_lock:       0   disabled
/sys/firmware/acpi/interrupts/ff_pmtimer:       0   invalid
/sys/firmware/acpi/interrupts/ff_pwr_btn:       0   enabled
/sys/firmware/acpi/interrupts/ff_rt_clk:       0   disabled
/sys/firmware/acpi/interrupts/ff_slp_btn:       0   invalid
/sys/firmware/acpi/interrupts/gpe00:       0   invalid
/sys/firmware/acpi/interrupts/gpe01:       0   enabled
/sys/firmware/acpi/interrupts/gpe02:       3   enabled
/sys/firmware/acpi/interrupts/gpe03:       0   invalid
/sys/firmware/acpi/interrupts/gpe04:       0   invalid
/sys/firmware/acpi/interrupts/gpe05:       0   invalid
/sys/firmware/acpi/interrupts/gpe06:       0   enabled
/sys/firmware/acpi/interrupts/gpe07:       0   enabled
/sys/firmware/acpi/interrupts/gpe08:       0   invalid
/sys/firmware/acpi/interrupts/gpe09:       0   disabled
/sys/firmware/acpi/interrupts/gpe0A:       0   invalid
/sys/firmware/acpi/interrupts/gpe0B:       0   disabled
/sys/firmware/acpi/interrupts/gpe0C:       0   invalid
/sys/firmware/acpi/interrupts/gpe0D:       0   disabled
/sys/firmware/acpi/interrupts/gpe0E:       0   invalid
/sys/firmware/acpi/interrupts/gpe0F:       0   invalid
/sys/firmware/acpi/interrupts/gpe10:       0   invalid
/sys/firmware/acpi/interrupts/gpe11:       0   invalid
/sys/firmware/acpi/interrupts/gpe12:       0   invalid
/sys/firmware/acpi/interrupts/gpe13:       0   invalid
/sys/firmware/acpi/interrupts/gpe14:       0   invalid
/sys/firmware/acpi/interrupts/gpe15:       0   invalid
/sys/firmware/acpi/interrupts/gpe16:       0   invalid
/sys/firmware/acpi/interrupts/gpe17:   20942   enabled
/sys/firmware/acpi/interrupts/gpe18:       0   invalid
/sys/firmware/acpi/interrupts/gpe19:       0   invalid
/sys/firmware/acpi/interrupts/gpe1A:       0   invalid
/sys/firmware/acpi/interrupts/gpe1B:       0   invalid
/sys/firmware/acpi/interrupts/gpe1C:       0   invalid
/sys/firmware/acpi/interrupts/gpe1D:       0   invalid
/sys/firmware/acpi/interrupts/gpe1E:       0   invalid
/sys/firmware/acpi/interrupts/gpe1F:       0   invalid
/sys/firmware/acpi/interrupts/gpe20:       0   invalid
/sys/firmware/acpi/interrupts/gpe21:       0   invalid
/sys/firmware/acpi/interrupts/gpe22:       0   invalid
/sys/firmware/acpi/interrupts/gpe23:       0   invalid
/sys/firmware/acpi/interrupts/gpe24:       0   invalid
/sys/firmware/acpi/interrupts/gpe25:       0   invalid
/sys/firmware/acpi/interrupts/gpe26:       0   invalid
/sys/firmware/acpi/interrupts/gpe27:       0   invalid
/sys/firmware/acpi/interrupts/gpe28:       0   invalid
/sys/firmware/acpi/interrupts/gpe29:       0   invalid
/sys/firmware/acpi/interrupts/gpe2A:       0   invalid
/sys/firmware/acpi/interrupts/gpe2B:       0   invalid
/sys/firmware/acpi/interrupts/gpe2C:       0   invalid
/sys/firmware/acpi/interrupts/gpe2D:       0   invalid
/sys/firmware/acpi/interrupts/gpe2E:       0   invalid
/sys/firmware/acpi/interrupts/gpe2F:       0   invalid
/sys/firmware/acpi/interrupts/gpe30:       0   invalid
/sys/firmware/acpi/interrupts/gpe31:       0   invalid
/sys/firmware/acpi/interrupts/gpe32:       0   invalid
/sys/firmware/acpi/interrupts/gpe33:       0   invalid
/sys/firmware/acpi/interrupts/gpe34:       0   invalid
/sys/firmware/acpi/interrupts/gpe35:       0   invalid
/sys/firmware/acpi/interrupts/gpe36:       0   invalid
/sys/firmware/acpi/interrupts/gpe37:       0   invalid
/sys/firmware/acpi/interrupts/gpe38:       0   invalid
/sys/firmware/acpi/interrupts/gpe39:       0   invalid
/sys/firmware/acpi/interrupts/gpe3A:       0   invalid
/sys/firmware/acpi/interrupts/gpe3B:       0   invalid
/sys/firmware/acpi/interrupts/gpe3C:       0   invalid
/sys/firmware/acpi/interrupts/gpe3D:       0   invalid
/sys/firmware/acpi/interrupts/gpe3E:       0   invalid
/sys/firmware/acpi/interrupts/gpe3F:       0   invalid
/sys/firmware/acpi/interrupts/gpe_all:   20945
/sys/firmware/acpi/interrupts/sci:   20945
/sys/firmware/acpi/interrupts/sci_not:       0


UNPLUGGED:

grep . /sys/firmware/acpi/interrupts/*
/sys/firmware/acpi/interrupts/error:       0
/sys/firmware/acpi/interrupts/ff_gbl_lock:       0   disabled
/sys/firmware/acpi/interrupts/ff_pmtimer:       0   invalid
/sys/firmware/acpi/interrupts/ff_pwr_btn:       0   enabled
/sys/firmware/acpi/interrupts/ff_rt_clk:       0   disabled
/sys/firmware/acpi/interrupts/ff_slp_btn:       0   invalid
/sys/firmware/acpi/interrupts/gpe00:       0   invalid
/sys/firmware/acpi/interrupts/gpe01:       0   enabled
/sys/firmware/acpi/interrupts/gpe02:       3   enabled
/sys/firmware/acpi/interrupts/gpe03:       0   invalid
/sys/firmware/acpi/interrupts/gpe04:       0   invalid
/sys/firmware/acpi/interrupts/gpe05:       0   invalid
/sys/firmware/acpi/interrupts/gpe06:       0   enabled
/sys/firmware/acpi/interrupts/gpe07:       0   enabled
/sys/firmware/acpi/interrupts/gpe08:       0   invalid
/sys/firmware/acpi/interrupts/gpe09:       0   disabled
/sys/firmware/acpi/interrupts/gpe0A:       0   invalid
/sys/firmware/acpi/interrupts/gpe0B:       0   disabled
/sys/firmware/acpi/interrupts/gpe0C:       0   invalid
/sys/firmware/acpi/interrupts/gpe0D:       0   enabled
/sys/firmware/acpi/interrupts/gpe0E:       0   invalid
/sys/firmware/acpi/interrupts/gpe0F:       0   invalid
/sys/firmware/acpi/interrupts/gpe10:       0   invalid
/sys/firmware/acpi/interrupts/gpe11:       0   invalid
/sys/firmware/acpi/interrupts/gpe12:       0   invalid
/sys/firmware/acpi/interrupts/gpe13:       0   invalid
/sys/firmware/acpi/interrupts/gpe14:       0   invalid
/sys/firmware/acpi/interrupts/gpe15:       0   invalid
/sys/firmware/acpi/interrupts/gpe16:       0   invalid
/sys/firmware/acpi/interrupts/gpe17:   21163   enabled
/sys/firmware/acpi/interrupts/gpe18:       0   invalid
/sys/firmware/acpi/interrupts/gpe19:       0   invalid
/sys/firmware/acpi/interrupts/gpe1A:       0   invalid
/sys/firmware/acpi/interrupts/gpe1B:       0   invalid
/sys/firmware/acpi/interrupts/gpe1C:       0   invalid
/sys/firmware/acpi/interrupts/gpe1D:       0   invalid
/sys/firmware/acpi/interrupts/gpe1E:       0   invalid
/sys/firmware/acpi/interrupts/gpe1F:       0   invalid
/sys/firmware/acpi/interrupts/gpe20:       0   invalid
/sys/firmware/acpi/interrupts/gpe21:       0   invalid
/sys/firmware/acpi/interrupts/gpe22:       0   invalid
/sys/firmware/acpi/interrupts/gpe23:       0   invalid
/sys/firmware/acpi/interrupts/gpe24:       0   invalid
/sys/firmware/acpi/interrupts/gpe25:       0   invalid
/sys/firmware/acpi/interrupts/gpe26:       0   invalid
/sys/firmware/acpi/interrupts/gpe27:       0   invalid
/sys/firmware/acpi/interrupts/gpe28:       0   invalid
/sys/firmware/acpi/interrupts/gpe29:       0   invalid
/sys/firmware/acpi/interrupts/gpe2A:       0   invalid
/sys/firmware/acpi/interrupts/gpe2B:       0   invalid
/sys/firmware/acpi/interrupts/gpe2C:       0   invalid
/sys/firmware/acpi/interrupts/gpe2D:       0   invalid
/sys/firmware/acpi/interrupts/gpe2E:       0   invalid
/sys/firmware/acpi/interrupts/gpe2F:       0   invalid
/sys/firmware/acpi/interrupts/gpe30:       0   invalid
/sys/firmware/acpi/interrupts/gpe31:       0   invalid
/sys/firmware/acpi/interrupts/gpe32:       0   invalid
/sys/firmware/acpi/interrupts/gpe33:       0   invalid
/sys/firmware/acpi/interrupts/gpe34:       0   invalid
/sys/firmware/acpi/interrupts/gpe35:       0   invalid
/sys/firmware/acpi/interrupts/gpe36:       0   invalid
/sys/firmware/acpi/interrupts/gpe37:       0   invalid
/sys/firmware/acpi/interrupts/gpe38:       0   invalid
/sys/firmware/acpi/interrupts/gpe39:       0   invalid
/sys/firmware/acpi/interrupts/gpe3A:       0   invalid
/sys/firmware/acpi/interrupts/gpe3B:       0   invalid
/sys/firmware/acpi/interrupts/gpe3C:       0   invalid
/sys/firmware/acpi/interrupts/gpe3D:       0   invalid
/sys/firmware/acpi/interrupts/gpe3E:       0   invalid
/sys/firmware/acpi/interrupts/gpe3F:       0   invalid
/sys/firmware/acpi/interrupts/gpe_all:   21166
/sys/firmware/acpi/interrupts/sci:   21166
/sys/firmware/acpi/interrupts/sci_not:       0
Comment 9 luca90 2012-02-25 10:43:03 UTC
ps: i'm on kernel 3.3-rcX now. Also on kernel 2.6.39 - 3.0.X - 3.1.X - 3.2.X i've this problem!
Comment 10 Aaron Lu 2013-03-29 09:06:38 UTC
From the DSDT table, I don't see the AC adapter device gets notified anywhere, so I don't think there is any chance for the kernel to capture such events if firmware(acpi) does not support it.