From 1bd88637bee4d1417c9e2ccfc53eb61b2fba52bd Mon Sep 17 00:00:00 2001 From: Kingsley Jarrett Date: Sat, 11 Oct 2025 00:48:41 +0100 Subject: [PATCH] Add Kernel overlay to reduce eMMC frequency for FriendlyElec NanoPC-T6 boards Some FriendlyElec NanoPC-T6 boards use a A3A444 eMMC chip. Under heavy I/O load when running in HS400 mode, this will often result in I/O errors. Reducing the eMMC frequency from the default 200000000 Hz to 150000000 Hz improves stability and eliminates the I/O errors. --- .../kernel/archive/rockchip64-6.12/overlay/Makefile | 3 ++- .../rockchip64-6.12/overlay/README.rockchip-overlays | 10 ++++++++++ .../rockchip-rk3588-nanopc-t6-mmc-frequency.dtso | 12 ++++++++++++ .../kernel/archive/rockchip64-6.17/overlay/Makefile | 1 + .../rockchip64-6.17/overlay/README.rockchip-overlays | 10 ++++++++++ .../rockchip-rk3588-nanopc-t6-mmc-frequency.dtso | 12 ++++++++++++ 6 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 patch/kernel/archive/rockchip64-6.12/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso create mode 100644 patch/kernel/archive/rockchip64-6.17/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso diff --git a/patch/kernel/archive/rockchip64-6.12/overlay/Makefile b/patch/kernel/archive/rockchip64-6.12/overlay/Makefile index 04ea299964..a564638e50 100644 --- a/patch/kernel/archive/rockchip64-6.12/overlay/Makefile +++ b/patch/kernel/archive/rockchip64-6.12/overlay/Makefile @@ -94,7 +94,8 @@ dtbo-$(CONFIG_ARCH_ROCKCHIP) += \ rockchip-rk3588-uart7-m2.dtbo \ rockchip-rk3588-uart8-m1.dtbo \ rockchip-rk3588-rkvenc-overlay.dtbo \ - rockchip-rk3588-nanopi-m6-spi-nor-flash.dtbo + rockchip-rk3588-nanopi-m6-spi-nor-flash.dtbo \ + rockchip-rk3588-nanopc-t6-mmc-frequency.dtbo scr-$(CONFIG_ARCH_ROCKCHIP) += \ rockchip-fixup.scr diff --git a/patch/kernel/archive/rockchip64-6.12/overlay/README.rockchip-overlays b/patch/kernel/archive/rockchip64-6.12/overlay/README.rockchip-overlays index dd15cbbd9b..2d06c061c7 100644 --- a/patch/kernel/archive/rockchip64-6.12/overlay/README.rockchip-overlays +++ b/patch/kernel/archive/rockchip64-6.12/overlay/README.rockchip-overlays @@ -261,3 +261,13 @@ overlay enables (overclocked) operation at 1.3ghz 1.3Ghz operation appears stable on the two boards I've tested. The legacy kernel is not supported on the Rock S0 + +********************************** +Details for NanoPC-T6 overlays (11 Oct 2025): + +### rockchip-rk3588-nanopc-t6-mmc-frequency + +Some NanoPC-T6 boards use a A3A444 eMMC chip. Under heavy I/O load when running +in HS400 mode, this will often result in I/O errors. +Reducing the eMMC frequency from the default 200000000 Hz to 150000000 Hz improves +stability and eliminates the I/O errors. diff --git a/patch/kernel/archive/rockchip64-6.12/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso b/patch/kernel/archive/rockchip64-6.12/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso new file mode 100644 index 0000000000..ab1d37cd0d --- /dev/null +++ b/patch/kernel/archive/rockchip64-6.12/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso @@ -0,0 +1,12 @@ +/dts-v1/; +/plugin/; + +/ { + fragment@0 { + target = <&sdhci>; + __overlay__ { + status = "okay"; + max-frequency = <150000000>; + }; + }; +}; diff --git a/patch/kernel/archive/rockchip64-6.17/overlay/Makefile b/patch/kernel/archive/rockchip64-6.17/overlay/Makefile index 53b53fcb81..29d3f61684 100644 --- a/patch/kernel/archive/rockchip64-6.17/overlay/Makefile +++ b/patch/kernel/archive/rockchip64-6.17/overlay/Makefile @@ -97,6 +97,7 @@ dtbo-$(CONFIG_ARCH_ROCKCHIP) += \ rockchip-rk3588-rkvenc-overlay.dtbo \ rockchip-rk3588-nanopi-m6-spi-nor-flash.dtbo \ rockchip-rk3588-nanopi-m6-display-dsi1-yx35.dtbo \ + rockchip-rk3588-nanopc-t6-mmc-frequency.dtbo scr-$(CONFIG_ARCH_ROCKCHIP) += \ rockchip-fixup.scr diff --git a/patch/kernel/archive/rockchip64-6.17/overlay/README.rockchip-overlays b/patch/kernel/archive/rockchip64-6.17/overlay/README.rockchip-overlays index 19a05827e1..45b05f6a6f 100644 --- a/patch/kernel/archive/rockchip64-6.17/overlay/README.rockchip-overlays +++ b/patch/kernel/archive/rockchip64-6.17/overlay/README.rockchip-overlays @@ -251,3 +251,13 @@ The legacy kernel is not supported on the Rock S0 Enable pcm5102a analog codec connected to i2s0 bus: ### rk3308-pcm5102a + +********************************** +Details for NanoPC-T6 overlays (11 Oct 2025): + +### rockchip-rk3588-nanopc-t6-mmc-frequency + +Some NanoPC-T6 boards use a A3A444 eMMC chip. Under heavy I/O load when running +in HS400 mode, this will often result in I/O errors. +Reducing the eMMC frequency from the default 200000000 Hz to 150000000 Hz improves +stability and eliminates the I/O errors. diff --git a/patch/kernel/archive/rockchip64-6.17/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso b/patch/kernel/archive/rockchip64-6.17/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso new file mode 100644 index 0000000000..ab1d37cd0d --- /dev/null +++ b/patch/kernel/archive/rockchip64-6.17/overlay/rockchip-rk3588-nanopc-t6-mmc-frequency.dtso @@ -0,0 +1,12 @@ +/dts-v1/; +/plugin/; + +/ { + fragment@0 { + target = <&sdhci>; + __overlay__ { + status = "okay"; + max-frequency = <150000000>; + }; + }; +};