--- /dev/null
+From d3b28a96e1fd573b3ba28896c52328553029e10c Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Fri, 18 Nov 2022 15:01:47 -0500
+Subject: Bluetooth: L2CAP: Fix u8 overflow
+
+From: Sungwoo Kim <iam@sung-woo.kim>
+
+[ Upstream commit bcd70260ef56e0aee8a4fc6cd214a419900b0765 ]
+
+By keep sending L2CAP_CONF_REQ packets, chan->num_conf_rsp increases
+multiple times and eventually it will wrap around the maximum number
+(i.e., 255).
+This patch prevents this by adding a boundary check with
+L2CAP_MAX_CONF_RSP
+
+Btmon log:
+Bluetooth monitor ver 5.64
+= Note: Linux version 6.1.0-rc2 (x86_64) 0.264594
+= Note: Bluetooth subsystem version 2.22 0.264636
+@ MGMT Open: btmon (privileged) version 1.22 {0x0001} 0.272191
+= New Index: 00:00:00:00:00:00 (Primary,Virtual,hci0) [hci0] 13.877604
+@ RAW Open: 9496 (privileged) version 2.22 {0x0002} 13.890741
+= Open Index: 00:00:00:00:00:00 [hci0] 13.900426
+(...)
+> ACL Data RX: Handle 200 flags 0x00 dlen 1033 #32 [hci0] 14.273106
+ invalid packet size (12 != 1033)
+ 08 00 01 00 02 01 04 00 01 10 ff ff ............
+> ACL Data RX: Handle 200 flags 0x00 dlen 1547 #33 [hci0] 14.273561
+ invalid packet size (14 != 1547)
+ 0a 00 01 00 04 01 06 00 40 00 00 00 00 00 ........@.....
+> ACL Data RX: Handle 200 flags 0x00 dlen 2061 #34 [hci0] 14.274390
+ invalid packet size (16 != 2061)
+ 0c 00 01 00 04 01 08 00 40 00 00 00 00 00 00 04 ........@.......
+> ACL Data RX: Handle 200 flags 0x00 dlen 2061 #35 [hci0] 14.274932
+ invalid packet size (16 != 2061)
+ 0c 00 01 00 04 01 08 00 40 00 00 00 07 00 03 00 ........@.......
+= bluetoothd: Bluetooth daemon 5.43 14.401828
+> ACL Data RX: Handle 200 flags 0x00 dlen 1033 #36 [hci0] 14.275753
+ invalid packet size (12 != 1033)
+ 08 00 01 00 04 01 04 00 40 00 00 00 ........@...
+
+Signed-off-by: Sungwoo Kim <iam@sung-woo.kim>
+Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ net/bluetooth/l2cap_core.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
+index fb2abd0e979a..0e51ed3412ef 100644
+--- a/net/bluetooth/l2cap_core.c
++++ b/net/bluetooth/l2cap_core.c
+@@ -4210,7 +4210,8 @@ static inline int l2cap_config_req(struct l2cap_conn *conn,
+
+ chan->ident = cmd->ident;
+ l2cap_send_cmd(conn, cmd->ident, L2CAP_CONF_RSP, len, rsp);
+- chan->num_conf_rsp++;
++ if (chan->num_conf_rsp < L2CAP_CONF_MAX_CONF_RSP)
++ chan->num_conf_rsp++;
+
+ /* Reset config buffer. */
+ chan->conf_len = 0;
+--
+2.35.1
+
--- /dev/null
+From 9de775e1248d931f47e88a31d825341fca7f93f5 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 25 Nov 2020 23:37:45 +0100
+Subject: HID: ite: Add support for Acer S1002 keyboard-dock
+
+From: Hans de Goede <hdegoede@redhat.com>
+
+[ Upstream commit c961facb5b19634eee5bcdd91fc5bf3f1c545bc5 ]
+
+Make the hid-ite driver handle the Acer S1002 keyboard-dock, this
+leads to 2 improvements:
+
+1. The non working wifi-toggle hotkey now works.
+2. Toggling the touchpad on of with the hotkey will no show OSD
+notifications in e.g. GNOME3. The actual toggling is handled inside
+the keyboard, this adds support for notifying evdev listeners about this.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Stable-dep-of: 9ad6645a9dce ("HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch V 10")
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/hid/hid-ids.h | 1 +
+ drivers/hid/hid-ite.c | 13 ++++++++++++-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index 0d4479f478aa..a590334cc2a3 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -1140,6 +1140,7 @@
+ #define USB_DEVICE_ID_SYNAPTICS_DELL_K12A 0x2819
+ #define USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_012 0x2968
+ #define USB_DEVICE_ID_SYNAPTICS_TP_V103 0x5710
++#define USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1002 0x73f4
+ #define USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003 0x73f5
+ #define USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5 0x81a7
+
+diff --git a/drivers/hid/hid-ite.c b/drivers/hid/hid-ite.c
+index 742c052b0110..22bfbebceaf4 100644
+--- a/drivers/hid/hid-ite.c
++++ b/drivers/hid/hid-ite.c
+@@ -18,10 +18,16 @@ static __u8 *ite_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int
+ unsigned long quirks = (unsigned long)hid_get_drvdata(hdev);
+
+ if (quirks & QUIRK_TOUCHPAD_ON_OFF_REPORT) {
++ /* For Acer Aspire Switch 10 SW5-012 keyboard-dock */
+ if (*rsize == 188 && rdesc[162] == 0x81 && rdesc[163] == 0x02) {
+- hid_info(hdev, "Fixing up ITE keyboard report descriptor\n");
++ hid_info(hdev, "Fixing up Acer Sw5-012 ITE keyboard report descriptor\n");
+ rdesc[163] = HID_MAIN_ITEM_RELATIVE;
+ }
++ /* For Acer One S1002 keyboard-dock */
++ if (*rsize == 188 && rdesc[185] == 0x81 && rdesc[186] == 0x02) {
++ hid_info(hdev, "Fixing up Acer S1002 ITE keyboard report descriptor\n");
++ rdesc[186] = HID_MAIN_ITEM_RELATIVE;
++ }
+ }
+
+ return rdesc;
+@@ -101,6 +107,11 @@ static const struct hid_device_id ite_devices[] = {
+ USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_012),
+ .driver_data = QUIRK_TOUCHPAD_ON_OFF_REPORT },
+ /* ITE8910 USB kbd ctlr, with Synaptics touchpad connected to it. */
++ { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC,
++ USB_VENDOR_ID_SYNAPTICS,
++ USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1002),
++ .driver_data = QUIRK_TOUCHPAD_ON_OFF_REPORT },
++ /* ITE8910 USB kbd ctlr, with Synaptics touchpad connected to it. */
+ { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC,
+ USB_VENDOR_ID_SYNAPTICS,
+ USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003) },
+--
+2.35.1
+
--- /dev/null
+From e9daca7ac4442123cf2544c0c263e9142f65b9b4 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Sat, 6 Feb 2021 21:53:27 +0100
+Subject: HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch
+ 10E
+
+From: Hans de Goede <hdegoede@redhat.com>
+
+[ Upstream commit b7c20f3815985570ac71c39b1a3e68c201109578 ]
+
+The Acer Aspire Switch 10E (SW3-016)'s keyboard-dock uses the same USB-ids
+as the Acer One S1003 keyboard-dock. Yet they are not entirely the same:
+
+1. The S1003 keyboard-dock has the same report descriptors as the
+S1002 keyboard-dock (which has different USB-ids)
+
+2. The Acer Aspire Switch 10E's keyboard-dock has different
+report descriptors from the S1002/S1003 keyboard docks and it
+sends 0x00880078 / 0x00880079 usage events when the touchpad is
+toggled on/off (which is handled internally).
+
+This means that all Acer kbd-docks handled by the hid-ite.c drivers
+report their touchpad being toggled on/off through these custom
+usage-codes with the exception of the S1003 dock, which likely is
+a bug of that dock.
+
+Add a QUIRK_TOUCHPAD_ON_OFF_REPORT quirk for the Aspire Switch 10E / S1003
+usb-id so that the touchpad toggling will get reported to userspace on
+the Aspire Switch 10E.
+
+Since the Aspire Switch 10E's kbd-dock has different report-descriptors,
+this also requires adding support for fixing those to ite_report_fixup().
+
+Setting the quirk will also cause ite_report_fixup() to hit the
+S1002/S1003 descriptors path on the S1003. Since the S1003 kbd-dock
+never generates any input-reports for the fixed up part of the
+descriptors this does not matter; and if there are versions out there
+which do actually send input-reports for the touchpad-toggle then the
+fixup should actually help to make things work.
+
+This was tested on both an Acer Aspire Switch 10E and on an Acer One S1003.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Stable-dep-of: 9ad6645a9dce ("HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch V 10")
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/hid/hid-ite.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/hid/hid-ite.c b/drivers/hid/hid-ite.c
+index 22bfbebceaf4..14fc068affad 100644
+--- a/drivers/hid/hid-ite.c
++++ b/drivers/hid/hid-ite.c
+@@ -23,11 +23,16 @@ static __u8 *ite_report_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int
+ hid_info(hdev, "Fixing up Acer Sw5-012 ITE keyboard report descriptor\n");
+ rdesc[163] = HID_MAIN_ITEM_RELATIVE;
+ }
+- /* For Acer One S1002 keyboard-dock */
++ /* For Acer One S1002/S1003 keyboard-dock */
+ if (*rsize == 188 && rdesc[185] == 0x81 && rdesc[186] == 0x02) {
+- hid_info(hdev, "Fixing up Acer S1002 ITE keyboard report descriptor\n");
++ hid_info(hdev, "Fixing up Acer S1002/S1003 ITE keyboard report descriptor\n");
+ rdesc[186] = HID_MAIN_ITEM_RELATIVE;
+ }
++ /* For Acer Aspire Switch 10E (SW3-016) keyboard-dock */
++ if (*rsize == 210 && rdesc[184] == 0x81 && rdesc[185] == 0x02) {
++ hid_info(hdev, "Fixing up Acer Aspire Switch 10E (SW3-016) ITE keyboard report descriptor\n");
++ rdesc[185] = HID_MAIN_ITEM_RELATIVE;
++ }
+ }
+
+ return rdesc;
+@@ -114,7 +119,8 @@ static const struct hid_device_id ite_devices[] = {
+ /* ITE8910 USB kbd ctlr, with Synaptics touchpad connected to it. */
+ { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC,
+ USB_VENDOR_ID_SYNAPTICS,
+- USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003) },
++ USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003),
++ .driver_data = QUIRK_TOUCHPAD_ON_OFF_REPORT },
+ { }
+ };
+ MODULE_DEVICE_TABLE(hid, ite_devices);
+--
+2.35.1
+
--- /dev/null
+From d64bd9966a79baf73328f1d7a8d4cdebfa5ff279 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Tue, 8 Nov 2022 16:13:50 +0100
+Subject: HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch V
+ 10
+
+From: Hans de Goede <hdegoede@redhat.com>
+
+[ Upstream commit 9ad6645a9dce4d0e42daca6ebf32a154401c59d3 ]
+
+The Acer Aspire Switch V 10 (SW5-017)'s keyboard-dock uses the same
+ITE controller setup as other Acer Switch 2-in-1's.
+
+This needs special handling for the wifi on/off toggle hotkey as well as
+to properly report touchpad on/off keypresses.
+
+Add the USB-ids for the SW5-017's keyboard-dock with a quirk setting of
+QUIRK_TOUCHPAD_ON_OFF_REPORT to fix both issues.
+
+Cc: Rudolf Polzer <rpolzer@google.com>
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/hid/hid-ids.h | 1 +
+ drivers/hid/hid-ite.c | 5 +++++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index a590334cc2a3..6d550681869f 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -1142,6 +1142,7 @@
+ #define USB_DEVICE_ID_SYNAPTICS_TP_V103 0x5710
+ #define USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1002 0x73f4
+ #define USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003 0x73f5
++#define USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_017 0x73f6
+ #define USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5 0x81a7
+
+ #define USB_VENDOR_ID_TEXAS_INSTRUMENTS 0x2047
+diff --git a/drivers/hid/hid-ite.c b/drivers/hid/hid-ite.c
+index 14fc068affad..b8cce9c196d8 100644
+--- a/drivers/hid/hid-ite.c
++++ b/drivers/hid/hid-ite.c
+@@ -121,6 +121,11 @@ static const struct hid_device_id ite_devices[] = {
+ USB_VENDOR_ID_SYNAPTICS,
+ USB_DEVICE_ID_SYNAPTICS_ACER_ONE_S1003),
+ .driver_data = QUIRK_TOUCHPAD_ON_OFF_REPORT },
++ /* ITE8910 USB kbd ctlr, with Synaptics touchpad connected to it. */
++ { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC,
++ USB_VENDOR_ID_SYNAPTICS,
++ USB_DEVICE_ID_SYNAPTICS_ACER_SWITCH5_017),
++ .driver_data = QUIRK_TOUCHPAD_ON_OFF_REPORT },
+ { }
+ };
+ MODULE_DEVICE_TABLE(hid, ite_devices);
+--
+2.35.1
+
--- /dev/null
+From 001d7c61428361b3d3b43f2a7cd5b9b92df3f746 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Thu, 10 Nov 2022 18:40:56 +0100
+Subject: HID: uclogic: Add HID_QUIRK_HIDINPUT_FORCE quirk
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: José Expósito <jose.exposito89@gmail.com>
+
+[ Upstream commit 3405a4beaaa852f3ed2a5eb3b5149932d5c3779b ]
+
+Commit f7d8e387d9ae ("HID: uclogic: Switch to Digitizer usage for
+styluses") changed the usage used in UCLogic from "Pen" to "Digitizer".
+
+However, the IS_INPUT_APPLICATION() macro evaluates to false for
+HID_DG_DIGITIZER causing issues with the XP-Pen Star G640 tablet.
+
+Add the HID_QUIRK_HIDINPUT_FORCE quirk to bypass the
+IS_INPUT_APPLICATION() check.
+
+Reported-by: Torge Matthies <openglfreak@googlemail.com>
+Reported-by: Alexander Zhang <alex@alexyzhang.dev>
+Tested-by: Alexander Zhang <alex@alexyzhang.dev>
+Signed-off-by: José Expósito <jose.exposito89@gmail.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/hid/hid-uclogic-core.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/hid/hid-uclogic-core.c b/drivers/hid/hid-uclogic-core.c
+index 4edb24195704..e4811d37ca77 100644
+--- a/drivers/hid/hid-uclogic-core.c
++++ b/drivers/hid/hid-uclogic-core.c
+@@ -172,6 +172,7 @@ static int uclogic_probe(struct hid_device *hdev,
+ * than the pen, so use QUIRK_MULTI_INPUT for all tablets.
+ */
+ hdev->quirks |= HID_QUIRK_MULTI_INPUT;
++ hdev->quirks |= HID_QUIRK_HIDINPUT_FORCE;
+
+ /* Allocate and assign driver data */
+ drvdata = devm_kzalloc(&hdev->dev, sizeof(*drvdata), GFP_KERNEL);
+--
+2.35.1
+
--- /dev/null
+From dd82804d6ca4c9068893fa3646c4cf1eed3fbba0 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 23 Nov 2022 15:18:28 +0100
+Subject: net: loopback: use NET_NAME_PREDICTABLE for name_assign_type
+
+From: Rasmus Villemoes <linux@rasmusvillemoes.dk>
+
+[ Upstream commit 31d929de5a112ee1b977a89c57de74710894bbbf ]
+
+When the name_assign_type attribute was introduced (commit
+685343fc3ba6, "net: add name_assign_type netdev attribute"), the
+loopback device was explicitly mentioned as one which would make use
+of NET_NAME_PREDICTABLE:
+
+ The name_assign_type attribute gives hints where the interface name of a
+ given net-device comes from. These values are currently defined:
+...
+ NET_NAME_PREDICTABLE:
+ The ifname has been assigned by the kernel in a predictable way
+ that is guaranteed to avoid reuse and always be the same for a
+ given device. Examples include statically created devices like
+ the loopback device [...]
+
+Switch to that so that reading /sys/class/net/lo/name_assign_type
+produces something sensible instead of returning -EINVAL.
+
+Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
+Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/net/loopback.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c
+index 14545a8797a8..7788f72c262e 100644
+--- a/drivers/net/loopback.c
++++ b/drivers/net/loopback.c
+@@ -206,7 +206,7 @@ static __net_init int loopback_net_init(struct net *net)
+ int err;
+
+ err = -ENOMEM;
+- dev = alloc_netdev(0, "lo", NET_NAME_UNKNOWN, loopback_setup);
++ dev = alloc_netdev(0, "lo", NET_NAME_PREDICTABLE, loopback_setup);
+ if (!dev)
+ goto out;
+
+--
+2.35.1
+
igb-initialize-mailbox-message-for-vf-reset.patch
usb-ulpi-defer-ulpi_register-on-ulpi_read_id-timeout.patch
xen-netback-move-removal-of-hotplug-status-to-the-right-place.patch
+hid-ite-add-support-for-acer-s1002-keyboard-dock.patch
+hid-ite-enable-quirk_touchpad_on_off_report-on-acer-.patch
+hid-ite-enable-quirk_touchpad_on_off_report-on-acer-.patch-30680
+hid-uclogic-add-hid_quirk_hidinput_force-quirk.patch
+bluetooth-l2cap-fix-u8-overflow.patch
+net-loopback-use-net_name_predictable-for-name_assig.patch