jforbes pushed to kernel (f20). "linux v3.19.4"

notifications at fedoraproject.org notifications at fedoraproject.org
Mon Apr 13 21:20:03 UTC 2015


>From adc7cf69809c81c935959b36c5d23ae05153546a Mon Sep 17 00:00:00 2001
From: "Justin M. Forbes" <jforbes at redhat.com>
Date: Mon, 13 Apr 2015 16:19:49 -0500
Subject: linux v3.19.4


diff --git a/Input-synaptics-do-not-retrieve-the-board-id-on-old-.patch b/Input-synaptics-do-not-retrieve-the-board-id-on-old-.patch
deleted file mode 100644
index 51ba54d..0000000
--- a/Input-synaptics-do-not-retrieve-the-board-id-on-old-.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Date: Sun, 8 Mar 2015 22:33:36 -0700
-Subject: [PATCH] Input: synaptics - do not retrieve the board id on old
- firmwares
-
-The board id capability has been added in firmware 7.5.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index 2f42a712f3e0..2176874a41b1 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -250,6 +250,10 @@ static int synaptics_board_id(struct psmouse *psmouse)
- 	struct synaptics_data *priv = psmouse->private;
- 	unsigned char bid[3];
- 
-+	/* firmwares prior 7.5 have no board_id encoded */
-+	if (SYN_ID_FULL(priv->identity) < 0x705)
-+		return 0;
-+
- 	if (synaptics_send_cmd(psmouse, SYN_QUE_MODES, bid))
- 		return -1;
- 	priv->board_id = ((bid[0] & 0xfc) << 6) | bid[1];
--- 
-2.1.0
-
diff --git a/Input-synaptics-fix-middle-button-on-Lenovo-2015-pro.patch b/Input-synaptics-fix-middle-button-on-Lenovo-2015-pro.patch
deleted file mode 100644
index 8a677de..0000000
--- a/Input-synaptics-fix-middle-button-on-Lenovo-2015-pro.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From: Dmitry Torokhov <dmitry.torokhov at gmail.com>
-Date: Sun, 8 Mar 2015 22:30:43 -0700
-Subject: [PATCH] Input: synaptics - fix middle button on Lenovo 2015 products
-
-On the X1 Carbon 3rd gen (with a 2015 broadwell cpu), the physical middle
-button of the trackstick (attached to the touchpad serio device, of course)
-seems to get lost.
-
-Actually, the touchpads reports 3 extra buttons, which falls in the switch
-below to the '2' case. Let's handle the case of odd numbers also, so that
-the middle button finds its way back.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 44 ++++++++++++++++++++---------------------
- 1 file changed, 21 insertions(+), 23 deletions(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index 9567a708aa64..e78cc5578527 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -658,6 +658,18 @@ static void synaptics_parse_agm(const unsigned char buf[],
- 	priv->agm_pending = true;
- }
- 
-+static void synaptics_parse_ext_buttons(const unsigned char buf[],
-+					struct synaptics_data *priv,
-+					struct synaptics_hw_state *hw)
-+{
-+	unsigned int ext_bits =
-+		(SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) + 1) >> 1;
-+	unsigned int ext_mask = GENMASK(ext_bits - 1, 0);
-+
-+	hw->ext_buttons = buf[4] & ext_mask;
-+	hw->ext_buttons |= (buf[5] & ext_mask) << ext_bits;
-+}
-+
- static bool is_forcepad;
- 
- static int synaptics_parse_hw_state(const unsigned char buf[],
-@@ -744,28 +756,9 @@ static int synaptics_parse_hw_state(const unsigned char buf[],
- 			hw->down = ((buf[0] ^ buf[3]) & 0x02) ? 1 : 0;
- 		}
- 
--		if (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) &&
-+		if (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) > 0 &&
- 		    ((buf[0] ^ buf[3]) & 0x02)) {
--			switch (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) & ~0x01) {
--			default:
--				/*
--				 * if nExtBtn is greater than 8 it should be
--				 * considered invalid and treated as 0
--				 */
--				break;
--			case 8:
--				hw->ext_buttons |= ((buf[5] & 0x08)) ? 0x80 : 0;
--				hw->ext_buttons |= ((buf[4] & 0x08)) ? 0x40 : 0;
--			case 6:
--				hw->ext_buttons |= ((buf[5] & 0x04)) ? 0x20 : 0;
--				hw->ext_buttons |= ((buf[4] & 0x04)) ? 0x10 : 0;
--			case 4:
--				hw->ext_buttons |= ((buf[5] & 0x02)) ? 0x08 : 0;
--				hw->ext_buttons |= ((buf[4] & 0x02)) ? 0x04 : 0;
--			case 2:
--				hw->ext_buttons |= ((buf[5] & 0x01)) ? 0x02 : 0;
--				hw->ext_buttons |= ((buf[4] & 0x01)) ? 0x01 : 0;
--			}
-+			synaptics_parse_ext_buttons(buf, priv, hw);
- 		}
- 	} else {
- 		hw->x = (((buf[1] & 0x1f) << 8) | buf[2]);
-@@ -832,6 +825,7 @@ static void synaptics_report_buttons(struct psmouse *psmouse,
- {
- 	struct input_dev *dev = psmouse->dev;
- 	struct synaptics_data *priv = psmouse->private;
-+	int ext_bits = (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) + 1) >> 1;
- 	int i;
- 
- 	input_report_key(dev, BTN_LEFT, hw->left);
-@@ -845,8 +839,12 @@ static void synaptics_report_buttons(struct psmouse *psmouse,
- 		input_report_key(dev, BTN_BACK, hw->down);
- 	}
- 
--	for (i = 0; i < SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap); i++)
--		input_report_key(dev, BTN_0 + i, hw->ext_buttons & (1 << i));
-+	for (i = 0; i < ext_bits; i++) {
-+		input_report_key(dev, BTN_0 + 2 * i,
-+				 hw->ext_buttons & (1 << i));
-+		input_report_key(dev, BTN_1 + 2 * i,
-+				 hw->ext_buttons & (1 << (i + ext_bits)));
-+	}
- }
- 
- static void synaptics_report_slot(struct input_dev *dev, int slot,
--- 
-2.1.0
-
diff --git a/Input-synaptics-handle-spurious-release-of-trackstic.patch b/Input-synaptics-handle-spurious-release-of-trackstic.patch
deleted file mode 100644
index e3d3d7a..0000000
--- a/Input-synaptics-handle-spurious-release-of-trackstic.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Date: Sun, 8 Mar 2015 22:32:43 -0700
-Subject: [PATCH] Input: synaptics - handle spurious release of trackstick
- buttons
-
-The Fimware 8.1 has a bug in which the extra buttons are only sent when the
-ExtBit is 1.  This should be fixed in a future FW update which should have
-a bump of the minor version.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 33 +++++++++++++++++++++++++--------
- 1 file changed, 25 insertions(+), 8 deletions(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index e78cc5578527..2f42a712f3e0 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -820,14 +820,36 @@ static void synaptics_report_semi_mt_data(struct input_dev *dev,
- 	}
- }
- 
--static void synaptics_report_buttons(struct psmouse *psmouse,
--				     const struct synaptics_hw_state *hw)
-+static void synaptics_report_ext_buttons(struct psmouse *psmouse,
-+					 const struct synaptics_hw_state *hw)
- {
- 	struct input_dev *dev = psmouse->dev;
- 	struct synaptics_data *priv = psmouse->private;
- 	int ext_bits = (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap) + 1) >> 1;
- 	int i;
- 
-+	if (!SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap))
-+		return;
-+
-+	/* Bug in FW 8.1, buttons are reported only when ExtBit is 1 */
-+	if (SYN_ID_FULL(priv->identity) == 0x801 &&
-+	    !((psmouse->packet[0] ^ psmouse->packet[3]) & 0x02))
-+		return;
-+
-+	for (i = 0; i < ext_bits; i++) {
-+		input_report_key(dev, BTN_0 + 2 * i,
-+			hw->ext_buttons & (1 << i));
-+		input_report_key(dev, BTN_1 + 2 * i,
-+			hw->ext_buttons & (1 << (i + ext_bits)));
-+	}
-+}
-+
-+static void synaptics_report_buttons(struct psmouse *psmouse,
-+				     const struct synaptics_hw_state *hw)
-+{
-+	struct input_dev *dev = psmouse->dev;
-+	struct synaptics_data *priv = psmouse->private;
-+
- 	input_report_key(dev, BTN_LEFT, hw->left);
- 	input_report_key(dev, BTN_RIGHT, hw->right);
- 
-@@ -839,12 +861,7 @@ static void synaptics_report_buttons(struct psmouse *psmouse,
- 		input_report_key(dev, BTN_BACK, hw->down);
- 	}
- 
--	for (i = 0; i < ext_bits; i++) {
--		input_report_key(dev, BTN_0 + 2 * i,
--				 hw->ext_buttons & (1 << i));
--		input_report_key(dev, BTN_1 + 2 * i,
--				 hw->ext_buttons & (1 << (i + ext_bits)));
--	}
-+	synaptics_report_ext_buttons(psmouse, hw);
- }
- 
- static void synaptics_report_slot(struct input_dev *dev, int slot,
--- 
-2.1.0
-
diff --git a/Input-synaptics-log-queried-and-quirked-dimension-va.patch b/Input-synaptics-log-queried-and-quirked-dimension-va.patch
deleted file mode 100644
index b6f642e..0000000
--- a/Input-synaptics-log-queried-and-quirked-dimension-va.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From: Daniel Martin <consume.noise at gmail.com>
-Date: Sun, 8 Mar 2015 22:28:29 -0700
-Subject: [PATCH] Input: synaptics - log queried and quirked dimension values
-
-Logging the dimension values we queried and the values we use from a quirk
-to overwrite can be helpful for debugging.
-
-This partly relates to bug:
-    https://bugzilla.kernel.org/show_bug.cgi?id=91541
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Daniel Martin <consume.noise at gmail.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index b501dda75dcb..47c5dca20a60 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -362,6 +362,9 @@ static int synaptics_resolution(struct psmouse *psmouse)
- 		} else {
- 			priv->x_max = (resp[0] << 5) | ((resp[1] & 0x0f) << 1);
- 			priv->y_max = (resp[2] << 5) | ((resp[1] & 0xf0) >> 3);
-+			psmouse_info(psmouse,
-+				     "queried max coordinates: x [..%d], y [..%d]\n",
-+				     priv->x_max, priv->y_max);
- 		}
- 	}
- 
-@@ -373,6 +376,9 @@ static int synaptics_resolution(struct psmouse *psmouse)
- 		} else {
- 			priv->x_min = (resp[0] << 5) | ((resp[1] & 0x0f) << 1);
- 			priv->y_min = (resp[2] << 5) | ((resp[1] & 0xf0) >> 3);
-+			psmouse_info(psmouse,
-+				     "queried min coordinates: x [%d..], y [%d..]\n",
-+				     priv->x_min, priv->y_min);
- 		}
- 	}
- 
-@@ -395,6 +401,10 @@ static void synaptics_apply_quirks(struct psmouse *psmouse)
- 			priv->x_max = min_max_pnpid_table[i].x_max;
- 			priv->y_min = min_max_pnpid_table[i].y_min;
- 			priv->y_max = min_max_pnpid_table[i].y_max;
-+			psmouse_info(psmouse,
-+				     "quirked min/max coordinates: x [%d..%d], y [%d..%d]\n",
-+				     priv->x_min, priv->x_max,
-+				     priv->y_min, priv->y_max);
- 			break;
- 		}
- 	}
--- 
-2.1.0
-
diff --git a/Input-synaptics-query-min-dimensions-for-fw-v8.1.patch b/Input-synaptics-query-min-dimensions-for-fw-v8.1.patch
deleted file mode 100644
index a4ecc6e..0000000
--- a/Input-synaptics-query-min-dimensions-for-fw-v8.1.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From: Daniel Martin <consume.noise at gmail.com>
-Date: Sun, 8 Mar 2015 22:28:40 -0700
-Subject: [PATCH] Input: synaptics - query min dimensions for fw v8.1
-
-Query the min dimensions even if the check
-SYN_EXT_CAP_REQUESTS(priv->capabilities) >= 7 fails, but we know that the
-firmware version 8.1 is safe.
-
-With that we don't need quirks for post-2013 models anymore as they expose
-correct min and max dimensions.
-
-Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=91541
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Daniel Martin <consume.noise at gmail.com>
-  re-order the tests to check SYN_CAP_MIN_DIMENSIONS even on FW 8.1
-Signed-off-by: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index 47c5dca20a60..87c37f745b92 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -368,8 +368,14 @@ static int synaptics_resolution(struct psmouse *psmouse)
- 		}
- 	}
- 
--	if (SYN_EXT_CAP_REQUESTS(priv->capabilities) >= 7 &&
--	    SYN_CAP_MIN_DIMENSIONS(priv->ext_cap_0c)) {
-+	if (SYN_CAP_MIN_DIMENSIONS(priv->ext_cap_0c) &&
-+	    (SYN_EXT_CAP_REQUESTS(priv->capabilities) >= 7 ||
-+	     /*
-+	      * Firmware v8.1 does not report proper number of extended
-+	      * capabilities, but has been proven to report correct min
-+	      * coordinates.
-+	      */
-+	     SYN_ID_FULL(priv->identity) == 0x801)) {
- 		if (synaptics_send_cmd(psmouse, SYN_QUE_EXT_MIN_COORDS, resp)) {
- 			psmouse_warn(psmouse,
- 				     "device claims to have min coordinates query, but I'm not able to read it.\n");
--- 
-2.1.0
-
diff --git a/Input-synaptics-remove-obsolete-min-max-quirk-for-X2.patch b/Input-synaptics-remove-obsolete-min-max-quirk-for-X2.patch
deleted file mode 100644
index 5305078..0000000
--- a/Input-synaptics-remove-obsolete-min-max-quirk-for-X2.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From: Daniel Martin <consume.noise at gmail.com>
-Date: Sun, 8 Mar 2015 22:29:07 -0700
-Subject: [PATCH] Input: synaptics - remove obsolete min/max quirk for X240
-
-The firmware of the X240 (LEN0035, 2013/12) exposes the same values
-    x [1232..5710], y [1156..4696]
-as the quirk applies.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Daniel Martin <consume.noise at gmail.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index 87c37f745b92..af686a82b02b 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -131,7 +131,7 @@ static const struct min_max_quirk min_max_pnpid_table[] = {
- 		1024, 5052, 2258, 4832
- 	},
- 	{
--		(const char * const []){"LEN0035", "LEN0042", NULL},
-+		(const char * const []){"LEN0042", NULL},
- 		1232, 5710, 1156, 4696
- 	},
- 	{
--- 
-2.1.0
-
diff --git a/Input-synaptics-skip-quirks-when-post-2013-dimension.patch b/Input-synaptics-skip-quirks-when-post-2013-dimension.patch
deleted file mode 100644
index 4ab0617..0000000
--- a/Input-synaptics-skip-quirks-when-post-2013-dimension.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Date: Sun, 8 Mar 2015 22:29:25 -0700
-Subject: [PATCH] Input: synaptics - skip quirks when post-2013 dimensions
-
-Post-2013 Lenovo laptops provide correct min/max dimensions, which are
-different with the ones currently quirked.  According to
-https://bugzilla.kernel.org/show_bug.cgi?id=91541 the following board ids
-are assigned in the post-2013 touchpads:
-
-t440p/t440s: LEN0036 -> 2964/2962
-t540p:       LEN0034 -> 2964
-
-Using 2961 as the common minimum makes these 3 laptops OK. We may need
-to update those values later if other pnp_ids has a lower board_id.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Benjamin Tissoires <benjamin.tissoires at redhat.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index a900a385e5c3..9567a708aa64 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -144,7 +144,7 @@ static const struct min_max_quirk min_max_pnpid_table[] = {
- 		(const char * const []){"LEN0034", "LEN0036", "LEN0037",
- 					"LEN0039", "LEN2002", "LEN2004",
- 					NULL},
--		{ANY_BOARD_ID, ANY_BOARD_ID},
-+		{ANY_BOARD_ID, 2961},
- 		1024, 5112, 2024, 4832
- 	},
- 	{
--- 
-2.1.0
-
diff --git a/Input-synaptics-split-synaptics_resolution-query-fir.patch b/Input-synaptics-split-synaptics_resolution-query-fir.patch
deleted file mode 100644
index 56e9e31..0000000
--- a/Input-synaptics-split-synaptics_resolution-query-fir.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From: Daniel Martin <consume.noise at gmail.com>
-Date: Sun, 8 Mar 2015 22:27:37 -0700
-Subject: [PATCH] Input: synaptics - split synaptics_resolution(), query first
-
-Split the function synaptics_resolution() into synaptics_resolution() and
-synaptics_quirks().  synaptics_resolution() will be called before
-synaptics_quirks() to query dimensions and resolutions before overwriting
-them with quirks.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Daniel Martin <consume.noise at gmail.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 35 +++++++++++++++++++++++------------
- 1 file changed, 23 insertions(+), 12 deletions(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index 23e26e0768b5..b501dda75dcb 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -343,7 +343,6 @@ static int synaptics_resolution(struct psmouse *psmouse)
- {
- 	struct synaptics_data *priv = psmouse->private;
- 	unsigned char resp[3];
--	int i;
- 
- 	if (SYN_ID_MAJOR(priv->identity) < 4)
- 		return 0;
-@@ -355,17 +354,6 @@ static int synaptics_resolution(struct psmouse *psmouse)
- 		}
- 	}
- 
--	for (i = 0; min_max_pnpid_table[i].pnp_ids; i++) {
--		if (psmouse_matches_pnp_id(psmouse,
--					   min_max_pnpid_table[i].pnp_ids)) {
--			priv->x_min = min_max_pnpid_table[i].x_min;
--			priv->x_max = min_max_pnpid_table[i].x_max;
--			priv->y_min = min_max_pnpid_table[i].y_min;
--			priv->y_max = min_max_pnpid_table[i].y_max;
--			return 0;
--		}
--	}
--
- 	if (SYN_EXT_CAP_REQUESTS(priv->capabilities) >= 5 &&
- 	    SYN_CAP_MAX_DIMENSIONS(priv->ext_cap_0c)) {
- 		if (synaptics_send_cmd(psmouse, SYN_QUE_EXT_MAX_COORDS, resp)) {
-@@ -391,6 +379,27 @@ static int synaptics_resolution(struct psmouse *psmouse)
- 	return 0;
- }
- 
-+/*
-+ * Apply quirk(s) if the hardware matches
-+ */
-+
-+static void synaptics_apply_quirks(struct psmouse *psmouse)
-+{
-+	struct synaptics_data *priv = psmouse->private;
-+	int i;
-+
-+	for (i = 0; min_max_pnpid_table[i].pnp_ids; i++) {
-+		if (psmouse_matches_pnp_id(psmouse,
-+					   min_max_pnpid_table[i].pnp_ids)) {
-+			priv->x_min = min_max_pnpid_table[i].x_min;
-+			priv->x_max = min_max_pnpid_table[i].x_max;
-+			priv->y_min = min_max_pnpid_table[i].y_min;
-+			priv->y_max = min_max_pnpid_table[i].y_max;
-+			break;
-+		}
-+	}
-+}
-+
- static int synaptics_query_hardware(struct psmouse *psmouse)
- {
- 	if (synaptics_identify(psmouse))
-@@ -406,6 +415,8 @@ static int synaptics_query_hardware(struct psmouse *psmouse)
- 	if (synaptics_resolution(psmouse))
- 		return -1;
- 
-+	synaptics_apply_quirks(psmouse);
-+
- 	return 0;
- }
- 
--- 
-2.1.0
-
diff --git a/Input-synaptics-support-min-max-board-id-in-min_max_.patch b/Input-synaptics-support-min-max-board-id-in-min_max_.patch
deleted file mode 100644
index cb1a255..0000000
--- a/Input-synaptics-support-min-max-board-id-in-min_max_.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From: Daniel Martin <daniel.martin at secunet.com>
-Date: Sun, 8 Mar 2015 22:29:15 -0700
-Subject: [PATCH] Input: synaptics - support min/max board id in
- min_max_pnpid_table
-
-Add a min/max range for board ids to the min/max coordinates quirk. This
-makes it possible to restrict quirks to specific models based upon their
-board id. The define ANY_BOARD_ID (0) serves as a wild card.
-
-Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=91541
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Daniel Martin <daniel.martin at secunet.com>
-Acked-by: Hans de Goede <hdegoede at redhat.com>
-Signed-off-by: Dmitry Torokhov <dmitry.torokhov at gmail.com>
----
- drivers/input/mouse/synaptics.c | 42 +++++++++++++++++++++++++++++------------
- 1 file changed, 30 insertions(+), 12 deletions(-)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index af686a82b02b..a900a385e5c3 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -120,32 +120,41 @@ void synaptics_reset(struct psmouse *psmouse)
- 
- static bool cr48_profile_sensor;
- 
-+#define ANY_BOARD_ID 0
- struct min_max_quirk {
- 	const char * const *pnp_ids;
-+	struct {
-+		unsigned long int min, max;
-+	} board_id;
- 	int x_min, x_max, y_min, y_max;
- };
- 
- static const struct min_max_quirk min_max_pnpid_table[] = {
- 	{
- 		(const char * const []){"LEN0033", NULL},
-+		{ANY_BOARD_ID, ANY_BOARD_ID},
- 		1024, 5052, 2258, 4832
- 	},
- 	{
- 		(const char * const []){"LEN0042", NULL},
-+		{ANY_BOARD_ID, ANY_BOARD_ID},
- 		1232, 5710, 1156, 4696
- 	},
- 	{
- 		(const char * const []){"LEN0034", "LEN0036", "LEN0037",
- 					"LEN0039", "LEN2002", "LEN2004",
- 					NULL},
-+		{ANY_BOARD_ID, ANY_BOARD_ID},
- 		1024, 5112, 2024, 4832
- 	},
- 	{
- 		(const char * const []){"LEN2001", NULL},
-+		{ANY_BOARD_ID, ANY_BOARD_ID},
- 		1024, 5022, 2508, 4832
- 	},
- 	{
- 		(const char * const []){"LEN2006", NULL},
-+		{ANY_BOARD_ID, ANY_BOARD_ID},
- 		1264, 5675, 1171, 4688
- 	},
- 	{ }
-@@ -401,18 +410,27 @@ static void synaptics_apply_quirks(struct psmouse *psmouse)
- 	int i;
- 
- 	for (i = 0; min_max_pnpid_table[i].pnp_ids; i++) {
--		if (psmouse_matches_pnp_id(psmouse,
--					   min_max_pnpid_table[i].pnp_ids)) {
--			priv->x_min = min_max_pnpid_table[i].x_min;
--			priv->x_max = min_max_pnpid_table[i].x_max;
--			priv->y_min = min_max_pnpid_table[i].y_min;
--			priv->y_max = min_max_pnpid_table[i].y_max;
--			psmouse_info(psmouse,
--				     "quirked min/max coordinates: x [%d..%d], y [%d..%d]\n",
--				     priv->x_min, priv->x_max,
--				     priv->y_min, priv->y_max);
--			break;
--		}
-+		if (!psmouse_matches_pnp_id(psmouse,
-+					    min_max_pnpid_table[i].pnp_ids))
-+			continue;
-+
-+		if (min_max_pnpid_table[i].board_id.min != ANY_BOARD_ID &&
-+		    priv->board_id < min_max_pnpid_table[i].board_id.min)
-+			continue;
-+
-+		if (min_max_pnpid_table[i].board_id.max != ANY_BOARD_ID &&
-+		    priv->board_id > min_max_pnpid_table[i].board_id.max)
-+			continue;
-+
-+		priv->x_min = min_max_pnpid_table[i].x_min;
-+		priv->x_max = min_max_pnpid_table[i].x_max;
-+		priv->y_min = min_max_pnpid_table[i].y_min;
-+		priv->y_max = min_max_pnpid_table[i].y_max;
-+		psmouse_info(psmouse,
-+			     "quirked min/max coordinates: x [%d..%d], y [%d..%d]\n",
-+			     priv->x_min, priv->x_max,
-+			     priv->y_min, priv->y_max);
-+		break;
- 	}
- }
- 
--- 
-2.1.0
-
diff --git a/kernel.spec b/kernel.spec
index 417005d..6db242c 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -74,7 +74,7 @@ Summary: The Linux kernel
 %if 0%{?released_kernel}
 
 # Do we have a -stable update to apply?
-%define stable_update 3
+%define stable_update 4
 # Is it a -stable RC?
 %define stable_rc 0
 # Set rpm version accordingly
@@ -738,15 +738,6 @@ Patch26138: ext4-Allocate-entire-range-in-zero-range.patch
 Patch26141: Bluetooth-ath3k-Add-support-Atheros-AR5B195-combo-Mi.patch
 
 #rhbz 1200777 1200778
-Patch26150: Input-synaptics-split-synaptics_resolution-query-fir.patch
-Patch26151: Input-synaptics-log-queried-and-quirked-dimension-va.patch
-Patch26152: Input-synaptics-query-min-dimensions-for-fw-v8.1.patch
-Patch26153: Input-synaptics-remove-obsolete-min-max-quirk-for-X2.patch
-Patch26154: Input-synaptics-support-min-max-board-id-in-min_max_.patch
-Patch26155: Input-synaptics-skip-quirks-when-post-2013-dimension.patch
-Patch26156: Input-synaptics-fix-middle-button-on-Lenovo-2015-pro.patch
-Patch26157: Input-synaptics-handle-spurious-release-of-trackstic.patch
-Patch26158: Input-synaptics-do-not-retrieve-the-board-id-on-old-.patch
 Patch26159: Input-synaptics-retrieve-the-extended-capabilities-i.patch
 Patch26160: Input-synaptics-remove-TOPBUTTONPAD-property-for-Len.patch
 Patch26161: Input-synaptics-re-route-tracksticks-buttons-on-the-.patch
@@ -1487,15 +1478,6 @@ ApplyPatch ext4-Allocate-entire-range-in-zero-range.patch
 ApplyPatch Bluetooth-ath3k-Add-support-Atheros-AR5B195-combo-Mi.patch
 
 #rhbz 1200777 1200778
-ApplyPatch Input-synaptics-split-synaptics_resolution-query-fir.patch
-ApplyPatch Input-synaptics-log-queried-and-quirked-dimension-va.patch
-ApplyPatch Input-synaptics-query-min-dimensions-for-fw-v8.1.patch
-ApplyPatch Input-synaptics-remove-obsolete-min-max-quirk-for-X2.patch
-ApplyPatch Input-synaptics-support-min-max-board-id-in-min_max_.patch
-ApplyPatch Input-synaptics-skip-quirks-when-post-2013-dimension.patch
-ApplyPatch Input-synaptics-fix-middle-button-on-Lenovo-2015-pro.patch
-ApplyPatch Input-synaptics-handle-spurious-release-of-trackstic.patch
-ApplyPatch Input-synaptics-do-not-retrieve-the-board-id-on-old-.patch
 ApplyPatch Input-synaptics-retrieve-the-extended-capabilities-i.patch
 ApplyPatch Input-synaptics-remove-TOPBUTTONPAD-property-for-Len.patch
 ApplyPatch Input-synaptics-re-route-tracksticks-buttons-on-the-.patch
@@ -2348,6 +2330,9 @@ fi
 #                 ||----w |
 #                 ||     ||
 %changelog
+* Mon Apr 13 2015 Justin M. Forbes <jforbes at fedoraproject.org> - 3.19.4-100
+- Linux v3.19.4
+
 * Thu Apr 02 2015 Josh Boyer <jwboyer at fedoraproject.org>
 - DoS against IPv6 stacks due to improper handling of RA (rhbz 1203712 1208491)
 
diff --git a/sources b/sources
index 137f1ac..397ecc8 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
 d3fc8316d4d4d04b65cbc2d70799e763  linux-3.19.tar.xz
 15d8d2f97ce056488451a5bfb2944603  perf-man-3.19.tar.gz
-1fec75551b2f55fced43df8394b1fd9a  patch-3.19.3.xz
+0dc19b6abb9b7ae05ba7da48e29c984f  patch-3.19.4.xz
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/kernel.git/commit/?h=f20&id=adc7cf69809c81c935959b36c5d23ae05153546a


More information about the scm-commits mailing list