Commit a5c33d5f authored by Dmitry Torokhov's avatar Dmitry Torokhov
Browse files

Merge branch 'for-linus' into next

Sync up with 'for-linus' branch to resolve conflict in Elan touchpad
driver.
parents 9b031c86 a50ca295
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -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 */
+1 −0
Original line number Diff line number Diff line
@@ -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.
+5 −4
Original line number Diff line number Diff line
@@ -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]);
	}

+1 −0
Original line number Diff line number Diff line
@@ -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  */
+7 −0
Original line number Diff line number Diff line
@@ -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"),
Loading