Input: wistron - generate normal key event if bluetooth or wifi not present
If the subsystem is not present, instead of not doing anything, report the key press as a normal key. This is done by modifying at initialization the copied key entry table. Signed-off-by: Eric Piel <Eric.Piel@tremplin-utc.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
5a54c01157
commit
a894403766
@ -1186,7 +1186,7 @@ static int wistron_setkeycode(struct input_dev *dev, int scancode, int keycode)
|
|||||||
|
|
||||||
static int __devinit setup_input_dev(void)
|
static int __devinit setup_input_dev(void)
|
||||||
{
|
{
|
||||||
const struct key_entry *key;
|
struct key_entry *key;
|
||||||
struct input_dev *input_dev;
|
struct input_dev *input_dev;
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
@ -1219,6 +1219,23 @@ static int __devinit setup_input_dev(void)
|
|||||||
set_bit(key->sw.code, input_dev->swbit);
|
set_bit(key->sw.code, input_dev->swbit);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
/* if wifi or bluetooth are not available, create normal keys */
|
||||||
|
case KE_WIFI:
|
||||||
|
if (!have_wifi) {
|
||||||
|
key->type = KE_KEY;
|
||||||
|
key->keycode = KEY_WLAN;
|
||||||
|
key--;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case KE_BLUETOOTH:
|
||||||
|
if (!have_bluetooth) {
|
||||||
|
key->type = KE_KEY;
|
||||||
|
key->keycode = KEY_BLUETOOTH;
|
||||||
|
key--;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user