From c1180c471a922b189fe0327fc879c2c63b7318bc Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Mon, 9 Jun 2025 08:55:40 +0000 Subject: [PATCH] linux: update Amlogic to Linux 6.16.y kernel and patches Signed-off-by: Christian Hewitt --- packages/linux/package.mk | 4 +- ...LOCAL-set-meson-gx-cma-pool-to-896MB.patch | 4 +- ...OCAL-set-meson-g12-cma-pool-to-896MB.patch | 6 +- ...m64-fix-Kodi-sysinfo-CPU-information.patch | 30 +- ...eson-add-Amlogic-Meson-GX-PM-Suspend.patch | 4 +- ...meson-add-support-for-GX-PM-and-Virt.patch | 4 +- ...meson-add-rtc-vrtc-aliases-to-Khadas.patch | 4 +- ...meson-add-rtc-vrtc-aliases-to-Khadas.patch | 4 +- ...meson-add-rtc-vrtc-aliases-to-Minix-.patch | 4 +- ...-assign-internal-PCM-chmap-ELD-IEC95.patch | 6 +- ...n-vdec-disable-MPEG1-MPEG2-hardware-.patch | 4 +- ...64-dts-amlogic-gxbb-enable-UART-RX-a.patch | 70 --- ...eson-fix-resource-cleanup-in-meson_.patch} | 4 +- ...64-dts-amlogic-gxl-enable-UART-RX-an.patch | 79 --- ...eson-Avoid-use-after-free-issues-wi.patch} | 4 +- ...64-dts-amlogic-g12-enable-UART-RX-an.patch | 70 --- ...-si2168-increase-cmd-execution-time.patch} | 4 +- ...bindings-iio-adc-amlogic-meson-sarad.patch | 30 -- ...-meson-vdec-esparser-check-parsing-.patch} | 4 +- ...64-dts-amlogic-gxlx-s905l-p271-add-s.patch | 33 -- ...-meson-vdec-implement-10bit-bitstre.patch} | 4 +- ...64-dts-amlogic-gxl-set-i2c-bias-to-p.patch | 68 --- ...ia-meson-vdec-add-HEVC-decode-codec.patch} | 4 +- ...C-meson-meson-card-utils-use-of_prop.patch | 42 -- ...-dts-amlogic-sm1-bananapi-lower-SD-.patch} | 8 +- ...-meson-vdec-reintroduce-wiggle-room.patch} | 4 +- ...amlogic-meson8b-usb2-Use-FIELD_PREP-.patch | 53 -- ...n-vdec-fix-memory-leak-of-new_frame.patch} | 4 +- ...amlogic-meson8b-usb2-Use-the-regmap_.patch | 84 ---- ...dec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch} | 4 +- ...on-add-Odroid-C2-HiFi-Shield-boards.patch} | 8 +- ...indings-auxdisplay-Add-Titan-Micro-E.patch | 114 ----- ...-gxl-implement-meson_gxl_phy_resume.patch} | 4 +- ...-ABI-document-tm1628-attribute-displ.patch | 31 -- ...-support-for-2560x1440-resolution-o.patch} | 42 +- ...isplay-add-support-for-Titanmec-TM16.patch | 461 ------------------ ...setup-after-resumption-to-fix-hdmi-.patch} | 6 +- ...4-dts-meson-gxl-s905w-tx3-mini-add-s.patch | 93 ---- ...eron-off-dw_hdmi-only-if-dw_hdmi-en.patch} | 6 +- ...TAINERS-Add-entry-for-tm1628-auxdisp.patch | 32 -- ...son-gx-mmc-add-delay-during-poweroff.patch | 24 + ...on-set-p212-p23x-q20x-SDIO-to-100MH.patch} | 4 +- ...on-remove-SDIO-node-from-Khadas-VIM.patch} | 4 +- ...on-add-UHS-SDIO-capabilities-to-p21.patch} | 4 +- ...rm-amlogic-add-support-for-Tanix-TX.patch} | 8 +- ...indings-usb-dwc2-allow-device-sub-no.patch | 39 -- ...on-add-initial-device-tree-for-Tani.patch} | 8 +- ...endor-prefixes-add-Titan-Micro-Elec.patch} | 21 +- ...vendor-prefixes-add-Fuda-Hisi-Microe.patch | 29 ++ ...meson-fix-debug-log-statement-when-s.patch | 32 -- ...auxdisplay-add-Titan-Micro-Electroni.patch | 159 ++++++ ...meson-use-vclk_freq-instead-of-pixel.patch | 39 -- ...son-gxl-s905w-tx3-mini-support-the-f.patch | 100 ++++ ...on-gxm-tx9-pro-support-the-fd628-di.patch} | 70 +-- ...son-g12a-x96-max-support-the-fd628-d.patch | 100 ++++ ...0-drm-meson-fix-more-rounding-issues.patch | 101 ---- projects/Amlogic/linux/linux.aarch64.conf | 157 +++--- 57 files changed, 645 insertions(+), 1698 deletions(-) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMGIT-6.16-arm64-dts-amlogic-gxbb-enable-UART-RX-a.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0018-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch => amlogic-0011-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch} (97%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMGIT-6.16-arm64-dts-amlogic-gxl-enable-UART-RX-an.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0032-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch => amlogic-0012-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch} (94%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMGIT-6.16-arm64-dts-amlogic-g12-enable-UART-RX-an.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0027-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch => amlogic-0013-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch} (95%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMGIT-6.16-dt-bindings-iio-adc-amlogic-meson-sarad.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0028-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch => amlogic-0014-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch} (93%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMGIT-6.16-arm64-dts-amlogic-gxlx-s905l-p271-add-s.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0029-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch => amlogic-0015-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch} (99%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMGIT-6.16-arm64-dts-amlogic-gxl-set-i2c-bias-to-p.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0030-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch => amlogic-0016-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch} (99%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMGIT-6.16-ASoC-meson-meson-card-utils-use-of_prop.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0033-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch => amlogic-0017-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch} (86%) rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0036-WIP-media-meson-vdec-reintroduce-wiggle-room.patch => amlogic-0018-WIP-media-meson-vdec-reintroduce-wiggle-room.patch} (92%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-FIELD_PREP-.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0037-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch => amlogic-0019-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch} (87%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-the-regmap_.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0038-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch => amlogic-0020-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch} (98%) rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0039-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch => amlogic-0021-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch} (98%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-FROMLIST-v5-dt-bindings-auxdisplay-Add-Titan-Micro-E.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0040-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch => amlogic-0022-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch} (94%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-FROMLIST-v5-docs-ABI-document-tm1628-attribute-displ.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0041-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch => amlogic-0023-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch} (51%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-FROMLIST-v5-auxdisplay-add-support-for-Titanmec-TM16.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0042-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch => amlogic-0024-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch} (94%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-FROMLIST-v5-arm64-dts-meson-gxl-s905w-tx3-mini-add-s.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0043-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch => amlogic-0025-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch} (94%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-FROMLIST-v5-MAINTAINERS-Add-entry-for-tm1628-auxdisp.patch create mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-WIP-mmc-meson-gx-mmc-add-delay-during-poweroff.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0044-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch => amlogic-0027-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch} (96%) rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0045-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch => amlogic-0028-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch} (88%) rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0046-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch => amlogic-0029-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch} (91%) rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0047-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch => amlogic-0030-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch} (80%) delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-FROMLIST-v1-dt-bindings-usb-dwc2-allow-device-sub-no.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0048-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch => amlogic-0031-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch} (93%) rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0021-FROMLIST-v5-dt-bindings-vendor-prefixes-Add-Titan-Mi.patch => amlogic-0032-WIP-dt-bindings-vendor-prefixes-add-Titan-Micro-Elec.patch} (52%) create mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-WIP-dt-bindings-vendor-prefixes-add-Fuda-Hisi-Microe.patch delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-FROMLIST-v1-drm-meson-fix-debug-log-statement-when-s.patch create mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-WIP-dt-bindings-auxdisplay-add-Titan-Micro-Electroni.patch delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-FROMLIST-v1-drm-meson-use-vclk_freq-instead-of-pixel.patch create mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-WIP-arm64-dts-meson-gxl-s905w-tx3-mini-support-the-f.patch rename projects/Amlogic/devices/AMLGX/patches/linux/{amlogic-0049-WIP-arm64-dts-meson-add-7-segment-display-to-Tanix-T.patch => amlogic-0036-WIP-arm64-dts-meson-gxm-tx9-pro-support-the-fd628-di.patch} (55%) create mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-arm64-dts-meson-g12a-x96-max-support-the-fd628-d.patch delete mode 100644 projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0050-drm-meson-fix-more-rounding-issues.patch diff --git a/packages/linux/package.mk b/packages/linux/package.mk index 7c564ee144..f8398beaa0 100644 --- a/packages/linux/package.mk +++ b/packages/linux/package.mk @@ -16,8 +16,8 @@ PKG_PATCH_DIRS="${LINUX}" case "${LINUX}" in amlogic) - PKG_VERSION="3ef49626da6dd67013fc2cf0a4e4c9e158bb59f7" # 6.15.1 - PKG_SHA256="dd0c9b097906d7cbcd1281c0fbc489ffdd803495bffd2d159c5e994213362468" + PKG_VERSION="86731a2a651e58953fc949573895f2fa6d456841" # 6.16-rc3 + PKG_SHA256="008b00968a8bfc0627580b82a2d30c7304336a4f92a58e80cdbc2d4723e01840" PKG_URL="https://github.com/torvalds/linux/archive/${PKG_VERSION}.tar.gz" PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz" PKG_PATCH_DIRS="default" diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0001-LOCAL-set-meson-gx-cma-pool-to-896MB.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0001-LOCAL-set-meson-gx-cma-pool-to-896MB.patch index b89e02d60d..50d2211b52 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0001-LOCAL-set-meson-gx-cma-pool-to-896MB.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0001-LOCAL-set-meson-gx-cma-pool-to-896MB.patch @@ -1,7 +1,7 @@ -From 0d1897b3d18140c48625e0a8cded448d8a181d3f Mon Sep 17 00:00:00 2001 +From 9a711d3aca9f7bd053caefec4f1bef07ba1a4817 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Sat, 13 Apr 2019 05:41:51 +0000 -Subject: [PATCH 01/50] LOCAL: set meson-gx cma pool to 896MB +Subject: [PATCH 01/37] LOCAL: set meson-gx cma pool to 896MB This change sets the CMA pool to a larger 896MB! value for vdec use diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0002-LOCAL-set-meson-g12-cma-pool-to-896MB.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0002-LOCAL-set-meson-g12-cma-pool-to-896MB.patch index ca7831f999..c3494a81f2 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0002-LOCAL-set-meson-g12-cma-pool-to-896MB.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0002-LOCAL-set-meson-g12-cma-pool-to-896MB.patch @@ -1,7 +1,7 @@ -From 99c6d58e2b3d289b0ccaf39c500a6875abb14780 Mon Sep 17 00:00:00 2001 +From 5979e28bfa5986d47ba62f147feb5d9b83f16e6d Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Wed, 14 Aug 2019 19:58:14 +0000 -Subject: [PATCH 02/50] LOCAL: set meson-g12 cma pool to 896MB +Subject: [PATCH 02/37] LOCAL: set meson-g12 cma pool to 896MB This change sets the CMA pool to a larger 896MB! value for vdec use @@ -11,7 +11,7 @@ Signed-off-by: Christian Hewitt 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi -index 69834b49673d..4b75b4d07901 100644 +index dcc927a9da80..0b6f13f8911b 100644 --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi @@ -117,7 +117,7 @@ secmon_reserved_bl32: secmon@5300000 { diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0003-LOCAL-arm64-fix-Kodi-sysinfo-CPU-information.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0003-LOCAL-arm64-fix-Kodi-sysinfo-CPU-information.patch index 422671f9e8..879fdcd1c5 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0003-LOCAL-arm64-fix-Kodi-sysinfo-CPU-information.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0003-LOCAL-arm64-fix-Kodi-sysinfo-CPU-information.patch @@ -1,7 +1,7 @@ -From 49c3682d0bf8ce8d8a77a522164da223e05bbdae Mon Sep 17 00:00:00 2001 +From 3df5b83cf844e053806a57afd5a4af8d11617c5d Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Sat, 13 Apr 2019 05:45:18 +0000 -Subject: [PATCH 03/50] LOCAL: arm64: fix Kodi sysinfo CPU information +Subject: [PATCH 03/37] LOCAL: arm64: fix Kodi sysinfo CPU information This allows the CPU information to show in the Kodi sysinfo screen, e.g. @@ -9,23 +9,25 @@ This allows the CPU information to show in the Kodi sysinfo screen, e.g. Signed-off-by: Christian Hewitt --- - arch/arm64/kernel/cpuinfo.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) + arch/arm64/kernel/cpuinfo.c | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c -index 285d7d538342..117c83566fd7 100644 +index c1f2b6b04b41..8bbdb64ec3ec 100644 --- a/arch/arm64/kernel/cpuinfo.c +++ b/arch/arm64/kernel/cpuinfo.c -@@ -222,8 +222,7 @@ static int c_show(struct seq_file *m, void *v) - * "processor". Give glibc what it expects. - */ - seq_printf(m, "processor\t: %d\n", i); -- if (compat) -- seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n", -+ seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n", - MIDR_REVISION(midr), COMPAT_ELF_PLATFORM); +@@ -221,9 +221,8 @@ static int c_show(struct seq_file *m, void *v) + * "processor". Give glibc what it expects. + */ + seq_printf(m, "processor\t: %d\n", cpu); +- if (compat) +- seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n", +- MIDR_REVISION(midr), COMPAT_ELF_PLATFORM); ++ seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n", ++ MIDR_REVISION(midr), COMPAT_ELF_PLATFORM); - seq_printf(m, "BogoMIPS\t: %lu.%02lu\n", + seq_printf(m, "BogoMIPS\t: %lu.%02lu\n", + loops_per_jiffy / (500000UL/HZ), -- 2.34.1 diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0004-LOCAL-arm64-meson-add-Amlogic-Meson-GX-PM-Suspend.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0004-LOCAL-arm64-meson-add-Amlogic-Meson-GX-PM-Suspend.patch index 264361965a..5111ef0caa 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0004-LOCAL-arm64-meson-add-Amlogic-Meson-GX-PM-Suspend.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0004-LOCAL-arm64-meson-add-Amlogic-Meson-GX-PM-Suspend.patch @@ -1,7 +1,7 @@ -From 765093b18eb098db4bfc6036eb02c99a0217dd92 Mon Sep 17 00:00:00 2001 +From cacea1a7dcf9e69c3d1cfc1026a05a9332bf9837 Mon Sep 17 00:00:00 2001 From: Neil Armstrong Date: Thu, 3 Nov 2016 15:29:23 +0100 -Subject: [PATCH 04/50] LOCAL: arm64: meson: add Amlogic Meson GX PM Suspend +Subject: [PATCH 04/37] LOCAL: arm64: meson: add Amlogic Meson GX PM Suspend The Amlogic Meson GX SoCs uses a non-standard argument to the PSCI CPU_SUSPEND call to enter system suspend. diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0005-LOCAL-arm64-dts-meson-add-support-for-GX-PM-and-Virt.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0005-LOCAL-arm64-dts-meson-add-support-for-GX-PM-and-Virt.patch index 3b4915fd94..84a1cb9201 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0005-LOCAL-arm64-dts-meson-add-support-for-GX-PM-and-Virt.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0005-LOCAL-arm64-dts-meson-add-support-for-GX-PM-and-Virt.patch @@ -1,7 +1,7 @@ -From 0e93f1bf987e1ca7bf6e094a7657cfa894d3c308 Mon Sep 17 00:00:00 2001 +From ac95c04240bf6d1f12158f819bb9c0a0d06d6653 Mon Sep 17 00:00:00 2001 From: Neil Armstrong Date: Thu, 3 Nov 2016 15:29:25 +0100 -Subject: [PATCH 05/50] LOCAL: arm64: dts: meson: add support for GX PM and +Subject: [PATCH 05/37] LOCAL: arm64: dts: meson: add support for GX PM and Virtual RTC Signed-off-by: Neil Armstrong diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0006-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0006-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch index 4ca54b352f..4c8ab5a200 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0006-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0006-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch @@ -1,7 +1,7 @@ -From cae8d14554d6cbfad5ea7a14ae76e2b0312f2a4f Mon Sep 17 00:00:00 2001 +From 3198831b6d71337b85e5011fc820ea13057ab3a6 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Thu, 21 Jan 2021 01:35:36 +0000 -Subject: [PATCH 06/50] LOCAL: arm64: dts: meson: add rtc/vrtc aliases to +Subject: [PATCH 06/37] LOCAL: arm64: dts: meson: add rtc/vrtc aliases to Khadas VIM Add aliases to ensure the vrtc time (which normally proves first) is /dev/rtc1 diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0007-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0007-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch index 83089bfd09..2282fd4014 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0007-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0007-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Khadas.patch @@ -1,7 +1,7 @@ -From 5cbe1c3b07ccb36041afa878db1540977f62475f Mon Sep 17 00:00:00 2001 +From 596472232f2a08c7dd62597c9c041be4333e22b0 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Sat, 6 Nov 2021 13:01:08 +0000 -Subject: [PATCH 07/50] LOCAL: arm64: dts: meson: add rtc/vrtc aliases to +Subject: [PATCH 07/37] LOCAL: arm64: dts: meson: add rtc/vrtc aliases to Khadas VIM2 Add aliases to ensure the vrtc time (which normally proves first) is /dev/rtc1 diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0008-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Minix-.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0008-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Minix-.patch index ae5ab01585..3b0320ff6d 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0008-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Minix-.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0008-LOCAL-arm64-dts-meson-add-rtc-vrtc-aliases-to-Minix-.patch @@ -1,7 +1,7 @@ -From 0b52c619a4ca1ae1569ff3d8b33d0d1f791e8378 Mon Sep 17 00:00:00 2001 +From a8f90df94245a52d5a0aff58a640b5c86e0ed83c Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Mon, 1 Feb 2021 19:27:40 +0000 -Subject: [PATCH 08/50] LOCAL: arm64: dts: meson: add rtc/vrtc aliases to Minix +Subject: [PATCH 08/37] LOCAL: arm64: dts: meson: add rtc/vrtc aliases to Minix NEO U9-H Add node aliases to prevent meson-vrtc from claiming /dev/rtc0 diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0009-LOCAL-ASoC-meson-assign-internal-PCM-chmap-ELD-IEC95.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0009-LOCAL-ASoC-meson-assign-internal-PCM-chmap-ELD-IEC95.patch index bce8ca51db..d0b613ea24 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0009-LOCAL-ASoC-meson-assign-internal-PCM-chmap-ELD-IEC95.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0009-LOCAL-ASoC-meson-assign-internal-PCM-chmap-ELD-IEC95.patch @@ -1,7 +1,7 @@ -From 74691114248dc2f00dbaada19b5506f6a78ef7bd Mon Sep 17 00:00:00 2001 +From e751b7cfeaca07cef1b14cebbd4dc567ed50ed37 Mon Sep 17 00:00:00 2001 From: Anssi Hannula Date: Sun, 17 Apr 2022 04:37:48 +0000 -Subject: [PATCH 09/50] LOCAL: ASoC: meson: assign internal PCM +Subject: [PATCH 09/37] LOCAL: ASoC: meson: assign internal PCM chmap/ELD/IEC958 kctls to device 0 On SoC sound devices utilizing codec2codec DAI links with an HDMI codec the kctls @@ -40,7 +40,7 @@ index 6eaa950504cf..f2f05f1c4f98 100644 knew.private_value = private_value; info->kctl = snd_ctl_new1(&knew, info); diff --git a/sound/soc/codecs/hdmi-codec.c b/sound/soc/codecs/hdmi-codec.c -index bc01ff65bd6f..41dc02826343 100644 +index 31121f9c18c9..606abb3889c1 100644 --- a/sound/soc/codecs/hdmi-codec.c +++ b/sound/soc/codecs/hdmi-codec.c @@ -821,7 +821,8 @@ static int hdmi_codec_pcm_new(struct snd_soc_pcm_runtime *rtd, diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0010-LOCAL-media-meson-vdec-disable-MPEG1-MPEG2-hardware-.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0010-LOCAL-media-meson-vdec-disable-MPEG1-MPEG2-hardware-.patch index 0726d47e42..861e3db353 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0010-LOCAL-media-meson-vdec-disable-MPEG1-MPEG2-hardware-.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0010-LOCAL-media-meson-vdec-disable-MPEG1-MPEG2-hardware-.patch @@ -1,7 +1,7 @@ -From 531d05b9fae9b0eadd0dc597f195bc500d492879 Mon Sep 17 00:00:00 2001 +From 3de630c16f0ddbaa6442ebc3b6938bc1c4526b34 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Thu, 5 Jan 2023 15:16:46 +0000 -Subject: [PATCH 10/50] LOCAL: media: meson: vdec: disable MPEG1/MPEG2 hardware +Subject: [PATCH 10/37] LOCAL: media: meson: vdec: disable MPEG1/MPEG2 hardware decoding The MPEG1/2 decoder is broken and nobody has volunteered to poke diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMGIT-6.16-arm64-dts-amlogic-gxbb-enable-UART-RX-a.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMGIT-6.16-arm64-dts-amlogic-gxbb-enable-UART-RX-a.patch deleted file mode 100644 index e040311706..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMGIT-6.16-arm64-dts-amlogic-gxbb-enable-UART-RX-a.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 72bed39069eff09afa075b506f434ddb60beb05c Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 29 Mar 2025 19:58:51 +0100 -Subject: [PATCH 11/50] FROMGIT(6.16): arm64: dts: amlogic: gxbb: enable UART - RX and TX pull up by default - -Some boards have noise on the UART RX line when the UART pins are not -connected to another device (such as an USB UART adapter). This can -be addressed by using a pull up resistor. Not all boards may provide -such a pull up resistor on the PCB so enable the SoC's pull-up on the -UART RX and TX pads by default. This matches the default (from u-boot -or SoC hardware) state for the pinmux configuration on these pads. - -Signed-off-by: Martin Blumenstingl ---- - arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi -index 6c134592c7bb..f69923da07fe 100644 ---- a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi -+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi -@@ -105,7 +105,7 @@ uart_ao_a_pins: uart_ao_a { - mux { - groups = "uart_tx_ao_a", "uart_rx_ao_a"; - function = "uart_ao"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -122,7 +122,7 @@ uart_ao_b_pins: uart_ao_b { - mux { - groups = "uart_tx_ao_b", "uart_rx_ao_b"; - function = "uart_ao_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -520,7 +520,7 @@ mux { - groups = "uart_tx_a", - "uart_rx_a"; - function = "uart_a"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -538,7 +538,7 @@ mux { - groups = "uart_tx_b", - "uart_rx_b"; - function = "uart_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -556,7 +556,7 @@ mux { - groups = "uart_tx_c", - "uart_rx_c"; - function = "uart_c"; -- bias-disable; -+ bias-pull-up; - }; - }; - --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0018-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch similarity index 97% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0018-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch index 2fc25ee842..17e56302c3 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0018-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0011-FROMLIST-v1-drm-meson-fix-resource-cleanup-in-meson_.patch @@ -1,7 +1,7 @@ -From 71896885a3cc8e53b4a8b42edbcde5e2e12a8835 Mon Sep 17 00:00:00 2001 +From 4c895bf75fbf67654d02032cfbdfa57fa4777b20 Mon Sep 17 00:00:00 2001 From: Martin Blumenstingl Date: Wed, 9 Apr 2025 23:44:22 +0200 -Subject: [PATCH 18/50] FROMLIST(v1): drm/meson: fix resource cleanup in +Subject: [PATCH 11/37] FROMLIST(v1): drm/meson: fix resource cleanup in meson_drv_bind_master() on error meson_drv_bind_master() does not free resources in the order they are diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMGIT-6.16-arm64-dts-amlogic-gxl-enable-UART-RX-an.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMGIT-6.16-arm64-dts-amlogic-gxl-enable-UART-RX-an.patch deleted file mode 100644 index 7a5b46142b..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMGIT-6.16-arm64-dts-amlogic-gxl-enable-UART-RX-an.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 4a84dbe5beb7a386e4ef00cd72c8c70db3b57c60 Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 29 Mar 2025 19:58:52 +0100 -Subject: [PATCH 12/50] FROMGIT(6.16): arm64: dts: amlogic: gxl: enable UART RX - and TX pull up by default - -Some boards have noise on the UART RX line when the UART pins are not -connected to another device (such as an USB UART adapter). This can -be addressed by using a pull up resistor. Not all boards may provide -such a pull up resistor on the PCB so enable the SoC's pull-up on the -UART RX and TX pads by default. This matches the default (from u-boot -or SoC hardware) state for the pinmux configuration on these pads. - -Signed-off-by: Martin Blumenstingl ---- - arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi -index 19b8a39de6a0..bc52b9e954b4 100644 ---- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi -+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi -@@ -163,7 +163,7 @@ uart_ao_a_pins: uart_ao_a { - mux { - groups = "uart_tx_ao_a", "uart_rx_ao_a"; - function = "uart_ao"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -180,7 +180,7 @@ uart_ao_b_pins: uart_ao_b { - mux { - groups = "uart_tx_ao_b", "uart_rx_ao_b"; - function = "uart_ao_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -188,7 +188,7 @@ uart_ao_b_0_1_pins: uart_ao_b_0_1 { - mux { - groups = "uart_tx_ao_b_0", "uart_rx_ao_b_1"; - function = "uart_ao_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -522,7 +522,7 @@ mux { - groups = "uart_tx_a", - "uart_rx_a"; - function = "uart_a"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -540,7 +540,7 @@ mux { - groups = "uart_tx_b", - "uart_rx_b"; - function = "uart_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -558,7 +558,7 @@ mux { - groups = "uart_tx_c", - "uart_rx_c"; - function = "uart_c"; -- bias-disable; -+ bias-pull-up; - }; - }; - --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0032-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch similarity index 94% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0032-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch index f67c3f798b..1ae3e62929 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0032-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0012-FROMLIST-v1-drm-meson-Avoid-use-after-free-issues-wi.patch @@ -1,7 +1,7 @@ -From 06cfee817d6258d81dc254db20e18780f294ac2b Mon Sep 17 00:00:00 2001 +From 6745bff6c6c1ee1746c955504a3ea32d12ec8d79 Mon Sep 17 00:00:00 2001 From: Zhang Kunbo Date: Wed, 6 Nov 2024 02:45:48 +0000 -Subject: [PATCH 32/50] FROMLIST(v1): drm/meson: Avoid use-after-free issues +Subject: [PATCH 12/37] FROMLIST(v1): drm/meson: Avoid use-after-free issues with crtc It's dangerous to call drm_crtc_init_with_planes() whose second diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMGIT-6.16-arm64-dts-amlogic-g12-enable-UART-RX-an.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMGIT-6.16-arm64-dts-amlogic-g12-enable-UART-RX-an.patch deleted file mode 100644 index ef669a0de9..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMGIT-6.16-arm64-dts-amlogic-g12-enable-UART-RX-an.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 31a7decb0a9fde10cb9182f2d4bda8a07b4ec32f Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 29 Mar 2025 19:58:53 +0100 -Subject: [PATCH 13/50] FROMGIT(6.16): arm64: dts: amlogic: g12: enable UART RX - and TX pull up by default - -Some boards have noise on the UART RX line when the UART pins are not -connected to another device (such as an USB UART adapter). This can -be addressed by using a pull up resistor. Not all boards may provide -such a pull up resistor on the PCB so enable the SoC's pull-up on the -UART RX and TX pads by default. This matches the default (from u-boot -or SoC hardware) state for the pinmux configuration on these pads. - -Signed-off-by: Martin Blumenstingl ---- - arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi -index 4b75b4d07901..0b6f13f8911b 100644 ---- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi -+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi -@@ -1503,7 +1503,7 @@ mux { - groups = "uart_a_tx", - "uart_a_rx"; - function = "uart_a"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -1521,7 +1521,7 @@ mux { - groups = "uart_b_tx", - "uart_b_rx"; - function = "uart_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -1918,7 +1918,7 @@ mux { - groups = "uart_ao_a_tx", - "uart_ao_a_rx"; - function = "uart_ao_a"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -1936,7 +1936,7 @@ mux { - groups = "uart_ao_b_tx_2", - "uart_ao_b_rx_3"; - function = "uart_ao_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -1945,7 +1945,7 @@ mux { - groups = "uart_ao_b_tx_8", - "uart_ao_b_rx_9"; - function = "uart_ao_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0027-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch similarity index 95% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0027-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch index 550d0edea3..b5a751a2af 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0027-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0013-FROMLIST-v2-media-si2168-increase-cmd-execution-time.patch @@ -1,7 +1,7 @@ -From 9d2619928bd7d4c01389c2132058460f32338970 Mon Sep 17 00:00:00 2001 +From 4babe8c6a677ed0f21cf518c8ce78caecc8963b8 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Fri, 7 Feb 2025 04:29:08 +0000 -Subject: [PATCH 27/50] FROMLIST(v2): media: si2168: increase cmd execution +Subject: [PATCH 13/37] FROMLIST(v2): media: si2168: increase cmd execution timeout value Testing with a MyGica T230C v2 USB device (0572:c68a) shows occasional diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMGIT-6.16-dt-bindings-iio-adc-amlogic-meson-sarad.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMGIT-6.16-dt-bindings-iio-adc-amlogic-meson-sarad.patch deleted file mode 100644 index dd95e6c8d3..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMGIT-6.16-dt-bindings-iio-adc-amlogic-meson-sarad.patch +++ /dev/null @@ -1,30 +0,0 @@ -From a8b34bc50f933ff7e54d26eb89545c5e67f3387f Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Tue, 31 Dec 2024 20:42:06 +0100 -Subject: [PATCH 14/50] FROMGIT(6.16): dt-bindings: iio: adc: - amlogic,meson-saradc: Add GXLX SoC compatible - -Add a compatible string for the GXLX SoC. It's very similar to GXL but -has three additional bits in MESON_SAR_ADC_REG12 for the three MPLL -clocks. - -Signed-off-by: Martin Blumenstingl ---- - .../devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml b/Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml -index b0962a4583ac..bb9825e7346d 100644 ---- a/Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml -+++ b/Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml -@@ -23,6 +23,7 @@ properties: - - amlogic,meson8m2-saradc - - amlogic,meson-gxbb-saradc - - amlogic,meson-gxl-saradc -+ - amlogic,meson-gxlx-saradc - - amlogic,meson-gxm-saradc - - amlogic,meson-axg-saradc - - amlogic,meson-g12a-saradc --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0028-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch similarity index 93% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0028-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch index 5d647fe564..6d4a5d04c7 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0028-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0014-FROMLIST-v1-media-meson-vdec-esparser-check-parsing-.patch @@ -1,7 +1,7 @@ -From c0933f4134e1ffc732358af32354e8ac26f074ce Mon Sep 17 00:00:00 2001 +From 3eb58e53708f534a47f4cccbd44efa36d5584a5c Mon Sep 17 00:00:00 2001 From: Neil Armstrong Date: Mon, 22 Nov 2021 09:15:21 +0000 -Subject: [PATCH 28/50] FROMLIST(v1): media: meson: vdec: esparser: check +Subject: [PATCH 14/37] FROMLIST(v1): media: meson: vdec: esparser: check parsing state with hardware write pointer Also check the hardware write pointer to check if ES Parser has stalled. diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMGIT-6.16-arm64-dts-amlogic-gxlx-s905l-p271-add-s.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMGIT-6.16-arm64-dts-amlogic-gxlx-s905l-p271-add-s.patch deleted file mode 100644 index d3f28c770f..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMGIT-6.16-arm64-dts-amlogic-gxlx-s905l-p271-add-s.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 6e59acc3aa28875709d87990ec834219a481164f Mon Sep 17 00:00:00 2001 -From: Christian Hewitt -Date: Wed, 1 Jan 2025 07:16:49 +0000 -Subject: [PATCH 15/50] FROMGIT(6.16): arm64: dts: amlogic: gxlx-s905l-p271: - add saradc compatible - -Add the saradac node using the meson-gxlx-saradc compatible to ensure -MPLL clocks are poked and audio output is enabled on the p271 (S905L) -board. - -Signed-off-by: Christian Hewitt ---- - arch/arm64/boot/dts/amlogic/meson-gxlx-s905l-p271.dts | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/arch/arm64/boot/dts/amlogic/meson-gxlx-s905l-p271.dts b/arch/arm64/boot/dts/amlogic/meson-gxlx-s905l-p271.dts -index 942df754a0ed..1221f4545130 100644 ---- a/arch/arm64/boot/dts/amlogic/meson-gxlx-s905l-p271.dts -+++ b/arch/arm64/boot/dts/amlogic/meson-gxlx-s905l-p271.dts -@@ -38,6 +38,10 @@ mali: gpu@c0000 { - }; - }; - -+&saradc { -+ compatible = "amlogic,meson-gxlx-saradc", "amlogic,meson-saradc"; -+}; -+ - &usb { - dr_mode = "host"; - }; --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0029-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch similarity index 99% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0029-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch index 08eb4f50a3..2a5251ecb0 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0029-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0015-FROMLIST-v2-media-meson-vdec-implement-10bit-bitstre.patch @@ -1,7 +1,7 @@ -From 43e246de0ce0168b5dd9c53bd7ff6bfa3a5a6132 Mon Sep 17 00:00:00 2001 +From 61874bc3835b2326bb40bae200888657e7d38fa3 Mon Sep 17 00:00:00 2001 From: Benjamin Roszak Date: Mon, 23 Jan 2023 10:56:46 +0000 -Subject: [PATCH 29/50] FROMLIST(v2): media: meson: vdec: implement 10bit +Subject: [PATCH 15/37] FROMLIST(v2): media: meson: vdec: implement 10bit bitstream handling In order to support 10bit bitstream decoding, buffers and MMU diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMGIT-6.16-arm64-dts-amlogic-gxl-set-i2c-bias-to-p.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMGIT-6.16-arm64-dts-amlogic-gxl-set-i2c-bias-to-p.patch deleted file mode 100644 index 1e77219870..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMGIT-6.16-arm64-dts-amlogic-gxl-set-i2c-bias-to-p.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 5bfaf4d45f59a3c3160b0be1021a28aa12f6c0fb Mon Sep 17 00:00:00 2001 -From: Da Xue -Date: Fri, 25 Apr 2025 16:31:18 -0400 -Subject: [PATCH 16/50] FROMGIT(6.16): arm64: dts: amlogic: gxl: set i2c bias - to pull-up - -GXL I2C pins need internal pull-up enabled to operate if there -is no external resistor. The pull-up is 60kohms per the datasheet. - -We should set the bias when i2c pinmux is enabled. - -Signed-off-by: Da Xue ---- - arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi -index bc52b9e954b4..ba535010a3c9 100644 ---- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi -+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi -@@ -214,7 +214,7 @@ mux { - groups = "i2c_sck_ao", - "i2c_sda_ao"; - function = "i2c_ao"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -576,7 +576,7 @@ mux { - groups = "i2c_sck_a", - "i2c_sda_a"; - function = "i2c_a"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -585,7 +585,7 @@ mux { - groups = "i2c_sck_b", - "i2c_sda_b"; - function = "i2c_b"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -594,7 +594,7 @@ mux { - groups = "i2c_sck_c", - "i2c_sda_c"; - function = "i2c_c"; -- bias-disable; -+ bias-pull-up; - }; - }; - -@@ -603,7 +603,7 @@ mux { - groups = "i2c_sck_c_dv19", - "i2c_sda_c_dv18"; - function = "i2c_c"; -- bias-disable; -+ bias-pull-up; - }; - }; - --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0030-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch similarity index 99% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0030-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch index 03677b5d4d..7d04ce2ae7 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0030-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0016-FROMLIST-v2-media-meson-vdec-add-HEVC-decode-codec.patch @@ -1,7 +1,7 @@ -From 582ec7ddd9bd5121186839cf340bab76fc1bbb28 Mon Sep 17 00:00:00 2001 +From befb64847f9d38e20a38ed9ca3e351a4d80e9d05 Mon Sep 17 00:00:00 2001 From: Maxime Jourdan Date: Mon, 23 Jan 2023 11:07:04 +0000 -Subject: [PATCH 30/50] FROMLIST(v2): media: meson: vdec: add HEVC decode codec +Subject: [PATCH 16/37] FROMLIST(v2): media: meson: vdec: add HEVC decode codec Add initial HEVC codec for the Amlogic GXBB/GXL/GXM SoCs using the common "HEVC" decoder driver. diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMGIT-6.16-ASoC-meson-meson-card-utils-use-of_prop.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMGIT-6.16-ASoC-meson-meson-card-utils-use-of_prop.patch deleted file mode 100644 index 420f892e06..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMGIT-6.16-ASoC-meson-meson-card-utils-use-of_prop.patch +++ /dev/null @@ -1,42 +0,0 @@ -From a2c43a1fdf6a9ce8f5c2f39b66bbe12b143137e8 Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 19 Apr 2025 23:34:48 +0200 -Subject: [PATCH 17/50] FROMGIT(6.16): ASoC: meson: meson-card-utils: use - of_property_present() for DT parsing - -Commit c141ecc3cecd ("of: Warn when of_property_read_bool() is used on -non-boolean properties") added a warning when trying to parse a property -with a value (boolean properties are defined as: absent = false, present -without any value = true). This causes a warning from meson-card-utils. - -meson-card-utils needs to know about the existence of the -"audio-routing" and/or "audio-widgets" properties in order to properly -parse them. Switch to of_property_present() in order to silence the -following warning messages during boot: - OF: /sound: Read of boolean property 'audio-routing' with a value. - OF: /sound: Read of boolean property 'audio-widgets' with a value. - -Fixes: 7864a79f37b5 ("ASoC: meson: add axg sound card support") -Tested-by: Christian Hewitt -Cc: stable@vger.kernel.org -Signed-off-by: Martin Blumenstingl ---- - sound/soc/meson/meson-card-utils.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sound/soc/meson/meson-card-utils.c b/sound/soc/meson/meson-card-utils.c -index cfc7f6e41ab5..68531183fb60 100644 ---- a/sound/soc/meson/meson-card-utils.c -+++ b/sound/soc/meson/meson-card-utils.c -@@ -231,7 +231,7 @@ static int meson_card_parse_of_optional(struct snd_soc_card *card, - const char *p)) - { - /* If property is not provided, don't fail ... */ -- if (!of_property_read_bool(card->dev->of_node, propname)) -+ if (!of_property_present(card->dev->of_node, propname)) - return 0; - - /* ... but do fail if it is provided and the parsing fails */ --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch similarity index 86% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch index 42475fc3e9..f31ec5f12f 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0017-FROMLIST-v1-arm64-dts-amlogic-sm1-bananapi-lower-SD-.patch @@ -1,7 +1,7 @@ -From b76df09d6d4172ff6b1eff9c1fb67f502267c5c7 Mon Sep 17 00:00:00 2001 +From 2411a183fc6f2806727cf9dcfe62dcd5e1199ce9 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Sat, 3 May 2025 15:18:07 +0000 -Subject: [PATCH 33/50] FROMLIST(v1): arm64: dts: amlogic: sm1-bananapi: lower +Subject: [PATCH 17/37] FROMLIST(v1): arm64: dts: amlogic: sm1-bananapi: lower SD card speed for stability Users report being able to boot (u-boot) from SD card but kernel @@ -19,10 +19,10 @@ Signed-off-by: Christian Hewitt 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi -index 40db95f64636..03b4b414cd5f 100644 +index 538b35036954..5e07f0f9538e 100644 --- a/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi -@@ -384,11 +384,10 @@ &sd_emmc_b { +@@ -380,11 +380,10 @@ &sd_emmc_b { bus-width = <4>; cap-sd-highspeed; diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0036-WIP-media-meson-vdec-reintroduce-wiggle-room.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0018-WIP-media-meson-vdec-reintroduce-wiggle-room.patch similarity index 92% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0036-WIP-media-meson-vdec-reintroduce-wiggle-room.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0018-WIP-media-meson-vdec-reintroduce-wiggle-room.patch index c9ae8fb7f1..cbbac573f9 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0036-WIP-media-meson-vdec-reintroduce-wiggle-room.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0018-WIP-media-meson-vdec-reintroduce-wiggle-room.patch @@ -1,7 +1,7 @@ -From 5e84aed6397e500e9cbcffa392fabdc1733f0645 Mon Sep 17 00:00:00 2001 +From a1f197da3061f0ccf210e7b69c478e31377196c4 Mon Sep 17 00:00:00 2001 From: Andreas Baierl Date: Tue, 2 Apr 2024 14:22:52 +0000 -Subject: [PATCH 36/50] WIP: media: meson: vdec: reintroduce wiggle room +Subject: [PATCH 18/37] WIP: media: meson: vdec: reintroduce wiggle room Without the wiggle room, it happens that matching offsets can't be found. This results in non-matches and afterwards in frame drops in userspace apps. diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-FIELD_PREP-.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-FIELD_PREP-.patch deleted file mode 100644 index d07ff5cb9c..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-FIELD_PREP-.patch +++ /dev/null @@ -1,53 +0,0 @@ -From f51e36cf49670c59f326a7b341cc4c08d6996f31 Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 29 Mar 2025 20:07:11 +0100 -Subject: [PATCH 19/50] FROMLIST(v2): phy: amlogic: meson8b-usb2: Use - FIELD_PREP instead of _SHIFT macros - -This simplifies the code by re-using the FIELD_PREP helper. No -functional changes inteded. - -Reviewed-by: Neil Armstrong -Signed-off-by: Martin Blumenstingl ---- - drivers/phy/amlogic/phy-meson8b-usb2.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/drivers/phy/amlogic/phy-meson8b-usb2.c b/drivers/phy/amlogic/phy-meson8b-usb2.c -index d63147c41b8c..d9c761b7c15c 100644 ---- a/drivers/phy/amlogic/phy-meson8b-usb2.c -+++ b/drivers/phy/amlogic/phy-meson8b-usb2.c -@@ -5,6 +5,7 @@ - * Copyright (C) 2016 Martin Blumenstingl - */ - -+#include - #include - #include - #include -@@ -39,9 +40,7 @@ - #define REG_CTRL_TX_BITSTUFF_ENN BIT(18) - #define REG_CTRL_COMMON_ON BIT(19) - #define REG_CTRL_REF_CLK_SEL_MASK GENMASK(21, 20) -- #define REG_CTRL_REF_CLK_SEL_SHIFT 20 - #define REG_CTRL_FSEL_MASK GENMASK(24, 22) -- #define REG_CTRL_FSEL_SHIFT 22 - #define REG_CTRL_PORT_RESET BIT(25) - #define REG_CTRL_THREAD_ID_MASK GENMASK(31, 26) - -@@ -170,10 +169,10 @@ static int phy_meson8b_usb2_power_on(struct phy *phy) - REG_CONFIG_CLK_32k_ALTSEL); - - regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_REF_CLK_SEL_MASK, -- 0x2 << REG_CTRL_REF_CLK_SEL_SHIFT); -+ FIELD_PREP(REG_CTRL_REF_CLK_SEL_MASK, 0x2)); - - regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_FSEL_MASK, -- 0x5 << REG_CTRL_FSEL_SHIFT); -+ FIELD_PREP(REG_CTRL_FSEL_MASK, 0x5)); - - /* reset the PHY */ - regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET, --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch similarity index 87% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch index 6bdbf0263e..17bfd1d460 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0019-WIP-media-meson-vdec-fix-memory-leak-of-new_frame.patch @@ -1,7 +1,7 @@ -From cfd49ef6246760ffd07fba75691a25f9bccea9fa Mon Sep 17 00:00:00 2001 +From e0ebd51471f1153d3d1dc53b9a645fde537b1411 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Tue, 14 Mar 2023 01:13:15 +0000 -Subject: [PATCH 37/50] WIP: media: meson: vdec: fix memory leak of 'new_frame' +Subject: [PATCH 19/37] WIP: media: meson: vdec: fix memory leak of 'new_frame' Reported-by: kernel test robot Reported-by: Dan Carpenter diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-the-regmap_.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-the-regmap_.patch deleted file mode 100644 index 65c94cae98..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-FROMLIST-v2-phy-amlogic-meson8b-usb2-Use-the-regmap_.patch +++ /dev/null @@ -1,84 +0,0 @@ -From e4b38fd1dcd0eb1abd14dc4bcd0517d2bcef499c Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 29 Mar 2025 20:07:12 +0100 -Subject: [PATCH 20/50] FROMLIST(v2): phy: amlogic: meson8b-usb2: Use the - regmap_{clear,set}_bits helpers - -These require less code, reduce the chance of typos and overall make the -intent clearer. No functional changes. - -Reviewed-by: Neil Armstrong -Signed-off-by: Martin Blumenstingl ---- - drivers/phy/amlogic/phy-meson8b-usb2.c | 28 ++++++++++---------------- - 1 file changed, 11 insertions(+), 17 deletions(-) - -diff --git a/drivers/phy/amlogic/phy-meson8b-usb2.c b/drivers/phy/amlogic/phy-meson8b-usb2.c -index d9c761b7c15c..a553231a9f7c 100644 ---- a/drivers/phy/amlogic/phy-meson8b-usb2.c -+++ b/drivers/phy/amlogic/phy-meson8b-usb2.c -@@ -165,8 +165,7 @@ static int phy_meson8b_usb2_power_on(struct phy *phy) - return ret; - } - -- regmap_update_bits(priv->regmap, REG_CONFIG, REG_CONFIG_CLK_32k_ALTSEL, -- REG_CONFIG_CLK_32k_ALTSEL); -+ regmap_set_bits(priv->regmap, REG_CONFIG, REG_CONFIG_CLK_32k_ALTSEL); - - regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_REF_CLK_SEL_MASK, - FIELD_PREP(REG_CTRL_REF_CLK_SEL_MASK, 0x2)); -@@ -175,23 +174,20 @@ static int phy_meson8b_usb2_power_on(struct phy *phy) - FIELD_PREP(REG_CTRL_FSEL_MASK, 0x5)); - - /* reset the PHY */ -- regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET, -- REG_CTRL_POWER_ON_RESET); -+ regmap_set_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET); - udelay(RESET_COMPLETE_TIME); -- regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET, 0); -+ regmap_clear_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET); - udelay(RESET_COMPLETE_TIME); - -- regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_SOF_TOGGLE_OUT, -- REG_CTRL_SOF_TOGGLE_OUT); -+ regmap_set_bits(priv->regmap, REG_CTRL, REG_CTRL_SOF_TOGGLE_OUT); - - if (priv->dr_mode == USB_DR_MODE_HOST) { -- regmap_update_bits(priv->regmap, REG_DBG_UART, -- REG_DBG_UART_SET_IDDQ, 0); -+ regmap_clear_bits(priv->regmap, REG_DBG_UART, -+ REG_DBG_UART_SET_IDDQ); - - if (priv->match->host_enable_aca) { -- regmap_update_bits(priv->regmap, REG_ADP_BC, -- REG_ADP_BC_ACA_ENABLE, -- REG_ADP_BC_ACA_ENABLE); -+ regmap_set_bits(priv->regmap, REG_ADP_BC, -+ REG_ADP_BC_ACA_ENABLE); - - udelay(ACA_ENABLE_COMPLETE_TIME); - -@@ -214,17 +210,15 @@ static int phy_meson8b_usb2_power_off(struct phy *phy) - struct phy_meson8b_usb2_priv *priv = phy_get_drvdata(phy); - - if (priv->dr_mode == USB_DR_MODE_HOST) -- regmap_update_bits(priv->regmap, REG_DBG_UART, -- REG_DBG_UART_SET_IDDQ, -- REG_DBG_UART_SET_IDDQ); -+ regmap_set_bits(priv->regmap, REG_DBG_UART, -+ REG_DBG_UART_SET_IDDQ); - - clk_disable_unprepare(priv->clk_usb); - clk_disable_unprepare(priv->clk_usb_general); - reset_control_rearm(priv->reset); - - /* power off the PHY by putting it into reset mode */ -- regmap_update_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET, -- REG_CTRL_POWER_ON_RESET); -+ regmap_set_bits(priv->regmap, REG_CTRL, REG_CTRL_POWER_ON_RESET); - - return 0; - } --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0038-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch similarity index 98% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0038-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch index 0077fcf000..2422165523 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0038-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0020-WIP-media-meson-vdec-fix-V4L2_BUF_FLAG_-KEY-P-B-FRAM.patch @@ -1,7 +1,7 @@ -From e1d10bac2d576aaa7ad84fd67046ce93869e3652 Mon Sep 17 00:00:00 2001 +From 32d8e8ef41de29cfede75a4eed0f33fa4d326057 Mon Sep 17 00:00:00 2001 From: Andreas Baierl Date: Thu, 20 Feb 2025 23:59:14 +0000 -Subject: [PATCH 38/50] WIP: media: meson: vdec: fix +Subject: [PATCH 20/37] WIP: media: meson: vdec: fix V4L2_BUF_FLAG_{KEY|P|B}FRAME ffmpeg needs the keyframe flag to be set correctly, else diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0039-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0021-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch similarity index 98% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0039-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0021-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch index 20a4b0cdbe..ba8ae22eb2 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0039-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0021-WIP-arm64-dts-meson-add-Odroid-C2-HiFi-Shield-boards.patch @@ -1,7 +1,7 @@ -From bc08bd56d8eb62b97d7028ac88eba9a2613f2617 Mon Sep 17 00:00:00 2001 +From 2efb62e0eaeeb3d2c84b7d12c94a5ba99c257b06 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Sun, 26 May 2024 12:53:07 +0000 -Subject: [PATCH 39/50] WIP: arm64: dts: meson: add Odroid-C2 HiFi-Shield +Subject: [PATCH 21/37] WIP: arm64: dts: meson: add Odroid-C2 HiFi-Shield boards Add experimental device-tree files for Odroid C2 with HiFi-Shield+ (pcm5102a) @@ -17,10 +17,10 @@ Signed-off-by: Christian Hewitt create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2-hifishield2.dts diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile -index 2fbda8419c65..6c246387985a 100644 +index 15e7901c1268..b593736ff60b 100644 --- a/arch/arm64/boot/dts/amlogic/Makefile +++ b/arch/arm64/boot/dts/amlogic/Makefile -@@ -98,3 +98,7 @@ meson-g12a-fbx8am-brcm-dtbs := meson-g12a-fbx8am.dtb meson-g12a-fbx8am-brcm.dtbo +@@ -102,3 +102,7 @@ meson-g12a-fbx8am-brcm-dtbs := meson-g12a-fbx8am.dtb meson-g12a-fbx8am-brcm.dtbo meson-g12a-fbx8am-realtek-dtbs := meson-g12a-fbx8am.dtb meson-g12a-fbx8am-realtek.dtbo meson-g12b-a311d-khadas-vim3-ts050-dtbs := meson-g12b-a311d-khadas-vim3.dtb meson-khadas-vim3-ts050.dtbo meson-sm1-khadas-vim3l-ts050-dtbs := meson-sm1-khadas-vim3l.dtb meson-khadas-vim3-ts050.dtbo diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-FROMLIST-v5-dt-bindings-auxdisplay-Add-Titan-Micro-E.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-FROMLIST-v5-dt-bindings-auxdisplay-Add-Titan-Micro-E.patch deleted file mode 100644 index 3d005cb0d1..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-FROMLIST-v5-dt-bindings-auxdisplay-Add-Titan-Micro-E.patch +++ /dev/null @@ -1,114 +0,0 @@ -From 8bb7fe71e8e273a69a4c77c9096144eeb6820a2a Mon Sep 17 00:00:00 2001 -From: Heiner Kallweit -Date: Sun, 20 Feb 2022 08:24:47 +0000 -Subject: [PATCH 22/50] FROMLIST(v5): dt-bindings: auxdisplay: Add Titan Micro - Electronics TM1628 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Add a YAML schema binding for TM1628 auxdisplay -(7/11-segment LED) controller. - -This patch is partially based on previous RFC work from -Andreas Färber . - -Co-developed-by: Andreas Färber -Signed-off-by: Andreas Färber -Signed-off-by: Heiner Kallweit ---- - .../bindings/auxdisplay/titanmec,tm1628.yaml | 82 +++++++++++++++++++ - 1 file changed, 82 insertions(+) - create mode 100644 Documentation/devicetree/bindings/auxdisplay/titanmec,tm1628.yaml - -diff --git a/Documentation/devicetree/bindings/auxdisplay/titanmec,tm1628.yaml b/Documentation/devicetree/bindings/auxdisplay/titanmec,tm1628.yaml -new file mode 100644 -index 000000000000..d9cbbc950aab ---- /dev/null -+++ b/Documentation/devicetree/bindings/auxdisplay/titanmec,tm1628.yaml -@@ -0,0 +1,82 @@ -+# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) -+%YAML 1.2 -+--- -+$id: http://devicetree.org/schemas/leds/titanmec,tm1628.yaml# -+$schema: http://devicetree.org/meta-schemas/core.yaml# -+ -+title: Titan Micro Electronics TM1628 LED controller -+ -+properties: -+ compatible: -+ enum: -+ - titanmec,tm1628 -+ -+ reg: -+ maxItems: 1 -+ -+ grid: -+ description: -+ Mapping of display digit position to grid number. -+ This implicitly defines the display size. -+ $ref: /schemas/types.yaml#/definitions/uint8-array -+ minItems: 1 -+ maxItems: 7 -+ -+ segment-mapping: -+ description: -+ Mapping of 7 segment display segments A-G to bit numbers 1-12. -+ $ref: /schemas/types.yaml#/definitions/uint8-array -+ minItems: 7 -+ maxItems: 7 -+ -+ "#address-cells": -+ const: 2 -+ -+ "#size-cells": -+ const: 0 -+ -+required: -+ - compatible -+ - reg -+ -+patternProperties: -+ "^.*@[1-7],([1-9]|1[0-6])$": -+ type: object -+ description: | -+ Properties for a single LED. -+ -+ properties: -+ reg: -+ description: | -+ 1-based grid number, followed by 1-based segment bit number. -+ maxItems: 1 -+ -+ required: -+ - reg -+ -+examples: -+ - | -+ #include -+ -+ spi { -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ led-controller@0 { -+ compatible = "titanmec,tm1628"; -+ reg = <0>; -+ spi-3-wire; -+ spi-lsb-first; -+ spi-max-frequency = <500000>; -+ grid = /bits/ 8 <4 3 2 1>; -+ segment-mapping = /bits/ 8 <4 5 6 1 2 3 7>; -+ #address-cells = <2>; -+ #size-cells = <0>; -+ -+ alarmn@5,4 { -+ reg = <5 4>; -+ function = LED_FUNCTION_ALARM; -+ }; -+ }; -+ }; -+... --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0040-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch similarity index 94% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0040-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch index 3cac390d8e..55b7574de1 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0040-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0022-WIP-net-phy-meson-gxl-implement-meson_gxl_phy_resume.patch @@ -1,7 +1,7 @@ -From df2bd03352106bc643c9a1cec468cc28b93ef3a9 Mon Sep 17 00:00:00 2001 +From 21708d1bcb84d0d8260c143746df5bff8dbe7a77 Mon Sep 17 00:00:00 2001 From: Da Xue Date: Tue, 8 Aug 2023 01:00:15 -0400 -Subject: [PATCH 40/50] WIP: net: phy: meson-gxl: implement +Subject: [PATCH 22/37] WIP: net: phy: meson-gxl: implement meson_gxl_phy_resume() While testing the suspend/resume functionality, we found the ethernet diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-FROMLIST-v5-docs-ABI-document-tm1628-attribute-displ.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-FROMLIST-v5-docs-ABI-document-tm1628-attribute-displ.patch deleted file mode 100644 index d1234bcd71..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-FROMLIST-v5-docs-ABI-document-tm1628-attribute-displ.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 4a2fbacda82c8a0878b7a84775f345ff335266c2 Mon Sep 17 00:00:00 2001 -From: Heiner Kallweit -Date: Sun, 20 Feb 2022 08:26:27 +0000 -Subject: [PATCH 23/50] FROMLIST(v5): docs: ABI: document tm1628 attribute - display-text - -Document the attribute for reading / writing the text to be displayed on -the 7 segment display. - -Signed-off-by: Heiner Kallweit ---- - Documentation/ABI/testing/sysfs-devices-auxdisplay-tm1628 | 7 +++++++ - 1 file changed, 7 insertions(+) - create mode 100644 Documentation/ABI/testing/sysfs-devices-auxdisplay-tm1628 - -diff --git a/Documentation/ABI/testing/sysfs-devices-auxdisplay-tm1628 b/Documentation/ABI/testing/sysfs-devices-auxdisplay-tm1628 -new file mode 100644 -index 000000000000..382757e721af ---- /dev/null -+++ b/Documentation/ABI/testing/sysfs-devices-auxdisplay-tm1628 -@@ -0,0 +1,7 @@ -+What: /sys/devices/.../display-text -+Date: February 2022 -+Contact: Heiner Kallweit -+Description: -+ The text to be displayed on the 7 segment display. -+ Any printable character is allowed as input, but some -+ can not be displayed in a readable way with 7 segments. --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0041-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch similarity index 51% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0041-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch index bf94b3d5b4..bd27e3e0c6 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0041-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0023-WIP-drm-meson-add-support-for-2560x1440-resolution-o.patch @@ -1,7 +1,7 @@ -From e06f03271acef28eae487cfca65ec6c4870141ff Mon Sep 17 00:00:00 2001 +From 71facc1a41966252fd3368b8a6cfc02d3e91d85a Mon Sep 17 00:00:00 2001 From: Dongjin Kim Date: Thu, 10 Sep 2020 11:01:33 +0900 -Subject: [PATCH 41/50] WIP: drm/meson: add support for 2560x1440 resolution +Subject: [PATCH 23/37] WIP: drm/meson: add support for 2560x1440 resolution output Add support for Quad HD (QHD) 2560x1440 resolution output. Timings @@ -12,14 +12,13 @@ Signed-off-by: Dongjin Kim Signed-off-by: Christian Hewitt --- drivers/gpu/drm/meson/meson_vclk.c | 18 ++++++++++++++++++ - drivers/gpu/drm/meson/meson_venc.c | 4 ++-- - 2 files changed, 20 insertions(+), 2 deletions(-) + 1 file changed, 18 insertions(+) diff --git a/drivers/gpu/drm/meson/meson_vclk.c b/drivers/gpu/drm/meson/meson_vclk.c -index c4123bb958e4..13fb985ba207 100644 +index dfe0c28a0f05..f5385b3e3796 100644 --- a/drivers/gpu/drm/meson/meson_vclk.c +++ b/drivers/gpu/drm/meson/meson_vclk.c -@@ -360,6 +360,8 @@ enum { +@@ -357,6 +357,8 @@ enum { MESON_VCLK_HDMI_594000, /* 2970 /1 /1 /1 /5 /1 => /1 /2 */ MESON_VCLK_HDMI_594000_YUV420, @@ -28,16 +27,16 @@ index c4123bb958e4..13fb985ba207 100644 }; struct meson_vclk_params { -@@ -470,6 +472,18 @@ struct meson_vclk_params { +@@ -467,6 +469,18 @@ struct meson_vclk_params { .vid_pll_div = VID_PLL_DIV_5, .vclk_div = 1, }, + [MESON_VCLK_HDMI_241500] = { -+ .pll_freq = 4830000, -+ .phy_freq = 2415000, -+ .venc_freq = 241500, -+ .vclk_freq = 241500, -+ .pixel_freq = 241500, ++ .pll_freq = 4830000000, ++ .phy_freq = 2415000000, ++ .venc_freq = 241500000, ++ .vclk_freq = 241500000, ++ .pixel_freq = 241500000, + .pll_od1 = 2, + .pll_od2 = 1, + .pll_od3 = 2, @@ -47,7 +46,7 @@ index c4123bb958e4..13fb985ba207 100644 { /* sentinel */ }, }; -@@ -879,6 +893,10 @@ static void meson_vclk_set(struct meson_drm *priv, +@@ -894,6 +908,10 @@ static void meson_vclk_set(struct meson_drm *priv, m = 0xf7; frac = vic_alternate_clock ? 0x8148 : 0x10000; break; @@ -58,23 +57,6 @@ index c4123bb958e4..13fb985ba207 100644 } meson_hdmi_pll_set_params(priv, m, frac, od1, od2, od3); -diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c -index 3bf0d6e4fc30..229602259248 100644 ---- a/drivers/gpu/drm/meson/meson_venc.c -+++ b/drivers/gpu/drm/meson/meson_venc.c -@@ -868,10 +868,10 @@ meson_venc_hdmi_supported_mode(const struct drm_display_mode *mode) - DRM_MODE_FLAG_PVSYNC | DRM_MODE_FLAG_NVSYNC)) - return MODE_BAD; - -- if (mode->hdisplay < 400 || mode->hdisplay > 1920) -+ if (mode->hdisplay < 320 || mode->hdisplay > 1920) - return MODE_BAD_HVALUE; - -- if (mode->vdisplay < 480 || mode->vdisplay > 1920) -+ if (mode->vdisplay < 320 || mode->vdisplay > 1920) - return MODE_BAD_VVALUE; - - return MODE_OK; -- 2.34.1 diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-FROMLIST-v5-auxdisplay-add-support-for-Titanmec-TM16.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-FROMLIST-v5-auxdisplay-add-support-for-Titanmec-TM16.patch deleted file mode 100644 index 1900f3c5be..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-FROMLIST-v5-auxdisplay-add-support-for-Titanmec-TM16.patch +++ /dev/null @@ -1,461 +0,0 @@ -From d87779682e07059aae7bc6cec9935489af2ffbb0 Mon Sep 17 00:00:00 2001 -From: Heiner Kallweit -Date: Mon, 4 Apr 2022 18:51:20 +0000 -Subject: [PATCH 24/50] FROMLIST(v5): auxdisplay: add support for Titanmec - TM1628 7 segment display controller -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This patch adds support for the Titanmec TM1628 7 segment display -controller. It's based on previous RFC work from Andreas Färber. -The RFC version placed the driver in the LED subsystem, but this was -NAK'ed by the LED maintainer. Therefore I moved the driver to -/drivers/auxdisplay what seems most reasonable to me. - -Further changes to the RFC version: -- Driver can be built also w/o LED class support, for displays that - don't have any symbols to be exposed as LED's. -- Simplified the code and rewrote a lot of it. -- Driver is now kind of a MVP, but functionality should be sufficient - for most use cases. -- Use the existing 7 segment support in uapi/linux/map_to_7segment.h - as suggested by Geert Uytterhoeven. - -Note: There's a number of chips from other manufacturers that are - almost identical, e.g. FD628, SM1628. Only difference I saw so - far is that they partially support other display modes. - TM1628: 6x12, 7x11 - SM1628C: 4x13, 5x12, 6x11, 7x10 - For typical displays on devices using these chips this - difference shouldn't matter. - -Successfully tested on a TX3 Mini TV box that has an SM1628C and a -display with 4 digits and 7 symbols. - -Co-developed-by: Andreas Färber -Signed-off-by: Andreas Färber -Signed-off-by: Heiner Kallweit ---- - drivers/auxdisplay/Kconfig | 11 ++ - drivers/auxdisplay/Makefile | 1 + - drivers/auxdisplay/tm1628.c | 376 ++++++++++++++++++++++++++++++++++++ - 3 files changed, 388 insertions(+) - create mode 100644 drivers/auxdisplay/tm1628.c - -diff --git a/drivers/auxdisplay/Kconfig b/drivers/auxdisplay/Kconfig -index bedc6133f970..deb510cc0120 100644 ---- a/drivers/auxdisplay/Kconfig -+++ b/drivers/auxdisplay/Kconfig -@@ -526,6 +526,17 @@ config SEG_LED_GPIO - This driver can also be built as a module. If so, the module - will be called seg-led-gpio. - -+config TM1628 -+ tristate "TM1628 driver for LED 7/11 segment displays" -+ depends on SPI -+ depends on OF || COMPILE_TEST -+ help -+ Say Y to enable support for Titan Micro Electronics TM1628 -+ LED controller. -+ -+ It's a 3-wire SPI device controlling a two-dimensional grid of -+ LEDs. Dimming is applied to all outputs through an internal PWM. -+ - # - # Character LCD with non-conforming interface section - # -diff --git a/drivers/auxdisplay/Makefile b/drivers/auxdisplay/Makefile -index f5c13ed1cd4f..82818251ffaf 100644 ---- a/drivers/auxdisplay/Makefile -+++ b/drivers/auxdisplay/Makefile -@@ -16,3 +16,4 @@ obj-$(CONFIG_LINEDISP) += line-display.o - obj-$(CONFIG_MAX6959) += max6959.o - obj-$(CONFIG_PARPORT_PANEL) += panel.o - obj-$(CONFIG_SEG_LED_GPIO) += seg-led-gpio.o -+obj-$(CONFIG_TM1628) += tm1628.o -diff --git a/drivers/auxdisplay/tm1628.c b/drivers/auxdisplay/tm1628.c -new file mode 100644 -index 000000000000..4d99a7aa077b ---- /dev/null -+++ b/drivers/auxdisplay/tm1628.c -@@ -0,0 +1,376 @@ -+// SPDX-License-Identifier: GPL-2.0-or-later -+/* -+ * Titan Micro Electronics TM1628 LED controller -+ * -+ * Copyright (c) 2019 Andreas Färber -+ * Copyright (c) 2022 Heiner Kallweit -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#define TM1628_CMD_DISPLAY_MODE (0 << 6) -+#define TM1628_DISPLAY_MODE_6_12 0x02 -+#define TM1628_DISPLAY_MODE_7_11 0x03 -+ -+#define TM1628_CMD_DATA (1 << 6) -+#define TM1628_DATA_TEST_MODE BIT(3) -+#define TM1628_DATA_FIXED_ADDR BIT(2) -+#define TM1628_DATA_WRITE_DATA 0x00 -+#define TM1628_DATA_READ_DATA 0x02 -+ -+#define TM1628_CMD_DISPLAY_CTRL (2 << 6) -+#define TM1628_DISPLAY_CTRL_DISPLAY_ON BIT(3) -+ -+#define TM1628_CMD_SET_ADDRESS (3 << 6) -+ -+#define TM1628_BRIGHTNESS_MAX 7 -+#define NUM_LED_SEGS 7 -+ -+/* Physical limits, depending on the mode the chip may support less */ -+#define MAX_GRID_SIZE 7 -+#define MAX_SEGMENT_NUM 16 -+ -+struct tm1628_led { -+ struct led_classdev leddev; -+ struct tm1628 *ctrl; -+ u32 grid; -+ u32 seg; -+}; -+ -+struct tm1628 { -+ struct spi_device *spi; -+ __le16 data[MAX_GRID_SIZE]; -+ struct mutex disp_lock; -+ char text[MAX_GRID_SIZE + 1]; -+ u8 segment_mapping[NUM_LED_SEGS]; -+ u8 grid[MAX_GRID_SIZE]; -+ int grid_size; -+ struct tm1628_led leds[]; -+}; -+ -+/* Command 1: Display Mode Setting */ -+static int tm1628_set_display_mode(struct spi_device *spi, u8 grid_mode) -+{ -+ const u8 cmd = TM1628_CMD_DISPLAY_MODE | grid_mode; -+ -+ return spi_write(spi, &cmd, 1); -+} -+ -+/* Command 3: Address Setting */ -+static int tm1628_set_address(struct spi_device *spi, u8 offset) -+{ -+ const u8 cmd = TM1628_CMD_SET_ADDRESS | (offset * sizeof(__le16)); -+ -+ return spi_write(spi, &cmd, 1); -+} -+ -+/* Command 2: Data Setting */ -+static int tm1628_write_data(struct spi_device *spi, unsigned int offset, -+ unsigned int len) -+{ -+ struct tm1628 *s = spi_get_drvdata(spi); -+ const u8 cmd = TM1628_CMD_DATA | TM1628_DATA_WRITE_DATA; -+ struct spi_transfer xfers[] = { -+ { -+ .tx_buf = &cmd, -+ .len = 1, -+ }, -+ { -+ .tx_buf = (__force void *)(s->data + offset), -+ .len = len * sizeof(__le16), -+ }, -+ }; -+ -+ if (offset + len > MAX_GRID_SIZE) { -+ dev_err(&spi->dev, "Invalid data address offset %u len %u\n", -+ offset, len); -+ return -EINVAL; -+ } -+ -+ tm1628_set_address(spi, offset); -+ -+ return spi_sync_transfer(spi, xfers, ARRAY_SIZE(xfers)); -+} -+ -+/* Command 4: Display Control */ -+static int tm1628_set_display_ctrl(struct spi_device *spi, bool on) -+{ -+ u8 cmd = TM1628_CMD_DISPLAY_CTRL | TM1628_BRIGHTNESS_MAX; -+ -+ if (on) -+ cmd |= TM1628_DISPLAY_CTRL_DISPLAY_ON; -+ -+ return spi_write(spi, &cmd, 1); -+} -+ -+static int tm1628_show_text(struct tm1628 *s) -+{ -+ static SEG7_CONVERSION_MAP(map_seg7, MAP_ASCII7SEG_ALPHANUM); -+ int msg_len, i, ret; -+ -+ msg_len = strlen(s->text); -+ -+ mutex_lock(&s->disp_lock); -+ -+ for (i = 0; i < s->grid_size; i++) { -+ int pos = s->grid[i] - 1; -+ int j, char7_raw, char7; -+ -+ if (i >= msg_len) { -+ s->data[pos] = 0; -+ continue; -+ } -+ -+ char7_raw = map_to_seg7(&map_seg7, s->text[i]); -+ -+ for (j = 0, char7 = 0; j < NUM_LED_SEGS; j++) { -+ if (char7_raw & BIT(j)) -+ char7 |= BIT(s->segment_mapping[j] - 1); -+ } -+ -+ s->data[pos] = cpu_to_le16(char7); -+ } -+ -+ ret = tm1628_write_data(s->spi, 0, s->grid_size); -+ -+ mutex_unlock(&s->disp_lock); -+ -+ return ret; -+} -+ -+static int tm1628_led_set_brightness(struct led_classdev *led_cdev, -+ enum led_brightness brightness) -+{ -+ struct tm1628_led *led = container_of(led_cdev, struct tm1628_led, leddev); -+ struct tm1628 *s = led->ctrl; -+ int ret, offset = led->grid - 1; -+ __le16 bit = cpu_to_le16(BIT(led->seg - 1)); -+ -+ mutex_lock(&s->disp_lock); -+ -+ if (brightness == LED_OFF) -+ s->data[offset] &= ~bit; -+ else -+ s->data[offset] |= bit; -+ -+ ret = tm1628_write_data(s->spi, offset, 1); -+ -+ mutex_unlock(&s->disp_lock); -+ -+ return ret; -+} -+ -+static enum led_brightness tm1628_led_get_brightness(struct led_classdev *led_cdev) -+{ -+ struct tm1628_led *led = container_of(led_cdev, struct tm1628_led, leddev); -+ struct tm1628 *s = led->ctrl; -+ int offset = led->grid - 1; -+ __le16 bit = cpu_to_le16(BIT(led->seg - 1)); -+ bool on; -+ -+ mutex_lock(&s->disp_lock); -+ on = s->data[offset] & bit; -+ mutex_unlock(&s->disp_lock); -+ -+ return on ? LED_ON : LED_OFF; -+} -+ -+static int tm1628_register_led(struct tm1628 *s, struct fwnode_handle *node, -+ u32 grid, u32 seg, struct tm1628_led *led) -+{ -+ struct device *dev = &s->spi->dev; -+ struct led_init_data init_data = { .fwnode = node }; -+ -+ led->ctrl = s; -+ led->grid = grid; -+ led->seg = seg; -+ led->leddev.max_brightness = LED_ON; -+ led->leddev.brightness_set_blocking = tm1628_led_set_brightness; -+ led->leddev.brightness_get = tm1628_led_get_brightness; -+ -+ return devm_led_classdev_register_ext(dev, &led->leddev, &init_data); -+} -+ -+static ssize_t display_text_show(struct device *dev, struct device_attribute *attr, -+ char *buf) -+{ -+ struct tm1628 *s = dev_get_drvdata(dev); -+ -+ return sysfs_emit(buf, "%s\n", s->text); -+} -+ -+static ssize_t display_text_store(struct device *dev, struct device_attribute *attr, -+ const char *buf, size_t count) -+{ -+ struct tm1628 *s = dev_get_drvdata(dev); -+ int ret, i; -+ -+ for (i = 0; i < count && i < s->grid_size && isprint(buf[i]); i++) -+ s->text[i] = buf[i]; -+ -+ s->text[i] = '\0'; -+ -+ ret = tm1628_show_text(s); -+ if (ret < 0) -+ return ret; -+ -+ return count; -+} -+ -+static const DEVICE_ATTR_RW(display_text); -+ -+static int tm1628_spi_probe(struct spi_device *spi) -+{ -+ struct fwnode_handle *child; -+ unsigned int num_leds; -+ struct tm1628 *s; -+ int ret, i; -+ -+ num_leds = device_get_child_node_count(&spi->dev); -+ -+ s = devm_kzalloc(&spi->dev, struct_size(s, leds, num_leds), GFP_KERNEL); -+ if (!s) -+ return -ENOMEM; -+ -+ s->spi = spi; -+ spi_set_drvdata(spi, s); -+ -+ mutex_init(&s->disp_lock); -+ -+ /* According to TM1628 datasheet */ -+ msleep(200); -+ -+ /* Clear screen */ -+ ret = tm1628_write_data(spi, 0, MAX_GRID_SIZE); -+ if (ret) -+ return ret; -+ -+ /* For now we support 6x12 mode only. This should be sufficient for most use cases */ -+ ret = tm1628_set_display_mode(spi, TM1628_DISPLAY_MODE_6_12); -+ if (ret) -+ return ret; -+ -+ ret = tm1628_set_display_ctrl(spi, true); -+ if (ret) -+ return ret; -+ -+ num_leds = 0; -+ -+ if (!IS_REACHABLE(CONFIG_LEDS_CLASS)) -+ goto no_leds; -+ -+ device_for_each_child_node(&spi->dev, child) { -+ u32 reg[2]; -+ -+ ret = fwnode_property_read_u32_array(child, "reg", reg, 2); -+ if (ret) { -+ dev_err(&spi->dev, "Reading %s reg property failed (%d)\n", -+ fwnode_get_name(child), ret); -+ continue; -+ } -+ -+ if (reg[0] == 0 || reg[0] > MAX_GRID_SIZE) { -+ dev_err(&spi->dev, "Invalid grid %u at %s\n", -+ reg[0], fwnode_get_name(child)); -+ continue; -+ } -+ -+ if (reg[1] == 0 || reg[1] > MAX_SEGMENT_NUM) { -+ dev_err(&spi->dev, "Invalid segment %u at %s\n", -+ reg[1], fwnode_get_name(child)); -+ continue; -+ } -+ -+ ret = tm1628_register_led(s, child, reg[0], reg[1], s->leds + num_leds); -+ if (ret) { -+ dev_err(&spi->dev, "Failed to register LED %s (%d)\n", -+ fwnode_get_name(child), ret); -+ continue; -+ } -+ num_leds++; -+ } -+ -+no_leds: -+ ret = device_property_count_u8(&spi->dev, "titanmec,grid"); -+ if (ret < 1 || ret > MAX_GRID_SIZE) { -+ dev_err(&spi->dev, "Invalid display length (%d)\n", ret); -+ return -EINVAL; -+ } -+ -+ s->grid_size = ret; -+ -+ ret = device_property_read_u8_array(&spi->dev, "titanmec,grid", s->grid, s->grid_size); -+ if (ret < 0) -+ return ret; -+ -+ for (i = 0; i < s->grid_size; i++) { -+ if (s->grid[i] < 1 || s->grid[i] > s->grid_size) -+ return -EINVAL; -+ } -+ -+ ret = device_property_read_u8_array(&spi->dev, "titanmec,segment-mapping", -+ s->segment_mapping, NUM_LED_SEGS); -+ if (ret < 0) -+ return ret; -+ -+ for (i = 0; i < NUM_LED_SEGS; i++) { -+ if (s->segment_mapping[i] < 1 || s->segment_mapping[i] > MAX_SEGMENT_NUM) -+ return -EINVAL; -+ } -+ -+ ret = device_create_file(&spi->dev, &dev_attr_display_text); -+ if (ret) -+ return ret; -+ -+ dev_info(&spi->dev, "Configured display with %u digits and %u symbols\n", -+ s->grid_size, num_leds); -+ -+ return 0; -+} -+ -+static void tm1628_spi_remove(struct spi_device *spi) -+{ -+ device_remove_file(&spi->dev, &dev_attr_display_text); -+ tm1628_set_display_ctrl(spi, false); -+} -+ -+static void tm1628_spi_shutdown(struct spi_device *spi) -+{ -+ tm1628_set_display_ctrl(spi, false); -+} -+ -+static const struct of_device_id tm1628_spi_of_matches[] = { -+ { .compatible = "titanmec,tm1628" }, -+ {} -+}; -+MODULE_DEVICE_TABLE(of, tm1628_spi_of_matches); -+ -+static const struct spi_device_id tm1628_spi_id_table[] = { -+ { "tm1628" }, -+ {}, -+}; -+MODULE_DEVICE_TABLE(spi, tm1628_spi_id_table); -+ -+static struct spi_driver tm1628_spi_driver = { -+ .probe = tm1628_spi_probe, -+ .remove = tm1628_spi_remove, -+ .shutdown = tm1628_spi_shutdown, -+ .id_table = tm1628_spi_id_table, -+ -+ .driver = { -+ .name = "tm1628", -+ .of_match_table = tm1628_spi_of_matches, -+ }, -+}; -+module_spi_driver(tm1628_spi_driver); -+ -+MODULE_DESCRIPTION("TM1628 LED controller driver"); -+MODULE_AUTHOR("Andreas Färber "); -+MODULE_AUTHOR("Heiner Kallweit "); -+MODULE_LICENSE("GPL"); --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0042-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch similarity index 94% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0042-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch index 49ac395325..41d8258cc1 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0042-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0024-WIP-drm-meson-do-setup-after-resumption-to-fix-hdmi-.patch @@ -1,7 +1,7 @@ -From 46d1d7f04757f7976c294d026dc57f655b8e79df Mon Sep 17 00:00:00 2001 +From 5d95e031c6517a910173b80c50b800ffdc6493fa Mon Sep 17 00:00:00 2001 From: Luke Lu Date: Mon, 21 Aug 2023 10:50:04 +0000 -Subject: [PATCH 42/50] WIP: drm/meson: do setup after resumption to fix hdmi +Subject: [PATCH 24/37] WIP: drm/meson: do setup after resumption to fix hdmi output Some HDMI displays connected to gxl-based boards go black after @@ -18,7 +18,7 @@ Signed-off-by: Luke Lu 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index 0890add5f707..d00d90fc6d65 100644 +index 8791408dd1ff..5eb864d2678e 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -2378,7 +2378,7 @@ static void initialize_hdmi_ih_mutes(struct dw_hdmi *hdmi) diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-FROMLIST-v5-arm64-dts-meson-gxl-s905w-tx3-mini-add-s.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-FROMLIST-v5-arm64-dts-meson-gxl-s905w-tx3-mini-add-s.patch deleted file mode 100644 index 8fa2009d93..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-FROMLIST-v5-arm64-dts-meson-gxl-s905w-tx3-mini-add-s.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 4ec049659e2b4db3282023ce74ad4a123c61d26e Mon Sep 17 00:00:00 2001 -From: Heiner Kallweit -Date: Mon, 4 Apr 2022 18:52:34 +0000 -Subject: [PATCH 25/50] FROMLIST(v5): arm64: dts: meson-gxl-s905w-tx3-mini: add - support for the 7 segment display - -This patch adds support for the 7 segment display of the device. - -Signed-off-by: Heiner Kallweit ---- - .../dts/amlogic/meson-gxl-s905w-tx3-mini.dts | 59 +++++++++++++++++++ - 1 file changed, 59 insertions(+) - -diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts -index 6705c2082a78..ae0d8d7b1e19 100644 ---- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts -+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts -@@ -10,6 +10,7 @@ - - #include "meson-gxl-s905x.dtsi" - #include "meson-gx-p23x-q20x.dtsi" -+#include - - / { - compatible = "oranth,tx3-mini", "amlogic,s905w", "amlogic,meson-gxl"; -@@ -19,6 +20,64 @@ memory@0 { - device_type = "memory"; - reg = <0x0 0x0 0x0 0x40000000>; /* 1 GiB or 2 GiB */ - }; -+ -+ spi { -+ compatible = "spi-gpio"; -+ sck-gpios = <&gpio GPIODV_27 GPIO_ACTIVE_HIGH>; -+ mosi-gpios = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>; -+ cs-gpios = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>; -+ num-chipselects = <1>; -+ #address-cells = <1>; -+ #size-cells = <0>; -+ -+ tm1628: led-controller@0 { -+ compatible = "titanmec,tm1628"; -+ reg = <0>; -+ spi-3wire; -+ spi-lsb-first; -+ spi-rx-delay-us = <1>; -+ spi-max-frequency = <500000>; -+ #address-cells = <2>; -+ #size-cells = <0>; -+ -+ titanmec,segment-mapping = /bits/ 8 <4 5 6 1 2 3 7>; -+ titanmec,grid = /bits/ 8 <4 3 2 1>; -+ -+ alarm@5,1 { -+ reg = <5 1>; -+ function = LED_FUNCTION_ALARM; -+ }; -+ -+ usb@5,2 { -+ reg = <5 2>; -+ function = LED_FUNCTION_USB; -+ }; -+ play@5,3 { -+ reg = <5 3>; -+ function = "play"; -+ }; -+ -+ pause@5,4 { -+ reg = <5 4>; -+ function = "pause"; -+ }; -+ -+ colon@5,5 { -+ reg = <5 5>; -+ function = "colon"; -+ }; -+ -+ lan@5,6 { -+ reg = <5 6>; -+ function = LED_FUNCTION_LAN; -+ }; -+ -+ wlan@5,7 { -+ reg = <5 7>; -+ function = LED_FUNCTION_WLAN; -+ }; -+ }; -+ }; - }; - - &ir { --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0043-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch similarity index 94% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0043-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch index 4345b6365c..5274640d5c 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0043-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0025-WIP-drm-meson-poweron-off-dw_hdmi-only-if-dw_hdmi-en.patch @@ -1,7 +1,7 @@ -From 712bc7380ea8734a34bc7fbe8819d0877cb0de45 Mon Sep 17 00:00:00 2001 +From b31529fd0ef42632387ce46def44a4e847d88ce1 Mon Sep 17 00:00:00 2001 From: Luke Lu Date: Wed, 13 Dec 2023 03:47:44 +0000 -Subject: [PATCH 43/50] WIP: drm/meson: poweron/off dw_hdmi only if dw_hdmi +Subject: [PATCH 25/37] WIP: drm/meson: poweron/off dw_hdmi only if dw_hdmi enabled dw_hdmi_poweron() assumes that hdmi->curr_conn is valid. Calling @@ -19,7 +19,7 @@ dw_hdmi is enabled. 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index d00d90fc6d65..7e6a63e03139 100644 +index 5eb864d2678e..15a90b43d607 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -3644,6 +3644,12 @@ void dw_hdmi_resume(struct dw_hdmi *hdmi) diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-FROMLIST-v5-MAINTAINERS-Add-entry-for-tm1628-auxdisp.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-FROMLIST-v5-MAINTAINERS-Add-entry-for-tm1628-auxdisp.patch deleted file mode 100644 index d485c713e9..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-FROMLIST-v5-MAINTAINERS-Add-entry-for-tm1628-auxdisp.patch +++ /dev/null @@ -1,32 +0,0 @@ -From a634997aa1e2dd434b95bb83f4b9c5b0f333cb8b Mon Sep 17 00:00:00 2001 -From: Heiner Kallweit -Date: Mon, 4 Apr 2022 18:53:32 +0000 -Subject: [PATCH 26/50] FROMLIST(v5): MAINTAINERS: Add entry for tm1628 - auxdisplay driver - -Signed-off-by: Heiner Kallweit ---- - MAINTAINERS | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/MAINTAINERS b/MAINTAINERS -index dd844ac8d910..f9cd1faa4294 100644 ---- a/MAINTAINERS -+++ b/MAINTAINERS -@@ -24590,6 +24590,13 @@ W: http://sourceforge.net/projects/tlan/ - F: Documentation/networking/device_drivers/ethernet/ti/tlan.rst - F: drivers/net/ethernet/ti/tlan.* - -+TM1628 LED CONTROLLER DRIVER -+M: Heiner Kallweit -+S: Maintained -+F: Documentation/devicetree/bindings/auxdisplay/titanmec,tm1628.yaml -+F: Documentation/ABI/testing/sysfs-devices-auxdisplay-tm1628 -+F: drivers/auxdisplay/tm1628.c -+ - TMIO/SDHI MMC DRIVER - M: Wolfram Sang - L: linux-mmc@vger.kernel.org --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-WIP-mmc-meson-gx-mmc-add-delay-during-poweroff.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-WIP-mmc-meson-gx-mmc-add-delay-during-poweroff.patch new file mode 100644 index 0000000000..274f1435a7 --- /dev/null +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0026-WIP-mmc-meson-gx-mmc-add-delay-during-poweroff.patch @@ -0,0 +1,24 @@ +From b2f06cfdd0e7d396d51aa733597f2a6631a4dc8c Mon Sep 17 00:00:00 2001 +From: Da Xue +Date: Sun, 22 Jun 2025 17:46:21 -0400 +Subject: [PATCH 26/37] WIP: mmc: meson-gx-mmc: add delay during poweroff + +--- + drivers/mmc/host/meson-gx-mmc.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c +index 694bb443d5f3..a39906079d29 100644 +--- a/drivers/mmc/host/meson-gx-mmc.c ++++ b/drivers/mmc/host/meson-gx-mmc.c +@@ -605,6 +605,7 @@ static void meson_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) + case MMC_POWER_OFF: + mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, 0); + mmc_regulator_disable_vqmmc(mmc); ++ msleep(50); + + break; + +-- +2.34.1 + diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0044-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0027-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch similarity index 96% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0044-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0027-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch index 31808f38e2..fce998a303 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0044-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0027-WIP-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch @@ -1,7 +1,7 @@ -From 856bd4d0d51f28a20544cc995e9abda9fe9c5db6 Mon Sep 17 00:00:00 2001 +From 59614ff80eb272009bc6bdfcb47e8df6ec93a2a7 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Tue, 18 Jan 2022 15:09:12 +0000 -Subject: [PATCH 44/50] WIP: arm64: dts: meson: set p212/p23x/q20x SDIO to +Subject: [PATCH 27/37] WIP: arm64: dts: meson: set p212/p23x/q20x SDIO to 100MHz Amlogic datasheets describe 50MHz max-frequency for SDIO on GXL/GXM but diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0045-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0028-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch similarity index 88% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0045-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0028-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch index c2124cd85b..7a63388ffc 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0045-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0028-WIP-arm64-dts-meson-remove-SDIO-node-from-Khadas-VIM.patch @@ -1,7 +1,7 @@ -From 54348053bd1d726bcc70bbde15489784f3c1bbf7 Mon Sep 17 00:00:00 2001 +From 087bb82aefa86c31f4ea92774452392763a4c83b Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Tue, 18 Jan 2022 15:18:32 +0000 -Subject: [PATCH 45/50] WIP: arm64: dts: meson: remove SDIO node from Khadas +Subject: [PATCH 28/37] WIP: arm64: dts: meson: remove SDIO node from Khadas VIM1 Now that SDIO 100MHz max-frequency is inherited from the p212 dtsi we diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0046-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0029-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch similarity index 91% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0046-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0029-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch index 67e5cc7ad7..8b3a739303 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0046-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0029-WIP-arm64-dts-meson-add-UHS-SDIO-capabilities-to-p21.patch @@ -1,7 +1,7 @@ -From 0c24a706fecc904fa816273f2f22f07837be7774 Mon Sep 17 00:00:00 2001 +From d05fd0dbca2f4e7233ca5c1fb9fc8ca5575d4dbc Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Wed, 19 Jan 2022 06:45:06 +0000 -Subject: [PATCH 46/50] WIP: arm64: dts: meson: add UHS SDIO capabilities to +Subject: [PATCH 29/37] WIP: arm64: dts: meson: add UHS SDIO capabilities to p212/p23x/q20x Add UHS capabilities to the SDIO node to enable 100MHz speeds. diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0047-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0030-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch similarity index 80% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0047-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0030-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch index 65f10082d3..3e77329c8c 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0047-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0030-WIP-dt-bindings-arm-amlogic-add-support-for-Tanix-TX.patch @@ -1,7 +1,7 @@ -From 8e208c9b8b47bde379c47c33958bbd189619eb6b Mon Sep 17 00:00:00 2001 +From 595ae18972bfb55b20eecf724cf73d3c3b133910 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Thu, 9 Feb 2023 09:59:58 +0000 -Subject: [PATCH 47/50] WIP: dt-bindings: arm: amlogic: add support for Tanix +Subject: [PATCH 30/37] WIP: dt-bindings: arm: amlogic: add support for Tanix TX9 Pro The Oranth Tanix TX9 Pro is an Android STB using the Amlogic S912 chip @@ -12,10 +12,10 @@ Signed-off-by: Christian Hewitt 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml -index 0647851ae1f5..1b449a03aeab 100644 +index 05edf22e6c30..13dd7abbdcf8 100644 --- a/Documentation/devicetree/bindings/arm/amlogic.yaml +++ b/Documentation/devicetree/bindings/arm/amlogic.yaml -@@ -126,6 +126,7 @@ properties: +@@ -134,6 +134,7 @@ properties: - libretech,aml-s912-pc - minix,neo-u9h - nexbox,a1 diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-FROMLIST-v1-dt-bindings-usb-dwc2-allow-device-sub-no.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-FROMLIST-v1-dt-bindings-usb-dwc2-allow-device-sub-no.patch deleted file mode 100644 index d4412244c8..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-FROMLIST-v1-dt-bindings-usb-dwc2-allow-device-sub-no.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 13348b7648cef8cf6094de558fdffbd93c3b6def Mon Sep 17 00:00:00 2001 -From: Neil Armstrong -Date: Wed, 5 Jun 2024 11:15:11 +0200 -Subject: [PATCH 31/50] FROMLIST(v1): dt-bindings: usb: dwc2: allow device - sub-nodes - -Allow the '#address-cells', '#size-cells' and subnodes as defined in -usb-hcd.yaml and used in the meson-gxbb-odroidc2 DT. - -The fixes the following: -meson-gxbb-odroidc2.dtb: usb@c9100000: '#address-cells', '#size-cells', 'hub@1' do not match any of the regexes: 'pinctrl-[0-9]+' - from schema $id: http://devicetree.org/schemas/usb/dwc2.yaml# - -Signed-off-by: Neil Armstrong ---- - Documentation/devicetree/bindings/usb/dwc2.yaml | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/Documentation/devicetree/bindings/usb/dwc2.yaml b/Documentation/devicetree/bindings/usb/dwc2.yaml -index e83d30a91b88..a33cf3a14101 100644 ---- a/Documentation/devicetree/bindings/usb/dwc2.yaml -+++ b/Documentation/devicetree/bindings/usb/dwc2.yaml -@@ -177,6 +177,13 @@ properties: - minItems: 1 - maxItems: 2 - -+ "#address-cells": true -+ -+ "#size-cells": true -+ -+patternProperties: -+ "^.*@[0-9a-f]{1,2}$": true -+ - dependencies: - port: [ usb-role-switch ] - role-switch-default-mode: [ usb-role-switch ] --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0048-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch similarity index 93% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0048-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch index eaece99104..aee1436e7d 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0048-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0031-WIP-arm64-dts-meson-add-initial-device-tree-for-Tani.patch @@ -1,7 +1,7 @@ -From 90c410aa206b5e6432196595c399dce44dca511d Mon Sep 17 00:00:00 2001 +From 08187f15dc8ca4b29e2b847b3c5ed0026191480e Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Thu, 9 Feb 2023 10:01:14 +0000 -Subject: [PATCH 48/50] WIP: arm64: dts: meson: add initial device-tree for +Subject: [PATCH 31/37] WIP: arm64: dts: meson: add initial device-tree for Tanix TX9 Pro Oranth Tanix TX9 Pro is based on the Amlogic Q200 reference design with @@ -27,10 +27,10 @@ Signed-off-by: Christian Hewitt create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxm-tx9-pro.dts diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile -index 6c246387985a..9e27cc204a05 100644 +index b593736ff60b..9e57cc56bfa7 100644 --- a/arch/arm64/boot/dts/amlogic/Makefile +++ b/arch/arm64/boot/dts/amlogic/Makefile -@@ -76,6 +76,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb +@@ -80,6 +80,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb dtb-$(CONFIG_ARCH_MESON) += meson-gxm-s912-libretech-pc.dtb diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0021-FROMLIST-v5-dt-bindings-vendor-prefixes-Add-Titan-Mi.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0032-WIP-dt-bindings-vendor-prefixes-add-Titan-Micro-Elec.patch similarity index 52% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0021-FROMLIST-v5-dt-bindings-vendor-prefixes-Add-Titan-Mi.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0032-WIP-dt-bindings-vendor-prefixes-add-Titan-Micro-Elec.patch index b8c812de0a..ea510b4ac6 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0021-FROMLIST-v5-dt-bindings-vendor-prefixes-Add-Titan-Mi.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0032-WIP-dt-bindings-vendor-prefixes-add-Titan-Micro-Elec.patch @@ -1,26 +1,21 @@ -From 1eec8b4570d54d0721f7277e31e022fb71b4e5b9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20F=C3=A4rber?= +From bb0a8ba6c365a8dd979f2e3d040f565a1d1f36b0 Mon Sep 17 00:00:00 2001 +From: Christian Hewitt Date: Sun, 20 Feb 2022 08:23:12 +0000 -Subject: [PATCH 21/50] FROMLIST(v5): dt-bindings: vendor-prefixes: Add Titan - Micro Electronics -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit +Subject: [PATCH 32/37] WIP: dt-bindings: vendor-prefixes: add Titan Micro + Electronics -Assign vendor prefix "titanmec", matching their domain name. +Add a vendor prefix for Shenzhen Titan Micro Electronics Co., Ltd. -Acked-by: Rob Herring -Signed-off-by: Andreas Färber -Signed-off-by: Heiner Kallweit +Signed-off-by: Heiner Kallweit --- Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml -index 86f6a19b28ae..8af0a6426729 100644 +index 5d2a7a8d3ac6..32f8f24ec809 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml -@@ -1534,6 +1534,8 @@ patternProperties: +@@ -1548,6 +1548,8 @@ patternProperties: description: Texas Instruments "^tianma,.*": description: Tianma Micro-electronics Co., Ltd. diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-WIP-dt-bindings-vendor-prefixes-add-Fuda-Hisi-Microe.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-WIP-dt-bindings-vendor-prefixes-add-Fuda-Hisi-Microe.patch new file mode 100644 index 0000000000..26c0e5b031 --- /dev/null +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0033-WIP-dt-bindings-vendor-prefixes-add-Fuda-Hisi-Microe.patch @@ -0,0 +1,29 @@ +From ea1f663261cea2fe53626fd2d96c5e8b4d475e28 Mon Sep 17 00:00:00 2001 +From: Christian Hewitt +Date: Thu, 12 Jun 2025 10:25:29 +0000 +Subject: [PATCH 33/37] WIP: dt-bindings: vendor-prefixes: add Fuda Hisi + Microelectronics + +Add the "fdhisi" prefix for Fuda Hisi Microelectronics Co, Ltd. + +Signed-off-by: Christian Hewitt +--- + Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml +index 32f8f24ec809..d02615496b2b 100644 +--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml ++++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml +@@ -531,6 +531,8 @@ patternProperties: + description: Fastrax Oy + "^fcs,.*": + description: Fairchild Semiconductor ++ "^fdhisi,.*": ++ description: Fuzhou Fuda Hisi Microelectronics Co., Ltd. + "^feixin,.*": + description: Shenzhen Feixin Photoelectic Co., Ltd + "^feiyang,.*": +-- +2.34.1 + diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-FROMLIST-v1-drm-meson-fix-debug-log-statement-when-s.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-FROMLIST-v1-drm-meson-fix-debug-log-statement-when-s.patch deleted file mode 100644 index 62d436e53c..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-FROMLIST-v1-drm-meson-fix-debug-log-statement-when-s.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 293ed8e9e41c0559e7ee5118db82860ccf843466 Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Fri, 6 Jun 2025 22:37:29 +0200 -Subject: [PATCH 34/50] FROMLIST(v1): drm/meson: fix debug log statement when - setting the HDMI clocks - -The "phy" and "vclk" frequency labels were swapped, making it more -difficult to debug driver errors. Swap the label order to make them -match with the actual frequencies printed to correct this. - -Fixes: e5fab2ec9ca4 ("drm/meson: vclk: add support for YUV420 setup") -Signed-off-by: Martin Blumenstingl ---- - drivers/gpu/drm/meson/meson_encoder_hdmi.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/meson/meson_encoder_hdmi.c b/drivers/gpu/drm/meson/meson_encoder_hdmi.c -index c08fa93e50a3..2bccda1e52a1 100644 ---- a/drivers/gpu/drm/meson/meson_encoder_hdmi.c -+++ b/drivers/gpu/drm/meson/meson_encoder_hdmi.c -@@ -108,7 +108,7 @@ static void meson_encoder_hdmi_set_vclk(struct meson_encoder_hdmi *encoder_hdmi, - venc_freq /= 2; - - dev_dbg(priv->dev, -- "vclk:%lluHz phy=%lluHz venc=%lluHz hdmi=%lluHz enci=%d\n", -+ "phy:%lluHz vclk=%lluHz venc=%lluHz hdmi=%lluHz enci=%d\n", - phy_freq, vclk_freq, venc_freq, hdmi_freq, - priv->venc.hdmi_use_enci); - --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-WIP-dt-bindings-auxdisplay-add-Titan-Micro-Electroni.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-WIP-dt-bindings-auxdisplay-add-Titan-Micro-Electroni.patch new file mode 100644 index 0000000000..574f70f725 --- /dev/null +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0034-WIP-dt-bindings-auxdisplay-add-Titan-Micro-Electroni.patch @@ -0,0 +1,159 @@ +From 793c581ca351bfa08e185c3625ede56cc4cabf3f Mon Sep 17 00:00:00 2001 +From: Christian Hewitt +Date: Thu, 12 Jun 2025 10:30:51 +0000 +Subject: [PATCH 34/37] WIP: dt-bindings: auxdisplay: add Titan Micro + Electronics TM16XX +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Add documentation for auxiliary displays based on TM16XX and compatible +LED controllers. + +Signed-off-by: Jean-François Lessard +Signed-off-by: Christian Hewitt +--- + .../bindings/auxdisplay/tm16xx.yaml | 131 ++++++++++++++++++ + 1 file changed, 131 insertions(+) + create mode 100644 Documentation/devicetree/bindings/auxdisplay/tm16xx.yaml + +diff --git a/Documentation/devicetree/bindings/auxdisplay/tm16xx.yaml b/Documentation/devicetree/bindings/auxdisplay/tm16xx.yaml +new file mode 100644 +index 000000000000..80b54572926c +--- /dev/null ++++ b/Documentation/devicetree/bindings/auxdisplay/tm16xx.yaml +@@ -0,0 +1,131 @@ ++# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) ++%YAML 1.2 ++--- ++$id: http://devicetree.org/schemas/auxdisplay/tm16xx.yaml# ++$schema: http://devicetree.org/meta-schemas/core.yaml# ++ ++title: TM16XX and Compatible Auxiliary Display Driver ++ ++maintainers: ++ - Jean-François Lessard ++ ++description: | ++ Bindings for auxiliary displays based on TM16XX and compatible LED controllers. ++ ++properties: ++ compatible: ++ enum: ++ - titanmec,tm1618 ++ - titanmec,tm1620 ++ - titanmec,tm1628 ++ - titanmec,tm1650 ++ - fdhisi,fd620 ++ - fdhisi,fd628 ++ - fdhisi,fd650 ++ - fdhisi,fd6551 ++ - fdhisi,fd655 ++ - princeton,pt6964 ++ - hbs,hbs658 ++ ++ reg: ++ maxItems: 1 ++ ++ tm16xx,digits: ++ description: Array of grid indexes for each digit ++ $ref: /schemas/types.yaml#/definitions/uint8-array ++ items: ++ minimum: 0 ++ maximum: 7 ++ minItems: 1 ++ maxItems: 8 ++ ++ tm16xx,segment-mapping: ++ description: Array specifying segment mapping (must be exactly 7 elements) ++ $ref: /schemas/types.yaml#/definitions/uint8-array ++ items: ++ minimum: 0 ++ maximum: 7 ++ minItems: 7 ++ maxItems: 7 ++ ++ tm16xx,transposed: ++ description: | ++ Optional boolean flag indicating if the device output is transposed. ++ If not present, the default value is false. ++ $ref: /schemas/types.yaml#/definitions/flag ++ ++ "#address-cells": ++ const: 2 ++ ++ "#size-cells": ++ const: 0 ++ ++patternProperties: ++ "^led@[0-7],[0-7]$": ++ $ref: /schemas/leds/common.yaml# ++ properties: ++ reg: ++ description: Grid and segment indexes ++ required: ++ - reg ++ ++required: ++ - compatible ++ - reg ++ - tm16xx,digits ++ - tm16xx,segment-mapping ++ ++additionalProperties: true ++ ++examples: ++ - | ++ display_client: i2c { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ display@24 { ++ compatible = "titanmec,tm1650"; ++ reg = <0x24>; ++ tm16xx,digits = /bits/ 8 <0 1 2 3>; ++ tm16xx,segment-mapping = /bits/ 8 <0 1 2 3 4 5 6>; ++ ++ #address-cells = <2>; ++ #size-cells = <0>; ++ ++ led@4,0 { ++ reg = <4 0>; ++ function = "lan"; ++ }; ++ ++ led@4,1 { ++ reg = <4 1>; ++ function = "wlan"; ++ }; ++ }; ++ }; ++ - | ++ display_client: spi { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ display@0 { ++ compatible = "titanmec,tm1628"; ++ reg = <0>; ++ tm16xx,transposed; ++ tm16xx,digits = /bits/ 8 <1 2 3 4>; ++ tm16xx,segment-mapping = /bits/ 8 <0 1 2 3 4 5 6>; ++ ++ #address-cells = <2>; ++ #size-cells = <0>; ++ ++ led@0,2 { ++ reg = <0 2>; ++ function = "usb"; ++ }; ++ ++ led@0,3 { ++ reg = <0 3>; ++ function = "power"; ++ }; ++ }; ++ }; +-- +2.34.1 + diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-FROMLIST-v1-drm-meson-use-vclk_freq-instead-of-pixel.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-FROMLIST-v1-drm-meson-use-vclk_freq-instead-of-pixel.patch deleted file mode 100644 index 24e639c8d7..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-FROMLIST-v1-drm-meson-use-vclk_freq-instead-of-pixel.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 1f7fad2775d584811df7e77147b3e33f7b8c59d1 Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sat, 7 Jun 2025 00:10:31 +0200 -Subject: [PATCH 35/50] FROMLIST(v1): drm/meson: use vclk_freq instead of - pixel_freq in debug print - -meson_vclk_vic_supported_freq() has a debug print which includes the -pixel freq. However, within the whole function the pixel freq is -irrelevant, other than checking the end of the params array. Switch to -printing the vclk_freq which is being compared / matched against the -inputs to the function to avoid confusion when analyzing error reports -from users. - -Fixes: e5fab2ec9ca4 ("drm/meson: vclk: add support for YUV420 setup") -Signed-off-by: Martin Blumenstingl ---- - drivers/gpu/drm/meson/meson_vclk.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/drivers/gpu/drm/meson/meson_vclk.c b/drivers/gpu/drm/meson/meson_vclk.c -index 3325580d885d..c4123bb958e4 100644 ---- a/drivers/gpu/drm/meson/meson_vclk.c -+++ b/drivers/gpu/drm/meson/meson_vclk.c -@@ -790,9 +790,9 @@ meson_vclk_vic_supported_freq(struct meson_drm *priv, - } - - for (i = 0 ; params[i].pixel_freq ; ++i) { -- DRM_DEBUG_DRIVER("i = %d pixel_freq = %lluHz alt = %lluHz\n", -- i, params[i].pixel_freq, -- PIXEL_FREQ_1000_1001(params[i].pixel_freq)); -+ DRM_DEBUG_DRIVER("i = %d vclk_freq = %lluHz alt = %lluHz\n", -+ i, params[i].vclk_freq, -+ PIXEL_FREQ_1000_1001(params[i].vclk_freq)); - DRM_DEBUG_DRIVER("i = %d phy_freq = %lluHz alt = %lluHz\n", - i, params[i].phy_freq, - PHY_FREQ_1000_1001(params[i].phy_freq)); --- -2.34.1 - diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-WIP-arm64-dts-meson-gxl-s905w-tx3-mini-support-the-f.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-WIP-arm64-dts-meson-gxl-s905w-tx3-mini-support-the-f.patch new file mode 100644 index 0000000000..e5ccc328fa --- /dev/null +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0035-WIP-arm64-dts-meson-gxl-s905w-tx3-mini-support-the-f.patch @@ -0,0 +1,100 @@ +From 536382633e9e399907fe06f34f426184965b5ab1 Mon Sep 17 00:00:00 2001 +From: Christian Hewitt +Date: Wed, 11 Jun 2025 11:23:44 +0000 +Subject: [PATCH 35/37] WIP: arm64: dts: meson-gxl-s905w-tx3-mini: support the + fd628 display + +The TX3-mini has an FD628 display. Add support using the tm166xx +kernel driver and userspace tools [0]. + +[0] https://github.com/jefflessard/tm16xx-display + +Signed-off-by: Christian Hewitt +--- + .../dts/amlogic/meson-gxl-s905w-tx3-mini.dts | 63 +++++++++++++++++++ + 1 file changed, 63 insertions(+) + +diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts +index 6705c2082a78..94cae3a59554 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts +@@ -10,6 +10,8 @@ + + #include "meson-gxl-s905x.dtsi" + #include "meson-gx-p23x-q20x.dtsi" ++#include ++#include + + / { + compatible = "oranth,tx3-mini", "amlogic,s905w", "amlogic,meson-gxl"; +@@ -19,6 +21,67 @@ memory@0 { + device_type = "memory"; + reg = <0x0 0x0 0x0 0x40000000>; /* 1 GiB or 2 GiB */ + }; ++ ++ display_client: spi { ++ compatible = "spi-gpio"; ++ sck-gpios = <&gpio 76 GPIO_ACTIVE_HIGH>; ++ mosi-gpios = <&gpio 75 GPIO_ACTIVE_HIGH>; ++ cs-gpios = <&gpio_ao 4 GPIO_ACTIVE_LOW>; ++ num-chipselects = <1>; ++ ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ display@0 { ++ compatible = "fdhisi,fd628"; ++ reg = <0x0>; ++ spi-3wire; ++ spi-lsb-first; ++ spi-rx-delay-us = <1>; ++ spi-max-frequency = <500000>; ++ ++ tm16xx,digits = [03 02 01 00]; ++ tm16xx,segment-mapping = [03 04 05 00 01 02 06]; ++ ++ #address-cells = <2>; ++ #size-cells = <0>; ++ ++ led@4,0 { ++ reg = <4 0>; ++ function = LED_FUNCTION_ALARM; ++ }; ++ ++ led@4,1 { ++ reg = <4 1>; ++ function = LED_FUNCTION_USB; ++ }; ++ ++ led@4,2 { ++ reg = <4 2>; ++ function = "play"; ++ }; ++ ++ led@4,3 { ++ reg = <4 3>; ++ function = "pause"; ++ }; ++ ++ led@4,4 { ++ reg = <4 4>; ++ function = "colon"; ++ }; ++ ++ led@4,5 { ++ reg = <4 5>; ++ function = LED_FUNCTION_LAN; ++ }; ++ ++ led@4,6 { ++ reg = <4 6>; ++ function = LED_FUNCTION_WLAN; ++ }; ++ }; ++ }; + }; + + &ir { +-- +2.34.1 + diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0049-WIP-arm64-dts-meson-add-7-segment-display-to-Tanix-T.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0036-WIP-arm64-dts-meson-gxm-tx9-pro-support-the-fd628-di.patch similarity index 55% rename from projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0049-WIP-arm64-dts-meson-add-7-segment-display-to-Tanix-T.patch rename to projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0036-WIP-arm64-dts-meson-gxm-tx9-pro-support-the-fd628-di.patch index 40bf8ed177..61dda53477 100644 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0049-WIP-arm64-dts-meson-add-7-segment-display-to-Tanix-T.patch +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0036-WIP-arm64-dts-meson-gxm-tx9-pro-support-the-fd628-di.patch @@ -1,18 +1,21 @@ -From 6b05081bf504b3ed1887b9de0f3335e0b0ecf688 Mon Sep 17 00:00:00 2001 +From 6bf5753f848d4c9e66d5e55929b307715ee1d5c5 Mon Sep 17 00:00:00 2001 From: Christian Hewitt Date: Thu, 9 Feb 2023 10:11:39 +0000 -Subject: [PATCH 49/50] WIP: arm64: dts: meson: add 7-segment display to Tanix - TX9 Pro +Subject: [PATCH 36/37] WIP: arm64: dts: meson-gxm-tx9-pro: support the fd628 + display -Add support for the 7-segment VFD display of the device +The TX9-Pro has an FD628 display. Add support using the tm166xx +kernel driver and userspace tools [0]. + +[0] https://github.com/jefflessard/tm16xx-display Signed-off-by: Christian Hewitt --- - .../boot/dts/amlogic/meson-gxm-tx9-pro.dts | 59 +++++++++++++++++++ - 1 file changed, 59 insertions(+) + .../boot/dts/amlogic/meson-gxm-tx9-pro.dts | 62 +++++++++++++++++++ + 1 file changed, 62 insertions(+) diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-tx9-pro.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-tx9-pro.dts -index 9a62176cfe5a..2dcff00794b9 100644 +index 9a62176cfe5a..08603b035868 100644 --- a/arch/arm64/boot/dts/amlogic/meson-gxm-tx9-pro.dts +++ b/arch/arm64/boot/dts/amlogic/meson-gxm-tx9-pro.dts @@ -9,6 +9,7 @@ @@ -23,64 +26,67 @@ index 9a62176cfe5a..2dcff00794b9 100644 / { compatible = "oranth,tx9-pro", "amlogic,s912", "amlogic,meson-gxm"; -@@ -37,6 +38,64 @@ button { +@@ -37,6 +38,67 @@ button { gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>; }; }; + -+ spi { ++ display_client: spi { + compatible = "spi-gpio"; -+ sck-gpios = <&gpio GPIODV_27 GPIO_ACTIVE_HIGH>; -+ mosi-gpios = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>; -+ cs-gpios = <&gpio GPIODV_4 GPIO_ACTIVE_LOW>; ++ sck-gpios = <&gpio 76 GPIO_ACTIVE_HIGH>; ++ mosi-gpios = <&gpio 75 GPIO_ACTIVE_HIGH>; ++ cs-gpios = <&gpio 53 GPIO_ACTIVE_LOW>; + num-chipselects = <1>; ++ + #address-cells = <1>; + #size-cells = <0>; + -+ tm1628: led-controller@0 { -+ compatible = "titanmec,tm1628"; -+ reg = <0>; ++ display@0 { ++ compatible = "fdhisi,fd628"; ++ reg = <0x0>; + spi-3wire; + spi-lsb-first; + spi-rx-delay-us = <1>; + spi-max-frequency = <500000>; ++ ++ tm16xx,digits = [00 01 02 03]; ++ tm16xx,segment-mapping = [03 01 02 06 04 05 00]; ++ + #address-cells = <2>; + #size-cells = <0>; + -+ titanmec,segment-mapping = /bits/ 8 <4 5 6 1 2 3 7>; -+ titanmec,grid = /bits/ 8 <4 3 2 1>; -+ -+ alarm@5,1 { -+ reg = <5 1>; ++ led@4,0 { ++ reg = <4 0>; + function = LED_FUNCTION_ALARM; + }; + -+ usb@5,2 { -+ reg = <5 2>; ++ led@4,1 { ++ reg = <4 1>; + function = LED_FUNCTION_USB; + }; -+ play@5,3 { -+ reg = <5 3>; ++ ++ led@4,2 { ++ reg = <4 2>; + function = "play"; + }; + -+ pause@5,4 { -+ reg = <5 4>; ++ led@4,3 { ++ reg = <4 3>; + function = "pause"; + }; + -+ colon@5,5 { -+ reg = <5 5>; ++ led@4,4 { ++ reg = <4 4>; + function = "colon"; + }; + -+ lan@5,6 { -+ reg = <5 6>; ++ led@4,5 { ++ reg = <4 5>; + function = LED_FUNCTION_LAN; + }; + -+ wlan@5,7 { -+ reg = <5 7>; ++ led@4,6 { ++ reg = <4 6>; + function = LED_FUNCTION_WLAN; + }; + }; diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-arm64-dts-meson-g12a-x96-max-support-the-fd628-d.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-arm64-dts-meson-g12a-x96-max-support-the-fd628-d.patch new file mode 100644 index 0000000000..3a095c0d42 --- /dev/null +++ b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0037-WIP-arm64-dts-meson-g12a-x96-max-support-the-fd628-d.patch @@ -0,0 +1,100 @@ +From 7f3cc57dc50d31414a284761cfb5372942229571 Mon Sep 17 00:00:00 2001 +From: Christian Hewitt +Date: Wed, 11 Jun 2025 11:47:31 +0000 +Subject: [PATCH 37/37] WIP: arm64: dts: meson-g12a-x96-max: support the fd628 + display + +The X96-Max has an FD628 display. Add support using the tm166xx +kernel driver and userspace tools [0]. + +[0] https://github.com/jefflessard/tm16xx-display + +Signed-off-by: Christian Hewitt +--- + .../boot/dts/amlogic/meson-g12a-x96-max.dts | 63 +++++++++++++++++++ + 1 file changed, 63 insertions(+) + +diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts +index 5ab460a3e637..879276d6f6e9 100644 +--- a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts ++++ b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts +@@ -7,6 +7,7 @@ + + #include "meson-g12a.dtsi" + #include ++#include + #include + #include + +@@ -54,6 +55,68 @@ hdmi_connector_in: endpoint { + }; + }; + ++ display_client: spi { ++ compatible = "spi-gpio"; ++ sck-gpios = <&gpio 64 GPIO_ACTIVE_HIGH>; ++ mosi-gpios = <&gpio 63 GPIO_ACTIVE_HIGH>; ++ cs-gpios = <&gpio_ao 10 GPIO_ACTIVE_LOW>; ++ num-chipselects = <1>; ++ ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ display@0 { ++ compatible = "fdhisi,fd628"; ++ reg = <0x0>; ++ spi-3wire; ++ spi-lsb-first; ++ spi-rx-delay-us = <1>; ++ spi-max-frequency = <500000>; ++ ++ tm16xx,transposed; ++ tm16xx,digits = [00 01 02 03]; ++ tm16xx,segment-mapping = [00 01 02 03 04 05 06]; ++ ++ #address-cells = <2>; ++ #size-cells = <0>; ++ ++ led@4,0 { ++ reg = <4 0>; ++ function = "apps"; ++ }; ++ ++ led@4,1 { ++ reg = <4 1>; ++ function = "setup"; ++ }; ++ ++ led@4,2 { ++ reg = <4 2>; ++ function = LED_FUNCTION_USB; ++ }; ++ ++ led@4,3 { ++ reg = <4 3>; ++ function = LED_FUNCTION_SD; ++ }; ++ ++ led@4,4 { ++ reg = <4 4>; ++ function = "colon"; ++ }; ++ ++ led@4,5 { ++ reg = <4 5>; ++ function = "hdmi"; ++ }; ++ ++ led@4,6 { ++ reg = <4 6>; ++ function = "video"; ++ }; ++ }; ++ }; ++ + emmc_pwrseq: emmc-pwrseq { + compatible = "mmc-pwrseq-emmc"; + reset-gpios = <&gpio BOOT_12 GPIO_ACTIVE_LOW>; +-- +2.34.1 + diff --git a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0050-drm-meson-fix-more-rounding-issues.patch b/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0050-drm-meson-fix-more-rounding-issues.patch deleted file mode 100644 index bb299c350b..0000000000 --- a/projects/Amlogic/devices/AMLGX/patches/linux/amlogic-0050-drm-meson-fix-more-rounding-issues.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 32f902ef907e93e437ea3747b6ac07a60f6159e3 Mon Sep 17 00:00:00 2001 -From: Martin Blumenstingl -Date: Sun, 8 Jun 2025 22:22:01 +0200 -Subject: [PATCH 50/50] drm/meson: fix more rounding issues - -Signed-off-by: Martin Blumenstingl ---- - drivers/gpu/drm/meson/meson_vclk.c | 56 +++++++++++++++++++----------- - 1 file changed, 35 insertions(+), 21 deletions(-) - -diff --git a/drivers/gpu/drm/meson/meson_vclk.c b/drivers/gpu/drm/meson/meson_vclk.c -index 13fb985ba207..ced5165c6ea6 100644 ---- a/drivers/gpu/drm/meson/meson_vclk.c -+++ b/drivers/gpu/drm/meson/meson_vclk.c -@@ -110,10 +110,8 @@ - #define HDMI_PLL_LOCK BIT(31) - #define HDMI_PLL_LOCK_G12A (3 << 30) - --#define PIXEL_FREQ_1000_1001(_freq) \ -- DIV_ROUND_CLOSEST_ULL((_freq) * 1000ULL, 1001ULL) --#define PHY_FREQ_1000_1001(_freq) \ -- (PIXEL_FREQ_1000_1001(DIV_ROUND_DOWN_ULL(_freq, 10ULL)) * 10) -+ -+#define FREQ_1000_1001(_freq) DIV_ROUND_CLOSEST_ULL((_freq) * 1000ULL, 1001ULL) - - /* VID PLL Dividers */ - enum { -@@ -786,6 +784,36 @@ static void meson_hdmi_pll_generic_set(struct meson_drm *priv, - pll_freq); - } - -+static bool meson_vclk_freqs_are_matching_param(unsigned int idx, -+ unsigned long long phy_freq, -+ unsigned long long vclk_freq) -+{ -+ DRM_DEBUG_DRIVER("i = %d vclk_freq = %lluHz alt = %lluHz\n", -+ idx, params[idx].vclk_freq, -+ FREQ_1000_1001(params[idx].vclk_freq)); -+ DRM_DEBUG_DRIVER("i = %d phy_freq = %lluHz alt = %lluHz\n", -+ idx, params[idx].phy_freq, -+ FREQ_1000_1001(params[idx].phy_freq)); -+ -+ /* Match strict frequency */ -+ if (phy_freq == params[idx].phy_freq && -+ vclk_freq == params[idx].vclk_freq) -+ return true; -+ -+ /* Match 1000/1001 variant: vclk deviation has to be less than 1kHz -+ * (drm EDID is defined in 1kHz steps, so everything smaller must be -+ * rounding error) and the PHY freq deviation has to be less than -+ * 10kHz (as the TMDS clock is 10 times the pixel clock, so anything -+ * smaller must be rounding error as well). -+ */ -+ if (abs(vclk_freq - FREQ_1000_1001(params[idx].vclk_freq)) < 1000 && -+ abs(phy_freq - FREQ_1000_1001(params[idx].phy_freq)) < 10000) -+ return true; -+ -+ /* no match */ -+ return false; -+} -+ - enum drm_mode_status - meson_vclk_vic_supported_freq(struct meson_drm *priv, - unsigned long long phy_freq, -@@ -804,19 +832,7 @@ meson_vclk_vic_supported_freq(struct meson_drm *priv, - } - - for (i = 0 ; params[i].pixel_freq ; ++i) { -- DRM_DEBUG_DRIVER("i = %d vclk_freq = %lluHz alt = %lluHz\n", -- i, params[i].vclk_freq, -- PIXEL_FREQ_1000_1001(params[i].vclk_freq)); -- DRM_DEBUG_DRIVER("i = %d phy_freq = %lluHz alt = %lluHz\n", -- i, params[i].phy_freq, -- PHY_FREQ_1000_1001(params[i].phy_freq)); -- /* Match strict frequency */ -- if (phy_freq == params[i].phy_freq && -- vclk_freq == params[i].vclk_freq) -- return MODE_OK; -- /* Match 1000/1001 variant */ -- if (phy_freq == PHY_FREQ_1000_1001(params[i].phy_freq) && -- vclk_freq == PIXEL_FREQ_1000_1001(params[i].vclk_freq)) -+ if (meson_vclk_freqs_are_matching_param(i, phy_freq, vclk_freq)) - return MODE_OK; - } - -@@ -1093,10 +1109,8 @@ void meson_vclk_setup(struct meson_drm *priv, unsigned int target, - } - - for (freq = 0 ; params[freq].pixel_freq ; ++freq) { -- if ((phy_freq == params[freq].phy_freq || -- phy_freq == PHY_FREQ_1000_1001(params[freq].phy_freq)) && -- (vclk_freq == params[freq].vclk_freq || -- vclk_freq == PIXEL_FREQ_1000_1001(params[freq].vclk_freq))) { -+ if (meson_vclk_freqs_are_matching_param(freq, phy_freq, -+ vclk_freq)) { - if (vclk_freq != params[freq].vclk_freq) - vic_alternate_clock = true; - else --- -2.34.1 - diff --git a/projects/Amlogic/linux/linux.aarch64.conf b/projects/Amlogic/linux/linux.aarch64.conf index c5320f85bd..8617860fc4 100644 --- a/projects/Amlogic/linux/linux.aarch64.conf +++ b/projects/Amlogic/linux/linux.aarch64.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 6.15.1 Kernel Configuration +# Linux/arm64 6.16.0-rc3 Kernel Configuration # CONFIG_CC_VERSION_TEXT="aarch64-libreelec-linux-gnu-gcc-15.1.0 (GCC) 15.1.0" CONFIG_CC_IS_GCC=y @@ -45,7 +45,6 @@ CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y # CONFIG_WATCH_QUEUE is not set CONFIG_CROSS_MEMORY_ATTACH=y -# CONFIG_USELIB is not set # CONFIG_AUDIT is not set CONFIG_HAVE_ARCH_AUDITSYSCALL=y @@ -104,9 +103,11 @@ CONFIG_BPF_SYSCALL=y # end of BPF subsystem CONFIG_PREEMPT_VOLUNTARY_BUILD=y +CONFIG_ARCH_HAS_PREEMPT_LAZY=y # CONFIG_PREEMPT_NONE is not set CONFIG_PREEMPT_VOLUNTARY=y # CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_LAZY is not set # CONFIG_PREEMPT_RT is not set # CONFIG_PREEMPT_DYNAMIC is not set @@ -232,6 +233,7 @@ CONFIG_ELF_CORE=y # CONFIG_BASE_SMALL is not set CONFIG_FUTEX=y CONFIG_FUTEX_PI=y +CONFIG_FUTEX_PRIVATE_HASH=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y @@ -268,6 +270,7 @@ CONFIG_PROFILING=y # # CONFIG_KEXEC is not set # CONFIG_KEXEC_FILE is not set +# CONFIG_KEXEC_HANDOVER is not set # end of Kexec and crash features # end of General setup @@ -350,6 +353,7 @@ CONFIG_ARCH_MESON=y # ARM errata workarounds via the alternatives framework # # CONFIG_AMPERE_ERRATUM_AC03_CPU_38 is not set +# CONFIG_AMPERE_ERRATUM_AC04_CPU_23 is not set CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y CONFIG_ARM64_ERRATUM_826319=y CONFIG_ARM64_ERRATUM_827319=y @@ -359,7 +363,6 @@ CONFIG_ARM64_ERRATUM_819472=y # CONFIG_ARM64_ERRATUM_1742098 is not set CONFIG_ARM64_ERRATUM_845719=y CONFIG_ARM64_ERRATUM_843419=y -CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y CONFIG_ARM64_ERRATUM_1024718=y CONFIG_ARM64_ERRATUM_1418040=y CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y @@ -432,6 +435,7 @@ CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y +CONFIG_ARCH_SUPPORTS_KEXEC_HANDOVER=y CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y CONFIG_ARCH_DEFAULT_CRASH_DUMP=y # CONFIG_XEN is not set @@ -454,7 +458,6 @@ CONFIG_ARMV8_DEPRECATED=y # CONFIG_ARM64_HW_AFDBM=y CONFIG_ARM64_PAN=y -CONFIG_AS_HAS_LSE_ATOMICS=y CONFIG_ARM64_LSE_ATOMICS=y CONFIG_ARM64_USE_LSE_ATOMICS=y # end of ARMv8.1 architectural features @@ -462,8 +465,6 @@ CONFIG_ARM64_USE_LSE_ATOMICS=y # # ARMv8.2 architectural features # -CONFIG_AS_HAS_ARMV8_2=y -CONFIG_AS_HAS_SHA3=y # CONFIG_ARM64_PMEM is not set CONFIG_ARM64_RAS_EXTN=y CONFIG_ARM64_CNP=y @@ -474,17 +475,13 @@ CONFIG_ARM64_CNP=y # # CONFIG_ARM64_PTR_AUTH is not set CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y -CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y -CONFIG_AS_HAS_ARMV8_3=y CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y -CONFIG_AS_HAS_LDAPR=y # end of ARMv8.3 architectural features # # ARMv8.4 architectural features # # CONFIG_ARM64_AMU_EXTN is not set -CONFIG_AS_HAS_ARMV8_4=y # CONFIG_ARM64_TLB_RANGE is not set # end of ARMv8.4 architectural features @@ -522,6 +519,7 @@ CONFIG_ARM64_HAFT=y # end of v9.4 architectural features CONFIG_ARM64_SVE=y +CONFIG_ARM64_SME=y CONFIG_ARM64_PSEUDO_NMI=y # CONFIG_ARM64_DEBUG_PRIORITY_MASKING is not set CONFIG_RELOCATABLE=y @@ -816,7 +814,6 @@ CONFIG_EFI_PARTITION=y # CONFIG_OF_PARTITION is not set # end of Partition Types -CONFIG_BLK_MQ_PCI=y CONFIG_BLK_PM=y CONFIG_BLOCK_HOLDER_DEPRECATED=y CONFIG_BLK_MQ_STACKING=y @@ -977,6 +974,7 @@ CONFIG_CMA=y CONFIG_CMA_DEBUGFS=y # CONFIG_CMA_SYSFS is not set CONFIG_CMA_AREAS=7 +CONFIG_PAGE_BLOCK_ORDER=10 CONFIG_GENERIC_EARLY_IOREMAP=y # CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set # CONFIG_IDLE_PAGE_TRACKING is not set @@ -1392,7 +1390,6 @@ CONFIG_NF_DEFRAG_IPV6=m # CONFIG_NF_CONNTRACK_BRIDGE is not set # CONFIG_BRIDGE_NF_EBTABLES_LEGACY is not set # CONFIG_BRIDGE_NF_EBTABLES is not set -# CONFIG_IP_DCCP is not set # CONFIG_IP_SCTP is not set # CONFIG_RDS is not set # CONFIG_TIPC is not set @@ -1526,7 +1523,6 @@ CONFIG_BT_MTK=m CONFIG_BT_HCIBTUSB=m # CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set CONFIG_BT_HCIBTUSB_POLL_SYNC=y -# CONFIG_BT_HCIBTUSB_AUTO_ISOC_ALT is not set CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB_MTK=y CONFIG_BT_HCIBTUSB_RTL=y @@ -1698,7 +1694,7 @@ CONFIG_PCI_MESON=y # CONFIG_PCI_SW_SWITCHTEC is not set # end of PCI switch controller drivers -# CONFIG_PCI_PWRCTL_SLOT is not set +# CONFIG_PCI_PWRCTRL_SLOT is not set # CONFIG_CXL_BUS is not set # CONFIG_PCCARD is not set # CONFIG_RAPIDIO is not set @@ -1740,7 +1736,6 @@ CONFIG_REGMAP=y CONFIG_REGMAP_I2C=y CONFIG_REGMAP_SPI=y CONFIG_REGMAP_MMIO=y -CONFIG_REGMAP_IRQ=y CONFIG_DMA_SHARED_BUFFER=y # CONFIG_DMA_FENCE_TRACE is not set CONFIG_GENERIC_ARCH_TOPOLOGY=y @@ -1774,6 +1769,7 @@ CONFIG_GENERIC_ARCH_TOPOLOGY=y # end of ARM System Control and Management Interface Protocol CONFIG_ARM_SCPI_PROTOCOL=y +# CONFIG_ARM_SDE_INTERFACE is not set # CONFIG_FIRMWARE_MEMMAP is not set # CONFIG_FW_CFG_SYSFS is not set # CONFIG_ARM_FFA_TRANSPORT is not set @@ -1947,6 +1943,7 @@ CONFIG_BLK_DEV_RAM_SIZE=4096 # CONFIG_DUMMY_IRQ is not set # CONFIG_PHANTOM is not set # CONFIG_RPMB is not set +# CONFIG_TI_FPC202 is not set # CONFIG_TIFM_CORE is not set # CONFIG_ICS932S401 is not set # CONFIG_ENCLOSURE_SERVICES is not set @@ -1990,7 +1987,6 @@ CONFIG_EEPROM_93CX6=y # CONFIG_ALTERA_STAPL is not set # CONFIG_VMWARE_VMCI is not set # CONFIG_GENWQE is not set -# CONFIG_ECHO is not set # CONFIG_BCM_VK is not set # CONFIG_MISC_ALCOR_PCI is not set # CONFIG_MISC_RTSX_PCI is not set @@ -1999,6 +1995,7 @@ CONFIG_EEPROM_93CX6=y # CONFIG_PVPANIC is not set # CONFIG_GP_PCI1XXXX is not set # CONFIG_KEBA_CP500 is not set +# CONFIG_AMD_SBRMI_I2C is not set # end of Misc devices # @@ -2232,6 +2229,7 @@ CONFIG_NET_CORE=y CONFIG_DUMMY=m CONFIG_WIREGUARD=m # CONFIG_WIREGUARD_DEBUG is not set +# CONFIG_OVPN is not set # CONFIG_EQUALIZER is not set # CONFIG_NET_FC is not set # CONFIG_NET_TEAM is not set @@ -2320,6 +2318,7 @@ CONFIG_NET_VENDOR_REALTEK=y # CONFIG_8139CP is not set # CONFIG_8139TOO is not set CONFIG_R8169=y +# CONFIG_R8169_LEDS is not set # CONFIG_RTASE is not set # CONFIG_NET_VENDOR_RENESAS is not set # CONFIG_NET_VENDOR_ROCKER is not set @@ -2361,6 +2360,7 @@ CONFIG_FIXED_PHY=y # # MII PHY device drivers # +# CONFIG_AS21XXX_PHY is not set # CONFIG_AIR_EN8811H_PHY is not set # CONFIG_AMD_PHY is not set CONFIG_MESON_GXL_PHY=y @@ -2385,6 +2385,7 @@ CONFIG_MARVELL_PHY=y # CONFIG_MARVELL_88Q2XXX_PHY is not set # CONFIG_MARVELL_88X2222_PHY is not set # CONFIG_MAXLINEAR_GPHY is not set +# CONFIG_MAXLINEAR_86110_PHY is not set # CONFIG_MEDIATEK_GE_PHY is not set CONFIG_MICREL_PHY=y # CONFIG_MICROCHIP_T1S_PHY is not set @@ -2420,11 +2421,9 @@ CONFIG_SMSC_PHY=y # CONFIG_XILINX_GMII2RGMII is not set # CONFIG_MICREL_KS8995MA is not set # CONFIG_PSE_CONTROLLER is not set -CONFIG_MDIO_DEVICE=y CONFIG_MDIO_BUS=y CONFIG_FWNODE_MDIO=y CONFIG_OF_MDIO=y -CONFIG_MDIO_DEVRES=y CONFIG_MDIO_BITBANG=y # CONFIG_MDIO_BCM_UNIMAC is not set CONFIG_MDIO_GPIO=y @@ -3041,7 +3040,6 @@ CONFIG_I2C_ALGOBIT=y # CONFIG_I2C_AMD8111 is not set # CONFIG_I2C_I801 is not set # CONFIG_I2C_ISCH is not set -# CONFIG_I2C_PIIX4 is not set # CONFIG_I2C_NFORCE2 is not set # CONFIG_I2C_NVIDIA_GPU is not set # CONFIG_I2C_SIS5595 is not set @@ -3308,6 +3306,7 @@ CONFIG_POWER_RESET_GPIO_RESTART=y # CONFIG_POWER_RESET_LTC2952 is not set CONFIG_POWER_RESET_REGULATOR=y CONFIG_POWER_RESET_RESTART=y +# CONFIG_POWER_RESET_TORADEX_EC is not set # CONFIG_POWER_RESET_XGENE is not set CONFIG_POWER_RESET_SYSCON=y CONFIG_POWER_RESET_SYSCON_POWEROFF=y @@ -3322,6 +3321,7 @@ CONFIG_POWER_SUPPLY_HWMON=y # CONFIG_IP5XXX_POWER is not set # CONFIG_TEST_POWER is not set # CONFIG_CHARGER_ADP5061 is not set +# CONFIG_BATTERY_CHAGALL is not set # CONFIG_BATTERY_CW2015 is not set # CONFIG_BATTERY_DS2780 is not set # CONFIG_BATTERY_DS2781 is not set @@ -3342,6 +3342,7 @@ CONFIG_POWER_SUPPLY_HWMON=y # CONFIG_CHARGER_LTC4162L is not set # CONFIG_CHARGER_DETECTOR_MAX14656 is not set # CONFIG_CHARGER_MAX77976 is not set +# CONFIG_CHARGER_MAX8971 is not set # CONFIG_CHARGER_BQ2415X is not set # CONFIG_CHARGER_BQ24190 is not set # CONFIG_CHARGER_BQ24257 is not set @@ -3487,7 +3488,6 @@ CONFIG_SENSORS_GPIO_FAN=m # CONFIG_SENSORS_PT5161L is not set CONFIG_SENSORS_PWM_FAN=m # CONFIG_SENSORS_SBTSI is not set -# CONFIG_SENSORS_SBRMI is not set # CONFIG_SENSORS_SHT15 is not set # CONFIG_SENSORS_SHT21 is not set # CONFIG_SENSORS_SHT3x is not set @@ -3628,7 +3628,7 @@ CONFIG_BCMA_DRIVER_PCI=y # # Multifunction device drivers # -CONFIG_MFD_CORE=y +CONFIG_MFD_CORE=m # CONFIG_MFD_ADP5585 is not set # CONFIG_MFD_ACT8945A is not set # CONFIG_MFD_AS3711 is not set @@ -3675,6 +3675,7 @@ CONFIG_MFD_CORE=y # CONFIG_MFD_MAX77693 is not set # CONFIG_MFD_MAX77705 is not set # CONFIG_MFD_MAX77714 is not set +# CONFIG_MFD_MAX77759 is not set # CONFIG_MFD_MAX77843 is not set # CONFIG_MFD_MAX8907 is not set # CONFIG_MFD_MAX8925 is not set @@ -3699,7 +3700,7 @@ CONFIG_MFD_CORE=y # CONFIG_MFD_RK8XX_I2C is not set # CONFIG_MFD_RK8XX_SPI is not set # CONFIG_MFD_RN5T618 is not set -CONFIG_MFD_SEC_CORE=y +# CONFIG_MFD_SEC_I2C is not set # CONFIG_MFD_SI476X_CORE is not set # CONFIG_MFD_SM501 is not set # CONFIG_MFD_SKY81452 is not set @@ -3767,6 +3768,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y # CONFIG_REGULATOR_88PG86X is not set # CONFIG_REGULATOR_ACT8865 is not set # CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_ADP5055 is not set # CONFIG_REGULATOR_AW37503 is not set # CONFIG_REGULATOR_DA9121 is not set # CONFIG_REGULATOR_DA9210 is not set @@ -3824,9 +3826,6 @@ CONFIG_REGULATOR_PWM=y # CONFIG_REGULATOR_RTMV20 is not set # CONFIG_REGULATOR_RTQ6752 is not set # CONFIG_REGULATOR_RTQ2208 is not set -# CONFIG_REGULATOR_S2MPA01 is not set -# CONFIG_REGULATOR_S2MPS11 is not set -# CONFIG_REGULATOR_S5M8767 is not set # CONFIG_REGULATOR_SLG51000 is not set # CONFIG_REGULATOR_SY8106A is not set # CONFIG_REGULATOR_SY8824X is not set @@ -4071,6 +4070,9 @@ CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m # # Amlogic media platform drivers # +# CONFIG_VIDEO_C3_ISP is not set +# CONFIG_VIDEO_C3_MIPI_ADAPTER is not set +# CONFIG_VIDEO_C3_MIPI_CSI2 is not set # CONFIG_VIDEO_MESON_GE2D is not set # @@ -4582,10 +4584,16 @@ CONFIG_CHARLCD_BL_FLASH=y # CONFIG_HT16K33 is not set # CONFIG_MAX6959 is not set # CONFIG_SEG_LED_GPIO is not set -CONFIG_TM1628=m CONFIG_DRM=y -CONFIG_DRM_MIPI_DSI=y + +# +# DRM debugging options +# +# CONFIG_DRM_WERROR is not set # CONFIG_DRM_DEBUG_MM is not set +# end of DRM debugging options + +CONFIG_DRM_MIPI_DSI=y CONFIG_DRM_KMS_HELPER=y # CONFIG_DRM_PANIC is not set # CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set @@ -4620,6 +4628,12 @@ CONFIG_DRM_GEM_DMA_HELPER=y CONFIG_DRM_GEM_SHMEM_HELPER=m CONFIG_DRM_SCHED=y +# +# Drivers for system framebuffers +# +# CONFIG_DRM_SIMPLEDRM is not set +# end of Drivers for system framebuffers + # # ARM devices # @@ -4650,6 +4664,7 @@ CONFIG_DRM_PANEL=y # CONFIG_DRM_PANEL_AUO_A030JTN01 is not set # CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set # CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set +# CONFIG_DRM_PANEL_BOE_TD4320 is not set # CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A is not set # CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set # CONFIG_DRM_PANEL_BOE_TV101WUM_LL2 is not set @@ -4659,6 +4674,7 @@ CONFIG_DRM_PANEL=y # CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set # CONFIG_DRM_PANEL_DSI_CM is not set # CONFIG_DRM_PANEL_LVDS is not set +# CONFIG_DRM_PANEL_HIMAX_HX8279 is not set # CONFIG_DRM_PANEL_HIMAX_HX83102 is not set # CONFIG_DRM_PANEL_HIMAX_HX83112A is not set # CONFIG_DRM_PANEL_HIMAX_HX8394 is not set @@ -4693,6 +4709,7 @@ CONFIG_DRM_PANEL=y # CONFIG_DRM_PANEL_NOVATEK_NT36523 is not set # CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set # CONFIG_DRM_PANEL_NOVATEK_NT36672E is not set +# CONFIG_DRM_PANEL_NOVATEK_NT37801 is not set # CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set # CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set # CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set @@ -4744,6 +4761,7 @@ CONFIG_DRM_PANEL=y # CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set # CONFIG_DRM_PANEL_TPO_TPG110 is not set # CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set +# CONFIG_DRM_PANEL_VISIONOX_G2647FB105 is not set # CONFIG_DRM_PANEL_VISIONOX_R66451 is not set # CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set # CONFIG_DRM_PANEL_VISIONOX_RM692E5 is not set @@ -4814,13 +4832,11 @@ CONFIG_DRM_ETNAVIV_THERMAL=y CONFIG_DRM_MESON=y CONFIG_DRM_MESON_DW_HDMI=y CONFIG_DRM_MESON_DW_MIPI_DSI=y -# CONFIG_DRM_APPLETBDRM is not set # CONFIG_DRM_ARCPGU is not set # CONFIG_DRM_BOCHS is not set # CONFIG_DRM_CIRRUS_QEMU is not set # CONFIG_DRM_GM12U320 is not set # CONFIG_DRM_PANEL_MIPI_DBI is not set -# CONFIG_DRM_SIMPLEDRM is not set # CONFIG_TINYDRM_HX8357D is not set # CONFIG_TINYDRM_ILI9163 is not set # CONFIG_TINYDRM_ILI9225 is not set @@ -4829,17 +4845,17 @@ CONFIG_DRM_MESON_DW_MIPI_DSI=y # CONFIG_TINYDRM_MI0283QT is not set # CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_SHARP_MEMORY is not set -# CONFIG_TINYDRM_ST7586 is not set -# CONFIG_TINYDRM_ST7735R is not set # CONFIG_DRM_PL111 is not set CONFIG_DRM_LIMA=m CONFIG_DRM_PANFROST=m CONFIG_DRM_PANTHOR=m # CONFIG_DRM_TIDSS is not set # CONFIG_DRM_GUD is not set +# CONFIG_DRM_ST7571_I2C is not set +# CONFIG_DRM_ST7586 is not set +# CONFIG_DRM_ST7735R is not set # CONFIG_DRM_SSD130X is not set # CONFIG_DRM_POWERVR is not set -# CONFIG_DRM_WERROR is not set CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y # @@ -4998,6 +5014,7 @@ CONFIG_SND_USB_PODHD=m CONFIG_SND_USB_TONEPORT=m CONFIG_SND_USB_VARIAX=m CONFIG_SND_SOC=y +# CONFIG_SND_SOC_USB is not set # CONFIG_SND_SOC_ADI is not set # CONFIG_SND_SOC_AMD_ACP is not set # CONFIG_SND_AMD_ACP_CONFIG is not set @@ -5133,6 +5150,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=y # CONFIG_SND_SOC_CS43130 is not set # CONFIG_SND_SOC_CS4341 is not set # CONFIG_SND_SOC_CS4349 is not set +# CONFIG_SND_SOC_CS48L32 is not set # CONFIG_SND_SOC_CS53L30 is not set # CONFIG_SND_SOC_CS530X_I2C is not set # CONFIG_SND_SOC_CX2072X is not set @@ -5148,6 +5166,8 @@ CONFIG_SND_SOC_ES7134=y CONFIG_SND_SOC_ES8328=y CONFIG_SND_SOC_ES8328_I2C=y # CONFIG_SND_SOC_ES8328_SPI is not set +# CONFIG_SND_SOC_ES8375 is not set +# CONFIG_SND_SOC_ES8389 is not set # CONFIG_SND_SOC_GTM601 is not set # CONFIG_SND_SOC_HDA is not set # CONFIG_SND_SOC_ICS43432 is not set @@ -5187,6 +5207,8 @@ CONFIG_SND_SOC_PCM512x_I2C=m # CONFIG_SND_SOC_RT5640 is not set # CONFIG_SND_SOC_RT5659 is not set # CONFIG_SND_SOC_RT9120 is not set +# CONFIG_SND_SOC_RT9123 is not set +# CONFIG_SND_SOC_RT9123P is not set # CONFIG_SND_SOC_RTQ9128 is not set # CONFIG_SND_SOC_SGTL5000 is not set CONFIG_SND_SOC_SIMPLE_AMPLIFIER=y @@ -5299,8 +5321,6 @@ CONFIG_HID_A4TECH=y # CONFIG_HID_ACRUX is not set CONFIG_HID_APPLE=y # CONFIG_HID_APPLEIR is not set -# CONFIG_HID_APPLETB_BL is not set -# CONFIG_HID_APPLETB_KBD is not set CONFIG_HID_ASUS=y CONFIG_HID_AUREAL=y # CONFIG_HID_BELKIN is not set @@ -5454,7 +5474,7 @@ CONFIG_USB_OTG=y # CONFIG_USB_OTG_PRODUCTLIST is not set # CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set # CONFIG_USB_OTG_FSM is not set -# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set +CONFIG_USB_LEDS_TRIGGER_USBPORT=y CONFIG_USB_AUTOSUSPEND_DELAY=2 CONFIG_USB_DEFAULT_AUTHORIZATION_MODE=1 CONFIG_USB_MON=m @@ -5466,6 +5486,7 @@ CONFIG_USB_MON=m CONFIG_USB_XHCI_HCD=y # CONFIG_USB_XHCI_DBGCAP is not set CONFIG_USB_XHCI_PLATFORM=y +# CONFIG_USB_XHCI_SIDEBAND is not set CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y @@ -5656,12 +5677,9 @@ CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 # CONFIG_USB_GR_UDC is not set # CONFIG_USB_R8A66597 is not set # CONFIG_USB_PXA27X is not set -# CONFIG_USB_MV_UDC is not set -# CONFIG_USB_MV_U3D is not set # CONFIG_USB_SNP_UDC_PLAT is not set # CONFIG_USB_M66592 is not set # CONFIG_USB_BDC_UDC is not set -# CONFIG_USB_NET2272 is not set # CONFIG_USB_GADGET_XILINX is not set # CONFIG_USB_MAX3420_UDC is not set # CONFIG_USB_DUMMY_HCD is not set @@ -5824,6 +5842,7 @@ CONFIG_LEDS_SYSCON=y # CONFIG_LEDS_RT8515 is not set # CONFIG_LEDS_SGM3140 is not set # CONFIG_LEDS_SY7802 is not set +# CONFIG_LEDS_TPS6131X is not set # # RGB LED drivers @@ -5838,15 +5857,15 @@ CONFIG_LEDS_SYSCON=y # LED Triggers # CONFIG_LEDS_TRIGGERS=y -# CONFIG_LEDS_TRIGGER_TIMER is not set -# CONFIG_LEDS_TRIGGER_ONESHOT is not set -# CONFIG_LEDS_TRIGGER_DISK is not set -# CONFIG_LEDS_TRIGGER_MTD is not set +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_ONESHOT=y +CONFIG_LEDS_TRIGGER_DISK=y +CONFIG_LEDS_TRIGGER_MTD=y CONFIG_LEDS_TRIGGER_HEARTBEAT=y # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set CONFIG_LEDS_TRIGGER_CPU=y -# CONFIG_LEDS_TRIGGER_ACTIVITY is not set -# CONFIG_LEDS_TRIGGER_GPIO is not set +CONFIG_LEDS_TRIGGER_ACTIVITY=y +CONFIG_LEDS_TRIGGER_GPIO=y CONFIG_LEDS_TRIGGER_DEFAULT_ON=y # @@ -5854,8 +5873,8 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y # # CONFIG_LEDS_TRIGGER_TRANSIENT is not set # CONFIG_LEDS_TRIGGER_CAMERA is not set -# CONFIG_LEDS_TRIGGER_PANIC is not set -# CONFIG_LEDS_TRIGGER_NETDEV is not set +CONFIG_LEDS_TRIGGER_PANIC=y +CONFIG_LEDS_TRIGGER_NETDEV=y # CONFIG_LEDS_TRIGGER_PATTERN is not set # CONFIG_LEDS_TRIGGER_TTY is not set # CONFIG_LEDS_TRIGGER_INPUT_EVENTS is not set @@ -5920,7 +5939,6 @@ CONFIG_RTC_DRV_PCF8563=m # CONFIG_RTC_DRV_RV3028 is not set # CONFIG_RTC_DRV_RV3032 is not set # CONFIG_RTC_DRV_RV8803 is not set -# CONFIG_RTC_DRV_S5M is not set # CONFIG_RTC_DRV_SD2405AL is not set # CONFIG_RTC_DRV_SD3078 is not set @@ -6012,6 +6030,7 @@ CONFIG_DMABUF_HEAPS_CMA=y # # Microsoft Hyper-V guest support # +# CONFIG_HYPERV is not set # end of Microsoft Hyper-V guest support # CONFIG_GREYBUS is not set @@ -6096,7 +6115,6 @@ CONFIG_COMMON_CLK_SCPI=y # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set # CONFIG_COMMON_CLK_CS2000_CP is not set -# CONFIG_COMMON_CLK_S2MPS11 is not set # CONFIG_COMMON_CLK_AXI_CLKGEN is not set # CONFIG_COMMON_CLK_XGENE is not set CONFIG_COMMON_CLK_PWM=y @@ -6180,9 +6198,9 @@ CONFIG_IOMMU_DEFAULT_DMA_STRICT=y # CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_OF_IOMMU=y CONFIG_IOMMU_DMA=y -# CONFIG_IOMMUFD is not set # CONFIG_ARM_SMMU is not set # CONFIG_ARM_SMMU_V3 is not set +# CONFIG_IOMMUFD is not set # # Remoteproc drivers @@ -6442,31 +6460,33 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 # CONFIG_MCP3911 is not set CONFIG_MESON_SARADC=y # CONFIG_NAU7802 is not set +# CONFIG_NCT7201 is not set # CONFIG_PAC1921 is not set # CONFIG_PAC1934 is not set # CONFIG_QCOM_SPMI_IADC is not set # CONFIG_QCOM_SPMI_VADC is not set # CONFIG_QCOM_SPMI_ADC5 is not set +# CONFIG_ROHM_BD79124 is not set # CONFIG_RICHTEK_RTQ6056 is not set # CONFIG_SD_ADC_MODULATOR is not set # CONFIG_TI_ADC081C is not set # CONFIG_TI_ADC0832 is not set # CONFIG_TI_ADC084S021 is not set -# CONFIG_TI_ADC12138 is not set # CONFIG_TI_ADC108S102 is not set +# CONFIG_TI_ADC12138 is not set # CONFIG_TI_ADC128S052 is not set # CONFIG_TI_ADC161S626 is not set # CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS1100 is not set # CONFIG_TI_ADS1119 is not set +# CONFIG_TI_ADS124S08 is not set +# CONFIG_TI_ADS1298 is not set +# CONFIG_TI_ADS131E08 is not set # CONFIG_TI_ADS7138 is not set # CONFIG_TI_ADS7924 is not set -# CONFIG_TI_ADS1100 is not set -# CONFIG_TI_ADS1298 is not set # CONFIG_TI_ADS7950 is not set # CONFIG_TI_ADS8344 is not set # CONFIG_TI_ADS8688 is not set -# CONFIG_TI_ADS124S08 is not set -# CONFIG_TI_ADS131E08 is not set # CONFIG_TI_LMP92064 is not set # CONFIG_TI_TLC4541 is not set # CONFIG_TI_TSC2046 is not set @@ -6512,9 +6532,11 @@ CONFIG_MESON_SARADC=y # CONFIG_CCS811 is not set # CONFIG_ENS160 is not set # CONFIG_IAQCORE is not set +# CONFIG_MHZ19B is not set # CONFIG_PMS7003 is not set # CONFIG_SCD30_CORE is not set # CONFIG_SCD4X is not set +# CONFIG_SEN0322 is not set # CONFIG_SENSIRION_SGP30 is not set # CONFIG_SENSIRION_SGP40 is not set # CONFIG_SPS30_I2C is not set @@ -6542,6 +6564,7 @@ CONFIG_MESON_SARADC=y # # Digital to analog converters # +# CONFIG_AD3530R is not set # CONFIG_AD3552R_HS is not set # CONFIG_AD3552R is not set # CONFIG_AD5064 is not set @@ -6916,6 +6939,7 @@ CONFIG_PWM=y # CONFIG_PWM_DWC is not set # CONFIG_PWM_FSL_FTM is not set # CONFIG_PWM_GPIO is not set +# CONFIG_PWM_MC33XS2410 is not set CONFIG_PWM_MESON=y # CONFIG_PWM_PCA9685 is not set # CONFIG_PWM_XILINX is not set @@ -7225,6 +7249,7 @@ CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y # CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set # CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set # CONFIG_SQUASHFS_XATTR is not set +# CONFIG_SQUASHFS_COMP_CACHE_FULL is not set CONFIG_SQUASHFS_ZLIB=y CONFIG_SQUASHFS_LZ4=y CONFIG_SQUASHFS_LZO=y @@ -7440,14 +7465,13 @@ CONFIG_CRYPTO_ACOMP2=y CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_MANAGER2=y # CONFIG_CRYPTO_USER is not set -CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +# CONFIG_CRYPTO_SELFTESTS is not set CONFIG_CRYPTO_NULL=y -CONFIG_CRYPTO_NULL2=y CONFIG_CRYPTO_PCRYPT=y CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_AUTHENC=y # CONFIG_CRYPTO_KRB5ENC is not set -# CONFIG_CRYPTO_TEST is not set +# CONFIG_CRYPTO_BENCHMARK is not set CONFIG_CRYPTO_ENGINE=y # end of Crypto core or helper @@ -7527,13 +7551,11 @@ CONFIG_CRYPTO_MD4=y CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_POLYVAL=y -# CONFIG_CRYPTO_POLY1305 is not set # CONFIG_CRYPTO_RMD160 is not set CONFIG_CRYPTO_SHA1=y CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA512=y CONFIG_CRYPTO_SHA3=y -CONFIG_CRYPTO_SM3=y # CONFIG_CRYPTO_SM3_GENERIC is not set # CONFIG_CRYPTO_STREEBOG is not set # CONFIG_CRYPTO_WP512 is not set @@ -7588,16 +7610,12 @@ CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y CONFIG_CRYPTO_HASH_INFO=y CONFIG_CRYPTO_NHPOLY1305_NEON=y -CONFIG_CRYPTO_CHACHA20_NEON=y # # Accelerated Cryptographic Algorithms for CPU (arm64) # CONFIG_CRYPTO_GHASH_ARM64_CE=y -CONFIG_CRYPTO_POLY1305_NEON=m CONFIG_CRYPTO_SHA1_ARM64_CE=y -CONFIG_CRYPTO_SHA256_ARM64=y -CONFIG_CRYPTO_SHA2_ARM64_CE=y CONFIG_CRYPTO_SHA512_ARM64=y CONFIG_CRYPTO_SHA512_ARM64_CE=y # CONFIG_CRYPTO_SHA3_ARM64 is not set @@ -7630,7 +7648,6 @@ CONFIG_CRYPTO_HW=y # CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set # CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set # CONFIG_CRYPTO_DEV_QAT_C62XVF is not set -# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set # CONFIG_CRYPTO_DEV_SAFEXCEL is not set # CONFIG_CRYPTO_DEV_CCREE is not set # CONFIG_CRYPTO_DEV_HISI_SEC is not set @@ -7688,8 +7705,7 @@ CONFIG_CRYPTO_LIB_GF128MUL=y CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=y CONFIG_CRYPTO_LIB_CHACHA_GENERIC=y -CONFIG_CRYPTO_LIB_CHACHA_INTERNAL=y -CONFIG_CRYPTO_LIB_CHACHA=m +CONFIG_CRYPTO_LIB_CHACHA=y CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m CONFIG_CRYPTO_LIB_CURVE25519_INTERNAL=m CONFIG_CRYPTO_LIB_CURVE25519=m @@ -7697,11 +7713,17 @@ CONFIG_CRYPTO_LIB_DES=y CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9 CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=y CONFIG_CRYPTO_LIB_POLY1305_GENERIC=y -CONFIG_CRYPTO_LIB_POLY1305_INTERNAL=m CONFIG_CRYPTO_LIB_POLY1305=m CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m CONFIG_CRYPTO_LIB_SHA1=y CONFIG_CRYPTO_LIB_SHA256=y +CONFIG_CRYPTO_ARCH_HAVE_LIB_SHA256=y +CONFIG_CRYPTO_ARCH_HAVE_LIB_SHA256_SIMD=y +CONFIG_CRYPTO_LIB_SHA256_GENERIC=y +CONFIG_CRYPTO_LIB_SM3=y +CONFIG_CRYPTO_CHACHA20_NEON=y +CONFIG_CRYPTO_POLY1305_NEON=m +CONFIG_CRYPTO_SHA256_ARM64=y # end of Crypto library routines CONFIG_CRC_CCITT=m @@ -8042,7 +8064,6 @@ CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y # CONFIG_NOTIFIER_ERROR_INJECTION is not set # CONFIG_FAULT_INJECTION is not set CONFIG_ARCH_HAS_KCOV=y -CONFIG_CC_HAS_SANCOV_TRACE_PC=y # CONFIG_KCOV is not set # CONFIG_RUNTIME_TESTING_MENU is not set CONFIG_ARCH_USE_MEMTEST=y