From: Greg Kroah-Hartman Date: Fri, 28 Apr 2023 07:56:21 +0000 (+0200) Subject: 5.15-stable patches X-Git-Tag: v5.15.110~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4994568baae701104720f1173b0fcc427ef27497;p=thirdparty%2Fkernel%2Fstable-queue.git 5.15-stable patches added patches: driver-core-don-t-require-dynamic_debug-for-initcall_debug-probe-timing.patch usb-serial-option-add-unisoc-vendor-and-tozed-lt70c-product.patch --- diff --git a/queue-5.15/driver-core-don-t-require-dynamic_debug-for-initcall_debug-probe-timing.patch b/queue-5.15/driver-core-don-t-require-dynamic_debug-for-initcall_debug-probe-timing.patch new file mode 100644 index 00000000000..93bee8caee5 --- /dev/null +++ b/queue-5.15/driver-core-don-t-require-dynamic_debug-for-initcall_debug-probe-timing.patch @@ -0,0 +1,46 @@ +From e2f06aa885081e1391916367f53bad984714b4db Mon Sep 17 00:00:00 2001 +From: Stephen Boyd +Date: Wed, 12 Apr 2023 15:58:42 -0700 +Subject: driver core: Don't require dynamic_debug for initcall_debug probe timing + +From: Stephen Boyd + +commit e2f06aa885081e1391916367f53bad984714b4db upstream. + +Don't require the use of dynamic debug (or modification of the kernel to +add a #define DEBUG to the top of this file) to get the printk message +about driver probe timing. This printk is only emitted when +initcall_debug is enabled on the kernel commandline, and it isn't +immediately obvious that you have to do something else to debug boot +timing issues related to driver probe. Add a comment too so it doesn't +get converted back to pr_debug(). + +Fixes: eb7fbc9fb118 ("driver core: Add missing '\n' in log messages") +Cc: stable +Cc: Christophe JAILLET +Cc: Brian Norris +Reviewed-by: Brian Norris +Acked-by: Randy Dunlap +Signed-off-by: Stephen Boyd +Link: https://lore.kernel.org/r/20230412225842.3196599-1-swboyd@chromium.org +Signed-off-by: Greg Kroah-Hartman +--- + drivers/base/dd.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +--- a/drivers/base/dd.c ++++ b/drivers/base/dd.c +@@ -690,7 +690,12 @@ static int really_probe_debug(struct dev + calltime = ktime_get(); + ret = really_probe(dev, drv); + rettime = ktime_get(); +- pr_debug("probe of %s returned %d after %lld usecs\n", ++ /* ++ * Don't change this to pr_debug() because that requires ++ * CONFIG_DYNAMIC_DEBUG and we want a simple 'initcall_debug' on the ++ * kernel commandline to print this all the time at the debug level. ++ */ ++ printk(KERN_DEBUG "probe of %s returned %d after %lld usecs\n", + dev_name(dev), ret, ktime_us_delta(rettime, calltime)); + return ret; + } diff --git a/queue-5.15/series b/queue-5.15/series index 5e9550cd83c..6852f731ad3 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -5,3 +5,5 @@ kvm-arm64-fix-buffer-overflow-in-kvm_arm_set_fw_reg.patch wifi-brcmfmac-slab-out-of-bounds-read-in-brcmf_get_assoc_ies.patch drm-fb-helper-set-x-yres_virtual-in-drm_fb_helper_check_var.patch bluetooth-perform-careful-capability-checks-in-hci_sock_ioctl.patch +usb-serial-option-add-unisoc-vendor-and-tozed-lt70c-product.patch +driver-core-don-t-require-dynamic_debug-for-initcall_debug-probe-timing.patch diff --git a/queue-5.15/usb-serial-option-add-unisoc-vendor-and-tozed-lt70c-product.patch b/queue-5.15/usb-serial-option-add-unisoc-vendor-and-tozed-lt70c-product.patch new file mode 100644 index 00000000000..ae5ef84930f --- /dev/null +++ b/queue-5.15/usb-serial-option-add-unisoc-vendor-and-tozed-lt70c-product.patch @@ -0,0 +1,93 @@ +From a095edfc15f0832e046ae23964e249ef5c95af87 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ar=C4=B1n=C3=A7=20=C3=9CNAL?= +Date: Mon, 17 Apr 2023 18:20:03 +0300 +Subject: USB: serial: option: add UNISOC vendor and TOZED LT70C product +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Arınç ÜNAL + +commit a095edfc15f0832e046ae23964e249ef5c95af87 upstream. + +Add UNISOC vendor ID and TOZED LT70-C modem which is based from UNISOC +SL8563. The modem supports the NCM mode. Interface 0 is used for running +the AT commands. Interface 12 is the ADB interface. + +T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 6 Spd=480 MxCh= 0 +D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 +P: Vendor=1782 ProdID=4055 Rev=04.04 +S: Manufacturer=Unisoc Phone +S: Product=Unisoc Phone +S: SerialNumber= +C: #Ifs=14 Cfg#= 1 Atr=c0 MxPwr=500mA +I: If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0d Prot=00 Driver=cdc_ncm +E: Ad=82(I) Atr=03(Int.) MxPS= 16 Ivl=32ms +I: If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm +E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#=10 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option +E: Ad=07(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=8b(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#=11 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option +E: Ad=08(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=8c(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#=12 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=(none) +E: Ad=09(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=8d(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#=13 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option +E: Ad=0a(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=8e(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 2 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0d Prot=00 Driver=cdc_ncm +E: Ad=84(I) Atr=03(Int.) MxPS= 16 Ivl=32ms +I: If#= 3 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm +E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 4 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0d Prot=00 Driver=cdc_ncm +E: Ad=86(I) Atr=03(Int.) MxPS= 16 Ivl=32ms +I: If#= 5 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm +E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 6 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0d Prot=00 Driver=cdc_ncm +E: Ad=88(I) Atr=03(Int.) MxPS= 16 Ivl=32ms +I: If#= 7 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm +E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=87(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 8 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option +E: Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=89(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 9 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option +E: Ad=06(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=8a(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms + +Signed-off-by: Arınç ÜNAL +Link: https://lore.kernel.org/r/20230417152003.243248-1-arinc.unal@arinc9.com +Cc: stable@vger.kernel.org +Signed-off-by: Johan Hovold +Signed-off-by: Greg Kroah-Hartman +--- + drivers/usb/serial/option.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -595,6 +595,11 @@ static void option_instat_callback(struc + #define SIERRA_VENDOR_ID 0x1199 + #define SIERRA_PRODUCT_EM9191 0x90d3 + ++/* UNISOC (Spreadtrum) products */ ++#define UNISOC_VENDOR_ID 0x1782 ++/* TOZED LT70-C based on UNISOC SL8563 uses UNISOC's vendor ID */ ++#define TOZED_PRODUCT_LT70C 0x4055 ++ + /* Device flags */ + + /* Highest interface number which can be used with NCTRL() and RSVD() */ +@@ -2225,6 +2230,7 @@ static const struct usb_device_id option + { USB_DEVICE_AND_INTERFACE_INFO(OPPO_VENDOR_ID, OPPO_PRODUCT_R11, 0xff, 0xff, 0x30) }, + { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0xff, 0x30) }, + { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0, 0) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(UNISOC_VENDOR_ID, TOZED_PRODUCT_LT70C, 0xff, 0, 0) }, + { } /* Terminating entry */ + }; + MODULE_DEVICE_TABLE(usb, option_ids);