mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-27 06:34:11 +08:00
Merge branch 'for-linus' into next
Sync up with 'for-linus' branch to resolve conflict in Elan touchpad driver.
This commit is contained in:
commit
a5c33d5f74
@ -105,6 +105,14 @@
|
||||
linux,code = <SW_FRONT_PROXIMITY>;
|
||||
linux,can-disable;
|
||||
};
|
||||
|
||||
machine_cover {
|
||||
label = "Machine Cover";
|
||||
gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
|
||||
linux,input-type = <EV_SW>;
|
||||
linux,code = <SW_MACHINE_COVER>;
|
||||
linux,can-disable;
|
||||
};
|
||||
};
|
||||
|
||||
isp1707: isp1707 {
|
||||
@ -819,10 +827,6 @@
|
||||
pinctrl-0 = <&mmc1_pins>;
|
||||
vmmc-supply = <&vmmc1>;
|
||||
bus-width = <4>;
|
||||
/* For debugging, it is often good idea to remove this GPIO.
|
||||
It means you can remove back cover (to reboot by removing
|
||||
battery) and still use the MMC card. */
|
||||
cd-gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
|
||||
};
|
||||
|
||||
/* most boards use vaux3, only some old versions use vmmc2 instead */
|
||||
|
@ -45,6 +45,7 @@ config JOYSTICK_A3D
|
||||
config JOYSTICK_ADI
|
||||
tristate "Logitech ADI digital joysticks and gamepads"
|
||||
select GAMEPORT
|
||||
depends on ADI!=m # avoid module name conflict
|
||||
help
|
||||
Say Y here if you have a Logitech controller using the ADI
|
||||
protocol over the PC gameport.
|
||||
|
@ -997,6 +997,8 @@ static void elan_report_absolute(struct elan_tp_data *data, u8 *packet,
|
||||
u8 hover_info = packet[ETP_HOVER_INFO_OFFSET];
|
||||
bool contact_valid, hover_event;
|
||||
|
||||
pm_wakeup_event(&data->client->dev, 0);
|
||||
|
||||
hover_event = hover_info & BIT(6);
|
||||
|
||||
for (i = 0; i < ETP_MAX_FINGERS; i++) {
|
||||
@ -1021,6 +1023,8 @@ static void elan_report_trackpoint(struct elan_tp_data *data, u8 *report)
|
||||
u8 *packet = &report[ETP_REPORT_ID_OFFSET + 1];
|
||||
int x, y;
|
||||
|
||||
pm_wakeup_event(&data->client->dev, 0);
|
||||
|
||||
if (!data->tp_input) {
|
||||
dev_warn_once(&data->client->dev,
|
||||
"received a trackpoint report while no trackpoint device has been created. Please report upstream.\n");
|
||||
@ -1045,7 +1049,6 @@ static void elan_report_trackpoint(struct elan_tp_data *data, u8 *report)
|
||||
static irqreturn_t elan_isr(int irq, void *dev_id)
|
||||
{
|
||||
struct elan_tp_data *data = dev_id;
|
||||
struct device *dev = &data->client->dev;
|
||||
int error;
|
||||
u8 report[ETP_MAX_REPORT_LEN];
|
||||
|
||||
@ -1063,8 +1066,6 @@ static irqreturn_t elan_isr(int irq, void *dev_id)
|
||||
if (error)
|
||||
goto out;
|
||||
|
||||
pm_wakeup_event(dev, 0);
|
||||
|
||||
switch (report[ETP_REPORT_ID_OFFSET]) {
|
||||
case ETP_REPORT_ID:
|
||||
elan_report_absolute(data, report, false);
|
||||
@ -1076,7 +1077,7 @@ static irqreturn_t elan_isr(int irq, void *dev_id)
|
||||
elan_report_trackpoint(data, report);
|
||||
break;
|
||||
default:
|
||||
dev_err(dev, "invalid report id data (%x)\n",
|
||||
dev_err(&data->client->dev, "invalid report id data (%x)\n",
|
||||
report[ETP_REPORT_ID_OFFSET]);
|
||||
}
|
||||
|
||||
|
@ -179,6 +179,7 @@ static const char * const smbus_pnp_ids[] = {
|
||||
"LEN0093", /* T480 */
|
||||
"LEN0096", /* X280 */
|
||||
"LEN0097", /* X280 -> ALPS trackpoint */
|
||||
"LEN0099", /* X1 Extreme 1st */
|
||||
"LEN009b", /* T580 */
|
||||
"LEN200f", /* T450s */
|
||||
"LEN2044", /* L470 */
|
||||
|
@ -425,6 +425,13 @@ static const struct dmi_system_id __initconst i8042_dmi_nomux_table[] = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "076804U"),
|
||||
},
|
||||
},
|
||||
{
|
||||
/* Lenovo XiaoXin Air 12 */
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "80UN"),
|
||||
},
|
||||
},
|
||||
{
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
|
||||
|
@ -1325,7 +1325,6 @@ static int elants_i2c_probe(struct i2c_client *client,
|
||||
0, MT_TOOL_PALM, 0, 0);
|
||||
input_abs_set_res(ts->input, ABS_MT_POSITION_X, ts->x_res);
|
||||
input_abs_set_res(ts->input, ABS_MT_POSITION_Y, ts->y_res);
|
||||
input_abs_set_res(ts->input, ABS_MT_TOUCH_MAJOR, 1);
|
||||
|
||||
touchscreen_parse_properties(ts->input, true, &ts->prop);
|
||||
|
||||
|
@ -67,8 +67,15 @@ static const struct acpi_device_id elan_acpi_id[] = {
|
||||
{ "ELAN062B", 0 },
|
||||
{ "ELAN062C", 0 },
|
||||
{ "ELAN062D", 0 },
|
||||
{ "ELAN062E", 0 }, /* Lenovo V340 Whiskey Lake U */
|
||||
{ "ELAN062F", 0 }, /* Lenovo V340 Comet Lake U */
|
||||
{ "ELAN0631", 0 },
|
||||
{ "ELAN0632", 0 },
|
||||
{ "ELAN0633", 0 }, /* Lenovo S145 */
|
||||
{ "ELAN0634", 0 }, /* Lenovo V340 Ice lake */
|
||||
{ "ELAN0635", 0 }, /* Lenovo V1415-IIL */
|
||||
{ "ELAN0636", 0 }, /* Lenovo V1415-Dali */
|
||||
{ "ELAN0637", 0 }, /* Lenovo V1415-IGLR */
|
||||
{ "ELAN1000", 0 },
|
||||
{ }
|
||||
};
|
||||
|
@ -318,7 +318,7 @@ struct pcmcia_device_id {
|
||||
#define INPUT_DEVICE_ID_LED_MAX 0x0f
|
||||
#define INPUT_DEVICE_ID_SND_MAX 0x07
|
||||
#define INPUT_DEVICE_ID_FF_MAX 0x7f
|
||||
#define INPUT_DEVICE_ID_SW_MAX 0x0f
|
||||
#define INPUT_DEVICE_ID_SW_MAX 0x10
|
||||
#define INPUT_DEVICE_ID_PROP_MAX 0x1f
|
||||
|
||||
#define INPUT_DEVICE_ID_MATCH_BUS 1
|
||||
|
@ -888,7 +888,8 @@
|
||||
#define SW_LINEIN_INSERT 0x0d /* set = inserted */
|
||||
#define SW_MUTE_DEVICE 0x0e /* set = device disabled */
|
||||
#define SW_PEN_INSERTED 0x0f /* set = pen inserted */
|
||||
#define SW_MAX 0x0f
|
||||
#define SW_MACHINE_COVER 0x10 /* set = cover closed */
|
||||
#define SW_MAX 0x10
|
||||
#define SW_CNT (SW_MAX+1)
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user