Skip to content

Commit

Permalink
[RFKILL]: Add support for ultrawideband
Browse files Browse the repository at this point in the history
This patch will add support for UWB keys to rfkill,
support for this has been requested by Inaky.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Ivo van Doorn authored and David S. Miller committed Oct 10, 2007
1 parent 234a0ca commit e066548
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 0 deletions.
1 change: 1 addition & 0 deletions include/linux/input.h
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,7 @@ struct input_absinfo {

#define KEY_BLUETOOTH 237
#define KEY_WLAN 238
#define KEY_UWB 239

#define KEY_UNKNOWN 240

Expand Down
2 changes: 2 additions & 0 deletions include/linux/rfkill.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,12 @@
* enum rfkill_type - type of rfkill switch.
* RFKILL_TYPE_WLAN: switch is no a Wireless network devices.
* RFKILL_TYPE_BlUETOOTH: switch is on a bluetooth device.
* RFKILL_TYPE_UWB: switch is on a Ultra wideband device.
*/
enum rfkill_type {
RFKILL_TYPE_WLAN ,
RFKILL_TYPE_BLUETOOTH,
RFKILL_TYPE_UWB,
RFKILL_TYPE_MAX,
};

Expand Down
9 changes: 9 additions & 0 deletions net/rfkill/rfkill-input.c
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ static void rfkill_schedule_toggle(struct rfkill_task *task)

static DEFINE_RFKILL_TASK(rfkill_wlan, RFKILL_TYPE_WLAN);
static DEFINE_RFKILL_TASK(rfkill_bt, RFKILL_TYPE_BLUETOOTH);
static DEFINE_RFKILL_TASK(rfkill_uwb, RFKILL_TYPE_UWB);

static void rfkill_event(struct input_handle *handle, unsigned int type,
unsigned int code, int down)
Expand All @@ -93,6 +94,9 @@ static void rfkill_event(struct input_handle *handle, unsigned int type,
case KEY_BLUETOOTH:
rfkill_schedule_toggle(&rfkill_bt);
break;
case KEY_UWB:
rfkill_schedule_toggle(&rfkill_uwb);
break;
default:
break;
}
Expand Down Expand Up @@ -148,6 +152,11 @@ static const struct input_device_id rfkill_ids[] = {
.evbit = { BIT(EV_KEY) },
.keybit = { [LONG(KEY_BLUETOOTH)] = BIT(KEY_BLUETOOTH) },
},
{
.flags = INPUT_DEVICE_ID_MATCH_EVBIT | INPUT_DEVICE_ID_MATCH_KEYBIT,
.evbit = { BIT(EV_KEY) },
.keybit = { [LONG(KEY_UWB)] = BIT(KEY_UWB) },
},
{ }
};

Expand Down
3 changes: 3 additions & 0 deletions net/rfkill/rfkill.c
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,9 @@ static ssize_t rfkill_type_show(struct device *dev,
case RFKILL_TYPE_BLUETOOTH:
type = "bluetooth";
break;
case RFKILL_TYPE_UWB:
type = "ultrawideband";
break;
default:
BUG();
}
Expand Down

0 comments on commit e066548

Please sign in to comment.