diff options
-rw-r--r-- | libre/linux-libre-lts/0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch | 28 | ||||
-rw-r--r-- | libre/linux-libre-lts/0009-usb-dwc2-disable-power_down-on-rockchip-devices.patch | 44 | ||||
-rw-r--r-- | libre/linux-libre-lts/PKGBUILD | 47 | ||||
-rw-r--r-- | libre/linux-libre-lts/config.armv7h | 7 | ||||
-rw-r--r-- | libre/linux-libre-lts/config.i686 | 12 | ||||
-rw-r--r-- | libre/linux-libre-lts/config.x86_64 | 12 |
6 files changed, 96 insertions, 54 deletions
diff --git a/libre/linux-libre-lts/0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch b/libre/linux-libre-lts/0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch index a989d666a..22e12e4b0 100644 --- a/libre/linux-libre-lts/0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch +++ b/libre/linux-libre-lts/0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch @@ -1,9 +1,7 @@ -From 4e54373158caa50df5402fdd3db1794c5394026b Mon Sep 17 00:00:00 2001 -Message-Id: <4e54373158caa50df5402fdd3db1794c5394026b.1516188238.git.jan.steffens@gmail.com> +From 1ce3e84fdf0b56f477d30acdc8797dedd7330e37 Mon Sep 17 00:00:00 2001 From: Serge Hallyn <serge.hallyn@canonical.com> Date: Fri, 31 May 2013 19:12:12 +0100 -Subject: [PATCH 1/4] add sysctl to disallow unprivileged CLONE_NEWUSER by - default +Subject: [PATCH] add sysctl to disallow unprivileged CLONE_NEWUSER by default Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com> [bwh: Remove unneeded binary sysctl bits] @@ -15,10 +13,10 @@ Signed-off-by: Daniel Micay <danielmicay@gmail.com> 3 files changed, 30 insertions(+) diff --git a/kernel/fork.c b/kernel/fork.c -index 500ce64517d9..35f5860958b4 100644 +index f0b58479534f..8b2d927125c5 100644 --- a/kernel/fork.c +++ b/kernel/fork.c -@@ -102,6 +102,11 @@ +@@ -103,6 +103,11 @@ #define CREATE_TRACE_POINTS #include <trace/events/task.h> @@ -30,7 +28,7 @@ index 500ce64517d9..35f5860958b4 100644 /* * Minimum number of threads to boot the kernel -@@ -1554,6 +1559,10 @@ static __latent_entropy struct task_struct *copy_process( +@@ -1649,6 +1654,10 @@ static __latent_entropy struct task_struct *copy_process( if ((clone_flags & (CLONE_NEWUSER|CLONE_FS)) == (CLONE_NEWUSER|CLONE_FS)) return ERR_PTR(-EINVAL); @@ -41,7 +39,7 @@ index 500ce64517d9..35f5860958b4 100644 /* * Thread groups must share signals as well, and detached threads * can only be started up within the thread group. -@@ -2347,6 +2356,12 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags) +@@ -2467,6 +2476,12 @@ int ksys_unshare(unsigned long unshare_flags) if (unshare_flags & CLONE_NEWNS) unshare_flags |= CLONE_FS; @@ -55,7 +53,7 @@ index 500ce64517d9..35f5860958b4 100644 if (err) goto bad_unshare_out; diff --git a/kernel/sysctl.c b/kernel/sysctl.c -index 56aca862c4f5..e8402ba393c1 100644 +index cc02050fd0c4..ce2ad2b92897 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -105,6 +105,9 @@ extern int core_uses_pid; @@ -68,7 +66,7 @@ index 56aca862c4f5..e8402ba393c1 100644 extern int pid_max; extern int pid_max_min, pid_max_max; extern int percpu_pagelist_fraction; -@@ -513,6 +516,15 @@ static struct ctl_table kern_table[] = { +@@ -514,6 +517,15 @@ static struct ctl_table kern_table[] = { .proc_handler = proc_dointvec, }, #endif @@ -85,12 +83,12 @@ index 56aca862c4f5..e8402ba393c1 100644 { .procname = "tainted", diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c -index c490f1e4313b..dd03bd39d7bf 100644 +index 923414a246e9..6b9dbc257e34 100644 --- a/kernel/user_namespace.c +++ b/kernel/user_namespace.c -@@ -24,6 +24,9 @@ - #include <linux/projid.h> - #include <linux/fs_struct.h> +@@ -26,6 +26,9 @@ + #include <linux/bsearch.h> + #include <linux/sort.h> +/* sysctl */ +int unprivileged_userns_clone; @@ -99,5 +97,5 @@ index c490f1e4313b..dd03bd39d7bf 100644 static DEFINE_MUTEX(userns_state_mutex); -- -2.15.1 +2.19.1 diff --git a/libre/linux-libre-lts/0009-usb-dwc2-disable-power_down-on-rockchip-devices.patch b/libre/linux-libre-lts/0009-usb-dwc2-disable-power_down-on-rockchip-devices.patch new file mode 100644 index 000000000..a91facd17 --- /dev/null +++ b/libre/linux-libre-lts/0009-usb-dwc2-disable-power_down-on-rockchip-devices.patch @@ -0,0 +1,44 @@ +From 3379ffad8f5b3db47578cc4eadc3c0f22f7547f1 Mon Sep 17 00:00:00 2001 +From: Hal Emmerich <hal@halemmerich.com> +Date: Thu, 19 Jul 2018 21:48:08 -0500 +Subject: [PATCH 9/9] usb: dwc2: disable power_down on rockchip devices + + The bug would let the usb controller enter partial power down, + which was formally known as hibernate, upon boot if nothing was plugged + in to the port. Partial power down couldn't be exited properly, so any + usb devices plugged in after boot would not be usable. + + Before the name change, params.hibernation was false by default, so + _dwc2_hcd_suspend() would skip entering hibernation. With the + rename, _dwc2_hcd_suspend() was changed to use params.power_down + to decide whether or not to enter partial power down. + + Since params.power_down is non-zero by default, it needs to be set + to 0 for rockchip devices to restore functionality. + + This bug was reported in the linux-usb thread: + REGRESSION: usb: dwc2: USB device not seen after boot + + The commit that caused this regression is: + 6d23ee9caa6790aea047f9aca7f3c03cb8d96eb6 + +Signed-off-by: Hal Emmerich <hal@halemmerich.com> +--- + drivers/usb/dwc2/params.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/usb/dwc2/params.c b/drivers/usb/dwc2/params.c +index bf7052e037d6..09292dc977e4 100644 +--- a/drivers/usb/dwc2/params.c ++++ b/drivers/usb/dwc2/params.c +@@ -81,6 +81,7 @@ static void dwc2_set_rk_params(struct dwc2_hsotg *hsotg) + p->host_perio_tx_fifo_size = 256; + p->ahbcfg = GAHBCFG_HBSTLEN_INCR16 << + GAHBCFG_HBSTLEN_SHIFT; ++ p->power_down = 0; + } + + static void dwc2_set_ltq_params(struct dwc2_hsotg *hsotg) +-- +2.19.0 + diff --git a/libre/linux-libre-lts/PKGBUILD b/libre/linux-libre-lts/PKGBUILD index 54a7c8a76..443c362af 100644 --- a/libre/linux-libre-lts/PKGBUILD +++ b/libre/linux-libre-lts/PKGBUILD @@ -11,7 +11,7 @@ pkgbase=linux-libre-lts _srcbasever=4.19-gnu -_srcver=4.19.19-gnu +_srcver=4.19.25-gnu _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname _replacesoldkernels=() # '%' gets replaced with _kernelname @@ -21,7 +21,7 @@ _srcname=linux-${_srcbasever%-*} _archpkgver=${_srcver%-*} pkgver=${_srcver//-/_} pkgrel=1 -rcnrel=armv7-x20 +rcnrel=armv7-x25 arch=('x86_64' 'i686' 'armv7h') url="https://linux-libre.fsfla.org/" license=('GPL2') @@ -34,25 +34,26 @@ source=( "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_mono.pbm"{,.sig} "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_vga16.ppm"{,.sig} # the main kernel config files - 'config.i686' 'config.x86_64' 'config.armv7h' + config.i686 config.x86_64 config.armv7h # pacman hooks for depmod and initramfs regeneration - '60-linux.hook' '90-linux.hook' + 60-linux.hook 90-linux.hook # standard config files for mkinitcpio ramdisk - 'linux-lts.preset' + linux-lts.preset # armv7h patches "https://repo.parabola.nu/other/rcn-libre/patches/${_srcver%-*}/rcn-libre-${_srcver%-*}-${rcnrel}.patch"{,.sig} - '0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch' - '0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch' - '0003-SMILE-Plug-device-tree-file.patch' - '0004-fix-mvsdio-eMMC-timing.patch' - '0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch' - '0006-set-default-cubietruck-led-triggers.patch' - '0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch' - '0008-ARM-dove-enable-ethernet-on-D3Plug.patch' + 0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch + 0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch + 0003-SMILE-Plug-device-tree-file.patch + 0004-fix-mvsdio-eMMC-timing.patch + 0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch + 0006-set-default-cubietruck-led-triggers.patch + 0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch + 0008-ARM-dove-enable-ethernet-on-D3Plug.patch + 0009-usb-dwc2-disable-power_down-on-rockchip-devices.patch # other patches - '0001-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch' - '0002-fix-Atmel-maXTouch-touchscreen-support.patch' - '0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch' + 0001-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch + 0002-fix-Atmel-maXTouch-touchscreen-support.patch + 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch ) validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva @@ -60,7 +61,7 @@ validpgpkeys=( ) sha512sums=('5bc800b3beff43a8c15bd5515f4e0babe2beb5fa600491b7b37110e22d9b739d293f1e38753ed681be289c51390e0e64b3e60ce0db0a3bfe1f94ee5c014579a3' 'SKIP' - 'ec865029cd978c0f24794b9aa6974fa46fc900a3697fe1aea71e168553775bec139475df0accd51089d5a4103f47fb7488935bfd06ca93c26ce7248e180f51be' + '459d00eca254dcc92d998442ca45c809f7e3b877a945a1b840955356df7399d46d0326e0784b5759e397e8eb9be5d19544fb44a04ee7602725f0bfd998754196' 'SKIP' '13cb5bc42542e7b8bb104d5f68253f6609e463b6799800418af33eb0272cc269aaa36163c3e6f0aacbdaaa1d05e2827a4a7c4a08a029238439ed08b89c564bb3' 'SKIP' @@ -68,13 +69,13 @@ sha512sums=('5bc800b3beff43a8c15bd5515f4e0babe2beb5fa600491b7b37110e22d9b739d293 'SKIP' '7a3716bfe3b9f546da309c7492f3e08f8f506813afeb1c737a474c83313d5c313cf4582b65215c2cfce3b74d9d1021c96e8badafe8f6e5b01fe28d2b5c61ae78' 'SKIP' - 'c3779b7b051bebddecdacbe21b56c817404b70818707fd0375d429773b755530fbc8dd3485d2abd5d224adf566131f8ab1bb761581d65a0d9b206f7a7ba24a84' - '1fa28a61581acf522ca7cd481ce4583de2cb243d454b79b09c64e50fb0bcdd6d10a1747b844b60b08a6e8df2318cbc6fbf66cfbb6e5d7e486a41ba5302c01018' - '45465edfca073296d2eb4883b8ffc5f8750449e29a72bd3bac891b664ee3e4193516c741537879dc0d490a5ea03924b42892ad3bac6104f4c863be6ef960e205' + '251c3011fa685f8b1385266080a5f4c220cc7fa25accedb8ef2725feaf1b96d532349261611a8618469834b3ceb051341e0d3563d692033ec73d394e86576529' + 'e015b58e701772a6b5c164fc512278b53ee57f44ad1491b21f4127a4e9077503ec30f3105589ada26d604934b27722d4ec7f855c27d98a0f6d36587e943af155' + 'ea2c425942ebd88fe2271cd1563488f8669d9bda5468739a0299a8572b4a4af98497b4a837b3d01d4ee24a7134675d78d4a2211235bd1843cc9926a140e3850a' '7ad5be75ee422dda3b80edd2eb614d8a9181e2c8228cd68b3881e2fb95953bf2dea6cbe7900ce1013c9de89b2802574b7b24869fc5d7a95d3cc3112c4d27063a' '4a8b324aee4cccf3a512ad04ce1a272d14e5b05c8de90feb82075f55ea3845948d817e1b0c6f298f5816834ddd3e5ce0a0e2619866289f3c1ab8fd2f35f04f44' '2dc6b0ba8f7dbf19d2446c5c5f1823587de89f4e28e9595937dd51a87755099656f2acec50e3e2546ea633ad1bfd1c722e0c2b91eef1d609103d8abdc0a7cbaf' - '49d1e1cce957c71b9a8253a0723503896ff1bbf6aa94bb05980274823433df995a7e2d254f358513fd924be252581393069e7a591ea5e432c029bd3f1bf8583f' + '8a570fb0b55b4469f26340d97ec0d92c1a8f391fff5a4018ba926c161469ea9b47b094a088e0328fe1bd667c61d1b3e3b79bb0abe4bf7785a09adb024358792f' 'SKIP' '60aa432465eb3ac10f565799d3dfecea21aaf08e83909c1161d9359e932626edbd1353e712d616c3d785c65a0f699e9c45df35bd9e86365c25399c6b2d45b9e4' '86809feb5ae2759b449ec0cb7a6b3fb457874ed82a72dfda00607e8819c804a0714b5d6a17cbbba44996a36872224af42d1b85f1b3932f43bccb419041d25dc7' @@ -84,9 +85,10 @@ sha512sums=('5bc800b3beff43a8c15bd5515f4e0babe2beb5fa600491b7b37110e22d9b739d293 '4433f9e780a72347313916c8a9cbcbce3a8c40e1b299e887dc748d257879fb5fab8f1683936339f73a4d4b4ef668b1ed6cc0d9a19ed4bd99039a1613ac08610e' 'd1361d23ae79599e3fa94cba206bd40764f9eee0c584e639af13828dabb7f0dfa361792c098b5afae0bb350407b2dc47a1d67580daeade7a4f3e3e55e42c8470' 'c1653f91067d31801a23450175e47968add147477caf20aec6092831739641312f4ad995af43c7e55545007279016b5f62a0720d31e4591b4421a65b8bd5b398' + 'a123747792417d3760ca40d7f913c2cdd194da2ea5778352eedebc80097b7b8dce4428a8fe8bd75cab92972f599c25bcf18a740856fc2990351234b0d7ebf9f5' '02af4dd2a007e41db0c63822c8ab3b80b5d25646af1906dc85d0ad9bb8bbf5236f8e381d7f91cf99ed4b0978c50aee37cb9567cdeef65b7ec3d91b882852b1af' 'b8fe56e14006ab866970ddbd501c054ae37186ddc065bb869cf7d18db8c0d455118d5bda3255fb66a0dde38b544655cfe9040ffe46e41d19830b47959b2fb168' - '485f37aca7793cee2361e126bc619e5bfd1737bff484b06bbba76cd326f3845c4d96c17bb9a56623a653b7b7062a698975d6a7f019f5c1a3eb9faf9b352d73f2') + 'ba561ef861c56002de25ec6f63211e758f3d26eaa7ff0e4a16ffd096d5fe7019d9df343658adc0535684303888d022aa816fc0b282da27ac1ca29dfc0b0e2be0') _kernelname=${pkgbase#linux-libre} _replacesarchkernel=("${_replacesarchkernel[@]/\%/${_kernelname}}") @@ -123,6 +125,7 @@ prepare() { patch -p1 -i ../0006-set-default-cubietruck-led-triggers.patch patch -p1 -i ../0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch patch -p1 -i ../0008-ARM-dove-enable-ethernet-on-D3Plug.patch + patch -p1 -i ../0009-usb-dwc2-disable-power_down-on-rockchip-devices.patch fi # add freedo as boot logo diff --git a/libre/linux-libre-lts/config.armv7h b/libre/linux-libre-lts/config.armv7h index 0e7461493..ed813a4d7 100644 --- a/libre/linux-libre-lts/config.armv7h +++ b/libre/linux-libre-lts/config.armv7h @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 4.19.19-gnu Kernel Configuration +# Linux/arm 4.19.25-gnu Kernel Configuration # # @@ -3374,7 +3374,9 @@ CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_APPLETOUCH=m CONFIG_MOUSE_BCM5974=m CONFIG_MOUSE_CYAPA=y -# CONFIG_MOUSE_ELAN_I2C is not set +CONFIG_MOUSE_ELAN_I2C=m +CONFIG_MOUSE_ELAN_I2C_I2C=y +CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_VSXXXAA=m CONFIG_MOUSE_GPIO=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -7399,7 +7401,6 @@ CONFIG_SOC_TEGRA_PMC=y CONFIG_SOC_TI=y # CONFIG_KEYSTONE_NAVIGATOR_QMSS is not set # CONFIG_KEYSTONE_NAVIGATOR_DMA is not set -CONFIG_TI_PRUSS=m # # Xilinx SoC drivers diff --git a/libre/linux-libre-lts/config.i686 b/libre/linux-libre-lts/config.i686 index 41525f0cc..a11dbec7a 100644 --- a/libre/linux-libre-lts/config.i686 +++ b/libre/linux-libre-lts/config.i686 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.19.19-gnu Kernel Configuration +# Linux/x86 4.19.25-gnu Kernel Configuration # # @@ -3374,7 +3374,6 @@ CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT7601U=m CONFIG_MT76_CORE=m CONFIG_MT76_LEDS=y -CONFIG_MT76_USB=m CONFIG_MT76x2_COMMON=m # CONFIG_MT76x0U is not set CONFIG_MT76x2E=m @@ -3703,7 +3702,9 @@ CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_APPLETOUCH=m CONFIG_MOUSE_BCM5974=m CONFIG_MOUSE_CYAPA=m -# CONFIG_MOUSE_ELAN_I2C is not set +CONFIG_MOUSE_ELAN_I2C=m +CONFIG_MOUSE_ELAN_I2C_I2C=y +CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_INPORT=m # CONFIG_MOUSE_ATIXL is not set CONFIG_MOUSE_LOGIBM=m @@ -3770,7 +3771,7 @@ CONFIG_TOUCHSCREEN_AUO_PIXCIR=m CONFIG_TOUCHSCREEN_BU21013=m CONFIG_TOUCHSCREEN_BU21029=m CONFIG_TOUCHSCREEN_CHIPONE_ICN8318=m -CONFIG_TOUCHSCREEN_CHIPONE_ICN8505=m +# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set CONFIG_TOUCHSCREEN_CY8CTMG110=m CONFIG_TOUCHSCREEN_CYTTSP_CORE=m CONFIG_TOUCHSCREEN_CYTTSP_I2C=m @@ -6478,9 +6479,6 @@ CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m -CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m -CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m -CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m # # STMicroelectronics STM32 SOC audio support diff --git a/libre/linux-libre-lts/config.x86_64 b/libre/linux-libre-lts/config.x86_64 index 68a418f35..cf13879ca 100644 --- a/libre/linux-libre-lts/config.x86_64 +++ b/libre/linux-libre-lts/config.x86_64 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.19.19-gnu Kernel Configuration +# Linux/x86 4.19.25-gnu Kernel Configuration # # @@ -3396,7 +3396,6 @@ CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT7601U=m CONFIG_MT76_CORE=m CONFIG_MT76_LEDS=y -CONFIG_MT76_USB=m CONFIG_MT76x2_COMMON=m # CONFIG_MT76x0U is not set CONFIG_MT76x2E=m @@ -3497,7 +3496,7 @@ CONFIG_IEEE802154_ADF7242=m CONFIG_IEEE802154_CA8210=m # CONFIG_IEEE802154_CA8210_DEBUGFS is not set CONFIG_IEEE802154_MCR20A=m -# CONFIG_IEEE802154_HWSIM is not set +CONFIG_IEEE802154_HWSIM=m CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_NETDEV_BACKEND=m CONFIG_VMXNET3=m @@ -3714,7 +3713,9 @@ CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_APPLETOUCH=m CONFIG_MOUSE_BCM5974=m CONFIG_MOUSE_CYAPA=m -# CONFIG_MOUSE_ELAN_I2C is not set +CONFIG_MOUSE_ELAN_I2C=m +CONFIG_MOUSE_ELAN_I2C_I2C=y +CONFIG_MOUSE_ELAN_I2C_SMBUS=y CONFIG_MOUSE_VSXXXAA=m CONFIG_MOUSE_GPIO=m CONFIG_MOUSE_SYNAPTICS_I2C=m @@ -6403,9 +6404,6 @@ CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m -CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m -CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m -CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m # # STMicroelectronics STM32 SOC audio support |