Re: [PATCH] Explicitly disable BT radio using rfkill interface on suspend

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Matthew:

Matthew Garrett wrote:
> On Mon, May 18, 2009 at 03:12:22PM -0500, Mario Limonciello wrote:
>   
>>  Dell BT devices need to be removed from the bus and reinserted
>>  so that userspace udev rules can transition the devices into the
>>  proper mode after S3 or S4.
>>     
>
> This sounds wrong. What kind of reinitialisation are you talking about?
>   
Dell BT adapters will startup in a HID mode.  In HID mode two logical
USB devices are exposed, a mouse and a keyboard.  If properly set, the
BT radio will work with pre-paired keyboards or mice in this mode.  This
is useful for things like BIOS control via a BT keyboard.  A command is
sent to one of the descriptors of the mouse to cause the device to
transition to HCI mode.  When transitioned to HCI mode, a radio device
is exposed allowing it to pair and operate with any BT device.

Here's what the utility looks like that ships with bluez:
http://git.kernel.org/?p=bluetooth/bluez.git;a=blob;f=tools/hid2hci.c;h=11d707fd76e940b884c9078907ab1504cd7350d4;hb=HEAD
Look at the switch_dell method to see how it works.

Currently, this is implemented via a set of udev rules shipped with
bluez that match the Dell device and transition it to HCI mode.
Here's the udev rule that matches:
ACTION=="add", ENV{ID_VENDOR}=="413c", ENV{ID_CLASS}=="mouse", ATTRS{bmAttributes}=="e0", KERNEL=="mouse*", RUN+="/usr/sbin/hid2hci --method dell -v $env{ID_VENDOR} -p $env{ID_MODEL} --mode hci"

When coming out of S3 if the killswitch isn't activated, the logical USB
mouse isn't coldplugged again preventing the udev rule from being
matched upon.  You can manually run hid2hci and the device will switch
modes.

-- 
Mario Limonciello
*Dell | Linux Engineering*
mario_limonciello@xxxxxxxx

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux