On Sun, 11 Oct 2009, Yves-Alexis Perez wrote: > On sam, 2009-10-10 at 13:49 -0300, Henrique de Moraes Holschuh wrote: > > Compile thinkpad-acpi with the Kconfig option "CONFIG_THINKPAD_ACPI_DEBUG" > > enabled, and pass thinkpad-acpi the module option "debug=0x8004", either > > through the kernel command line (if it is builtin: > > thinkpad_acpi.debug=0x8004) or through an "options thinkpad-acpi ..." line > > in /etc/modprobe.d/*. > > > > Make sure you're logging kernel debug messages somewhere (check > > rsyslog/klogd/syslogd/whatever configuration). > > > > After that, do some testing and check the kernel log, thinkpad-acpi will > > tell you if something tries to manipulate radio state, and it will also tell > > you when it stores radio state to NVRAM. It should give us some idea of > > what's happening. > > When booting with debug-0x8004 I can see: > > [ 16.036499] thinkpad_acpi: bluetooth_init: initializing bluetooth subdriver > [ 16.037608] thinkpad_acpi: bluetooth_init: bluetooth is supported, status 0x01 > [ 16.039494] PM: Adding info for No Bus:rfkill0 > [ 16.039930] thinkpad_acpi: tpacpi_rfk_hook_set_block: request to change radio state to blocked > [ 16.039939] thinkpad_acpi: bluetooth_set_status: will attempt to disable bluetooth > > and then: > > [ 16.055929] thinkpad_acpi: tpacpi_rfk_hook_set_block: request to change radio state to unblocked > [ 16.055938] thinkpad_acpi: bluetooth_set_status: will attempt to enable bluetooth Ok. This means something is asking thinkpad-acpi to enable bluetooth at boot, even if you left it off before power down. thinkpad-acpi starts the rfkill interface with bluetooth *off*, but 20ms later, something turns it back on. I think it is the rfkill module that is doing it, because it is being done just 20ms after thinkpad-acpi was loaded. However, your box might be quite fast enough for 20ms to mean it was an automated action by userspace (i.e. something hooked to UDEV). Unfortunately, it is impossible to know for sure if a rfkill state change request was done due to kernel or userspace request. Please check if you (or something else) is setting any parameters on the rfkill module. Also, do this: 1. with the system fully operational, turn bluetooth off: echo 0 > /sys/bus/platform/devices/thinkpad_acpi/bluetooth_enable 2. Remove thinkpad-acpi: rmmod thinkpad-acpi Bluetooth should be off, and not present on lsusb. 3. load thinkpad-acpi: modprobe thinkpad-acpi <any parameters you want> If bluetooth goes ON, that means it is either the rfkill module or something hooked to udev that is doing it. If it doesn't, it means the culprit is likely some initscript. -- "One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ ibm-acpi-devel mailing list ibm-acpi-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/ibm-acpi-devel