mirror of https://gitee.com/openkylin/linux.git
Merge branch 'sony-laptop' into release
This commit is contained in:
commit
7f3745ad7a
|
@ -1065,6 +1065,7 @@ static int acpi_ec_resume(struct acpi_device *device)
|
||||||
struct acpi_ec *ec = acpi_driver_data(device);
|
struct acpi_ec *ec = acpi_driver_data(device);
|
||||||
/* Enable use of GPE back */
|
/* Enable use of GPE back */
|
||||||
clear_bit(EC_FLAGS_NO_GPE, &ec->flags);
|
clear_bit(EC_FLAGS_NO_GPE, &ec->flags);
|
||||||
|
set_bit(EC_FLAGS_GPE_MODE, &ec->flags);
|
||||||
acpi_enable_gpe(NULL, ec->gpe);
|
acpi_enable_gpe(NULL, ec->gpe);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -317,7 +317,8 @@ static void sony_laptop_report_input_event(u8 event)
|
||||||
struct input_dev *key_dev = sony_laptop_input.key_dev;
|
struct input_dev *key_dev = sony_laptop_input.key_dev;
|
||||||
struct sony_laptop_keypress kp = { NULL };
|
struct sony_laptop_keypress kp = { NULL };
|
||||||
|
|
||||||
if (event == SONYPI_EVENT_FNKEY_RELEASED) {
|
if (event == SONYPI_EVENT_FNKEY_RELEASED ||
|
||||||
|
event == SONYPI_EVENT_ANYBUTTON_RELEASED) {
|
||||||
/* Nothing, not all VAIOs generate this event */
|
/* Nothing, not all VAIOs generate this event */
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -905,7 +906,6 @@ static struct sony_nc_event sony_127_events[] = {
|
||||||
{ 0x05, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
{ 0x05, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
||||||
{ 0x86, SONYPI_EVENT_PKEY_P5 },
|
{ 0x86, SONYPI_EVENT_PKEY_P5 },
|
||||||
{ 0x06, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
{ 0x06, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
||||||
{ 0x06, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
|
||||||
{ 0x87, SONYPI_EVENT_SETTINGKEY_PRESSED },
|
{ 0x87, SONYPI_EVENT_SETTINGKEY_PRESSED },
|
||||||
{ 0x07, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
{ 0x07, SONYPI_EVENT_ANYBUTTON_RELEASED },
|
||||||
{ 0, 0 },
|
{ 0, 0 },
|
||||||
|
@ -1004,6 +1004,7 @@ static int sony_nc_function_setup(struct acpi_device *device)
|
||||||
sony_call_snc_handle(0x0100, 0, &result);
|
sony_call_snc_handle(0x0100, 0, &result);
|
||||||
sony_call_snc_handle(0x0101, 0, &result);
|
sony_call_snc_handle(0x0101, 0, &result);
|
||||||
sony_call_snc_handle(0x0102, 0x100, &result);
|
sony_call_snc_handle(0x0102, 0x100, &result);
|
||||||
|
sony_call_snc_handle(0x0127, 0, &result);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1040,7 +1041,7 @@ static int sony_nc_resume(struct acpi_device *device)
|
||||||
|
|
||||||
/* set the last requested brightness level */
|
/* set the last requested brightness level */
|
||||||
if (sony_backlight_device &&
|
if (sony_backlight_device &&
|
||||||
!sony_backlight_update_status(sony_backlight_device))
|
sony_backlight_update_status(sony_backlight_device) < 0)
|
||||||
printk(KERN_WARNING DRV_PFX "unable to restore brightness level\n");
|
printk(KERN_WARNING DRV_PFX "unable to restore brightness level\n");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1102,8 +1103,11 @@ static int sony_nc_setup_wifi_rfkill(struct acpi_device *device)
|
||||||
err = rfkill_register(sony_wifi_rfkill);
|
err = rfkill_register(sony_wifi_rfkill);
|
||||||
if (err)
|
if (err)
|
||||||
rfkill_free(sony_wifi_rfkill);
|
rfkill_free(sony_wifi_rfkill);
|
||||||
else
|
else {
|
||||||
sony_rfkill_devices[SONY_WIFI] = sony_wifi_rfkill;
|
sony_rfkill_devices[SONY_WIFI] = sony_wifi_rfkill;
|
||||||
|
sony_nc_rfkill_set(sony_wifi_rfkill->data,
|
||||||
|
RFKILL_STATE_UNBLOCKED);
|
||||||
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1124,8 +1128,11 @@ static int sony_nc_setup_bluetooth_rfkill(struct acpi_device *device)
|
||||||
err = rfkill_register(sony_bluetooth_rfkill);
|
err = rfkill_register(sony_bluetooth_rfkill);
|
||||||
if (err)
|
if (err)
|
||||||
rfkill_free(sony_bluetooth_rfkill);
|
rfkill_free(sony_bluetooth_rfkill);
|
||||||
else
|
else {
|
||||||
sony_rfkill_devices[SONY_BLUETOOTH] = sony_bluetooth_rfkill;
|
sony_rfkill_devices[SONY_BLUETOOTH] = sony_bluetooth_rfkill;
|
||||||
|
sony_nc_rfkill_set(sony_bluetooth_rfkill->data,
|
||||||
|
RFKILL_STATE_UNBLOCKED);
|
||||||
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1145,8 +1152,11 @@ static int sony_nc_setup_wwan_rfkill(struct acpi_device *device)
|
||||||
err = rfkill_register(sony_wwan_rfkill);
|
err = rfkill_register(sony_wwan_rfkill);
|
||||||
if (err)
|
if (err)
|
||||||
rfkill_free(sony_wwan_rfkill);
|
rfkill_free(sony_wwan_rfkill);
|
||||||
else
|
else {
|
||||||
sony_rfkill_devices[SONY_WWAN] = sony_wwan_rfkill;
|
sony_rfkill_devices[SONY_WWAN] = sony_wwan_rfkill;
|
||||||
|
sony_nc_rfkill_set(sony_wwan_rfkill->data,
|
||||||
|
RFKILL_STATE_UNBLOCKED);
|
||||||
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1166,8 +1176,11 @@ static int sony_nc_setup_wimax_rfkill(struct acpi_device *device)
|
||||||
err = rfkill_register(sony_wimax_rfkill);
|
err = rfkill_register(sony_wimax_rfkill);
|
||||||
if (err)
|
if (err)
|
||||||
rfkill_free(sony_wimax_rfkill);
|
rfkill_free(sony_wimax_rfkill);
|
||||||
else
|
else {
|
||||||
sony_rfkill_devices[SONY_WIMAX] = sony_wimax_rfkill;
|
sony_rfkill_devices[SONY_WIMAX] = sony_wimax_rfkill;
|
||||||
|
sony_nc_rfkill_set(sony_wimax_rfkill->data,
|
||||||
|
RFKILL_STATE_UNBLOCKED);
|
||||||
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue