From c2bd83e370e68b02afa9e482257561bcb3056988 Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 1 Apr 2026 00:28:22 -0300 Subject: [PATCH 1/5] Enable WiFi & BT on Radxa Cubie A5E --- config/boards/radxa-cubie-a5e.csc | 9 +-- config/sources/families/sun55iw3.conf | 3 - .../21-Enable-uart1-on-Radxa-Cubie-A5E.patch | 36 +++++++---- .../22-Enable-wifi-on-Radxa-Cubie-A5E.patch | 62 +++++++++++++++++++ patch/kernel/archive/sunxi-7.0/series.conf | 1 + 5 files changed, 90 insertions(+), 21 deletions(-) create mode 100644 patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch diff --git a/config/boards/radxa-cubie-a5e.csc b/config/boards/radxa-cubie-a5e.csc index 34619beaa018..5eab83359a78 100644 --- a/config/boards/radxa-cubie-a5e.csc +++ b/config/boards/radxa-cubie-a5e.csc @@ -1,4 +1,4 @@ -# Allwinner Cortex-A55 octa core 1/2/4GB RAM SoC +# Allwinner Cortex-A55 octa core 2/4GB RAM SoC BOARD_NAME="radxa cubie a5e" BOARD_VENDOR="radxa" BOARDFAMILY="sun55iw3" @@ -8,12 +8,7 @@ OVERLAY_PREFIX="sun55i-a527" #BOOT_LOGO="desktop" KERNEL_TARGET="edge" BOOT_FDT_FILE="sun55i-a527-cubie-a5e.dtb" -IMAGE_PARTITION_TABLE="gpt" -#IMAGE_PARTITION_TABLE="msdos" -BOOTFS_TYPE="fat" -BOOTSTART="1" -BOOTSIZE="512" -ROOTSTART="513" +HAS_VIDEO_OUTPUT=no PACKAGE_LIST_BOARD="rfkill bluetooth bluez bluez-tools" diff --git a/config/sources/families/sun55iw3.conf b/config/sources/families/sun55iw3.conf index b2b5511b7cd8..03bf437dab45 100644 --- a/config/sources/families/sun55iw3.conf +++ b/config/sources/families/sun55iw3.conf @@ -14,6 +14,3 @@ declare -g ATFBRANCH="branch:a523-v4" declare -g BOOTBRANCH="tag:v2026.01" declare -g BOOTPATCHDIR="v2026.01" -write_uboot_platform() { - dd if=$1/u-boot-sunxi-with-spl.bin of=$2 bs=512 seek=256 status=noxfer > /dev/null 2>&1 -} diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch index 6932d6900916..3e5f36c9a116 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch @@ -1,18 +1,20 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Juan Sanchez -Date: Tue, 5 Aug 2025 14:55:52 -0400 -Subject: Enable uart1 (bluetooth) on Radxa Cubie A5E +Date: Tue, 31 Mar 2026 22:37:03 -0300 +Subject: Enable BT on Radxa Cubie A5E Signed-off-by: Juan Sanchez --- - arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 9 +++++++++ - 1 file changed, 9 insertions(+) + arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 15 ++++++++++ + 1 file changed, 15 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -index 111111111111..222222222222 100644 +index 5df8058e85be..75df77cc2099 100644 --- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -@@ -16,6 +16,7 @@ aliases { +@@ -14,10 +14,11 @@ / { + + aliases { ethernet0 = &gmac0; ethernet1 = &gmac1; serial0 = &uart0; @@ -20,21 +22,33 @@ index 111111111111..222222222222 100644 }; chosen { -@@ -350,6 +351,14 @@ &uart0 { + stdout-path = "serial0:115200n8"; + }; +@@ -381,10 +382,24 @@ &uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pb_pins>; status = "okay"; }; -+/* Bluetooth */ +&uart1 { + pinctrl-names = "default"; -+ pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; ++ pinctrl-0 = <&uart1_pg_pins>, <&uart1_pg_rts_cts_pins>; + uart-has-rtscts; -+ status = "okay"; ++ status= "okay"; ++ ++ bluetooth { ++ compatible = "aic,aic8800-bt"; ++ shutdown-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; ++ host-wake-up-gpios = <&r_pio 0 12 GPIO_ACTIVE_HIGH>; ++ device-wakeup-gpios = <&r_pio 0 13 GPIO_ACTIVE_HIGH>; ++ }; +}; + &usb_otg { /* * The USB-C port is the primary power supply, so in this configuration + * relies on the other end of the USB cable to supply the VBUS power. + * So use this port in peripheral mode. -- -Armbian +Created with Armbian build tools https://github.com/armbian/build diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch new file mode 100644 index 000000000000..c66d0d719f7c --- /dev/null +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch @@ -0,0 +1,62 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Juan Sanchez +Date: Wed, 1 Apr 2026 00:07:53 -0300 +Subject: Enable WiFi on Radxa Cubie A5E + +Signed-off-by: Juan Sanchez +--- + arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 23 ++++++++++ + 1 file changed, 23 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +index 75df77cc2099..f18832781ffc 100644 +--- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts ++++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +@@ -45,10 +45,16 @@ iio-hwmon { + compatible = "iio-hwmon"; + io-channels = <&axp717_adc 3>, /* vsys_v */ + <&axp717_adc 4>; /* pmic_temp */ + }; + ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 0 6 GPIO_ACTIVE_LOW>; ++ post-power-on-delay-ms = <200>; ++ }; ++ + reg_vcc5v: vcc5v { + /* board wide 5V supply from the USB-C connector */ + compatible = "regulator-fixed"; + regulator-name = "vcc-5v"; + regulator-min-microvolt = <5000000>; +@@ -160,10 +166,27 @@ &mmc0 { + cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */ + bus-width = <4>; + status = "okay"; + }; + ++&mmc1 { ++ vmmc-supply = <®_vcc3v3_wifi>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pg_pins>; ++ status = "okay"; ++ ++ wifi@1 { ++ reg = <1>; ++ interrupt-parent = <&r_pio>; ++ interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>; ++ interrupt-names = "host-wake"; ++ }; ++}; ++ + &ohci0 { + status = "okay"; + }; + + &ohci1 { +-- +Created with Armbian build tools https://github.com/armbian/build + diff --git a/patch/kernel/archive/sunxi-7.0/series.conf b/patch/kernel/archive/sunxi-7.0/series.conf index 9b07fa168018..64b994853fc7 100644 --- a/patch/kernel/archive/sunxi-7.0/series.conf +++ b/patch/kernel/archive/sunxi-7.0/series.conf @@ -349,6 +349,7 @@ ################################################################################ patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch + patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch ################################################################################ From 0bf61d0e51c7944acb4d788b66740ee7885d5920 Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 1 Apr 2026 16:12:40 -0300 Subject: [PATCH 2/5] fix BT and WiFi patches for Radxa Cubie A5E --- .../21-Enable-uart1-on-Radxa-Cubie-A5E.patch | 2 +- .../patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch index 3e5f36c9a116..c939571f1350 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch @@ -32,7 +32,7 @@ index 5df8058e85be..75df77cc2099 100644 +&uart1 { + pinctrl-names = "default"; -+ pinctrl-0 = <&uart1_pg_pins>, <&uart1_pg_rts_cts_pins>; ++ pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; + uart-has-rtscts; + status= "okay"; + diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch index c66d0d719f7c..12ff14bec1dd 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch @@ -36,12 +36,12 @@ index 75df77cc2099..f18832781ffc 100644 }; +&mmc1 { -+ vmmc-supply = <®_vcc3v3_wifi>; ++ vmmc-supply = <®_bldo1>; + mmc-pwrseq = <&wifi_pwrseq>; + bus-width = <4>; + non-removable; + pinctrl-names = "default"; -+ pinctrl-0 = <&mmc1_pg_pins>; ++ pinctrl-0 = <&mmc1_pins>; + status = "okay"; + + wifi@1 { From f3b93e18e9a33d650eae34f7f55a7584e0518608 Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 1 Apr 2026 16:40:24 -0300 Subject: [PATCH 3/5] Update WiFi patches for Radxa Cubie A5E --- .../22-Enable-wifi-on-Radxa-Cubie-A5E.patch | 53 +++++++++++++++---- 1 file changed, 42 insertions(+), 11 deletions(-) diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch index 12ff14bec1dd..4847e19103cf 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch @@ -1,27 +1,41 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Juan Sanchez -Date: Wed, 1 Apr 2026 00:07:53 -0300 +Date: Wed, 1 Apr 2026 16:38:59 -0300 Subject: Enable WiFi on Radxa Cubie A5E Signed-off-by: Juan Sanchez --- - arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 23 ++++++++++ - 1 file changed, 23 insertions(+) + arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 32 ++++++++++ + 1 file changed, 32 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -index 75df77cc2099..f18832781ffc 100644 +index e4fcfb01dab2..b9465028c445 100644 --- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -@@ -45,10 +45,16 @@ iio-hwmon { +@@ -13,10 +13,11 @@ / { + compatible = "radxa,cubie-a5e", "allwinner,sun55i-a527"; + + aliases { + ethernet0 = &gmac0; + ethernet1 = &gmac1; ++ ethernet2 = &sdio_wifi; + serial0 = &uart0; + serial1 = &uart1; + }; + + chosen { +@@ -45,10 +46,18 @@ iio-hwmon { compatible = "iio-hwmon"; io-channels = <&axp717_adc 3>, /* vsys_v */ <&axp717_adc 4>; /* pmic_temp */ }; -+ wifi_pwrseq: wifi-pwrseq { -+ compatible = "mmc-pwrseq-simple"; -+ reset-gpios = <&r_pio 0 6 GPIO_ACTIVE_LOW>; -+ post-power-on-delay-ms = <200>; ++ reg_3v3_wifi: 3v3-wifi { ++ compatible = "regulator-fixed"; ++ regulator-name = "3v3-wifi"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ vin-supply = <®_vcc5v>; + }; + reg_vcc5v: vcc5v { @@ -29,14 +43,31 @@ index 75df77cc2099..f18832781ffc 100644 compatible = "regulator-fixed"; regulator-name = "vcc-5v"; regulator-min-microvolt = <5000000>; -@@ -160,10 +166,27 @@ &mmc0 { +@@ -96,10 +105,16 @@ gma340_pcie: gma340-pcie { + regulator-always-on; + regulator-boot-on; + gpio = <&pio 1 6 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; ++ ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; ++ post-power-on-delay-ms = <200>; ++ }; + }; + + &ehci0 { + status = "okay"; + }; +@@ -160,10 +175,27 @@ &mmc0 { cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */ bus-width = <4>; status = "okay"; }; +&mmc1 { -+ vmmc-supply = <®_bldo1>; ++ vmmc-supply = <®_3v3_wifi>; + mmc-pwrseq = <&wifi_pwrseq>; + bus-width = <4>; + non-removable; From 3c439a9ad1bf3aedc85cbe839ca90535b8e95989 Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 1 Apr 2026 17:22:58 -0300 Subject: [PATCH 4/5] Update BT & WiFi patches --- .../21-Enable-uart1-on-Radxa-Cubie-A5E.patch | 6 +-- .../22-Enable-wifi-on-Radxa-Cubie-A5E.patch | 42 +++++++------------ 2 files changed, 19 insertions(+), 29 deletions(-) diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch index c939571f1350..293be2265182 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch @@ -38,9 +38,9 @@ index 5df8058e85be..75df77cc2099 100644 + + bluetooth { + compatible = "aic,aic8800-bt"; -+ shutdown-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; -+ host-wake-up-gpios = <&r_pio 0 12 GPIO_ACTIVE_HIGH>; -+ device-wakeup-gpios = <&r_pio 0 13 GPIO_ACTIVE_HIGH>; ++ shutdown-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; ++ host-wakeup-gpios = <&r_pio 1 4 GPIO_ACTIVE_HIGH>; ++ device-wakeup-gpios = <&r_pio 1 5 GPIO_ACTIVE_HIGH>; + }; +}; + diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch index 4847e19103cf..b88a2fe0a46b 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch @@ -1,15 +1,15 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Juan Sanchez -Date: Wed, 1 Apr 2026 16:38:59 -0300 -Subject: Enable WiFi on Radxa Cubie A5E +Date: Wed, 1 Apr 2026 17:09:33 -0300 +Subject: Update WiFi patch on Radxa Cubie A5E Signed-off-by: Juan Sanchez --- - arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 32 ++++++++++ - 1 file changed, 32 insertions(+) + arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 33 ++++++++++ + 1 file changed, 33 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -index e4fcfb01dab2..b9465028c445 100644 +index e4fcfb01dab2..2abf6a535a6d 100644 --- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts @@ -13,10 +13,11 @@ / { @@ -18,13 +18,13 @@ index e4fcfb01dab2..b9465028c445 100644 aliases { ethernet0 = &gmac0; ethernet1 = &gmac1; -+ ethernet2 = &sdio_wifi; ++ ethernet2 = &wifi; serial0 = &uart0; serial1 = &uart1; }; chosen { -@@ -45,10 +46,18 @@ iio-hwmon { +@@ -45,10 +46,25 @@ iio-hwmon { compatible = "iio-hwmon"; io-channels = <&axp717_adc 3>, /* vsys_v */ <&axp717_adc 4>; /* pmic_temp */ @@ -35,32 +35,22 @@ index e4fcfb01dab2..b9465028c445 100644 + regulator-name = "3v3-wifi"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; ++ gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; + vin-supply = <®_vcc5v>; + }; ++ ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 1 1 GPIO_ACTIVE_LOW>; ++ post-power-on-delay-ms = <200>; ++ }; + reg_vcc5v: vcc5v { /* board wide 5V supply from the USB-C connector */ compatible = "regulator-fixed"; regulator-name = "vcc-5v"; regulator-min-microvolt = <5000000>; -@@ -96,10 +105,16 @@ gma340_pcie: gma340-pcie { - regulator-always-on; - regulator-boot-on; - gpio = <&pio 1 6 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; -+ -+ wifi_pwrseq: wifi-pwrseq { -+ compatible = "mmc-pwrseq-simple"; -+ reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; -+ post-power-on-delay-ms = <200>; -+ }; - }; - - &ehci0 { - status = "okay"; - }; -@@ -160,10 +175,27 @@ &mmc0 { +@@ -160,10 +176,27 @@ &mmc0 { cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */ bus-width = <4>; status = "okay"; @@ -78,7 +68,7 @@ index e4fcfb01dab2..b9465028c445 100644 + wifi@1 { + reg = <1>; + interrupt-parent = <&r_pio>; -+ interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>; ++ interrupts = <1 0 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "host-wake"; + }; +}; From e7a1c4018e8b87c2e8fe9a16cf19fbbbc26ed098 Mon Sep 17 00:00:00 2001 From: Juan Sanchez Date: Wed, 8 Apr 2026 13:15:17 -0400 Subject: [PATCH 5/5] update to last changes --- .../20-Add-wifi-to-Radxa-Cubie-A5E.patch | 66 --------------- .../21-Enable-uart1-on-Radxa-Cubie-A5E.patch | 36 +++++--- .../22-Enable-wifi-on-Radxa-Cubie-A5E.patch | 83 +++++++++++++++++++ ...lwinner-a523-support-spi-controllers.patch | 2 +- patch/kernel/archive/sunxi-6.18/series.conf | 2 +- .../21-Enable-uart1-on-Radxa-Cubie-A5E.patch | 4 +- .../22-Enable-wifi-on-Radxa-Cubie-A5E.patch | 6 +- 7 files changed, 115 insertions(+), 84 deletions(-) delete mode 100644 patch/kernel/archive/sunxi-6.18/patches.backports/20-Add-wifi-to-Radxa-Cubie-A5E.patch create mode 100644 patch/kernel/archive/sunxi-6.18/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch diff --git a/patch/kernel/archive/sunxi-6.18/patches.backports/20-Add-wifi-to-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-6.18/patches.backports/20-Add-wifi-to-Radxa-Cubie-A5E.patch deleted file mode 100644 index 1a3210c13eed..000000000000 --- a/patch/kernel/archive/sunxi-6.18/patches.backports/20-Add-wifi-to-Radxa-Cubie-A5E.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Juan Sanchez -Date: Fri, 4 Jul 2025 15:17:54 -0400 -Subject: Add wifi (mmc1) to Radxa Cubie A5E - -Signed-off-by: Juan Sanchez ---- - arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 28 ++++++++++ - 1 file changed, 28 insertions(+) - -diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -index 111111111111..222222222222 100644 ---- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -+++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -@@ -15,6 +15,7 @@ / { - aliases { - ethernet0 = &gmac0; - ethernet1 = &gmac1; -+ ethernet2 = &sdio_wifi; - serial0 = &uart0; - }; - -@@ -46,6 +47,16 @@ iio-hwmon { - <&axp717_adc 4>; /* pmic_temp */ - }; - -+ reg_3v3_wifi: 3v3-wifi { -+ compatible = "regulator-fixed"; -+ regulator-name = "3v3-wifi"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ vin-supply = <®_vcc5v>; -+ gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */ -+ enable-active-high; -+ }; -+ - reg_vcc5v: vcc5v { - /* board wide 5V supply from the USB-C connector */ - compatible = "regulator-fixed"; -@@ -128,6 +139,23 @@ &mmc0 { - status = "okay"; - }; - -+&mmc1_pins { -+ drive-strength = <40>; -+}; -+ -+&mmc1 { -+ bus-width = <4>; -+ vmmc-supply = <®_3v3_wifi>; -+ non-removable; -+ // todo: investigate why clock above 40MHz makes data errors -+ max-frequency = <35000000>; -+ status = "okay"; -+ -+ sdio_wifi: wifi@1 { -+ reg = <1>; -+ }; -+}; -+ - &ohci0 { - status = "okay"; - }; --- -Armbian - diff --git a/patch/kernel/archive/sunxi-6.18/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-6.18/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch index d648d34136bd..c6358aa4109d 100644 --- a/patch/kernel/archive/sunxi-6.18/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-6.18/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch @@ -1,40 +1,54 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Juan Sanchez -Date: Tue, 5 Aug 2025 14:55:52 -0400 -Subject: Enable uart1 (bluetooth) on Radxa Cubie A5E +Date: Tue, 31 Mar 2026 22:37:03 -0300 +Subject: Enable BT on Radxa Cubie A5E Signed-off-by: Juan Sanchez --- - arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 9 +++++++++ - 1 file changed, 9 insertions(+) + arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 15 ++++++++++ + 1 file changed, 15 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -index 111111111111..222222222222 100644 +index 5df8058e85be..75df77cc2099 100644 --- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts -@@ -17,6 +17,7 @@ aliases { +@@ -14,10 +14,11 @@ / { + + aliases { + ethernet0 = &gmac0; ethernet1 = &gmac1; - ethernet2 = &sdio_wifi; serial0 = &uart0; + serial1 = &uart1; }; chosen { -@@ -381,6 +382,14 @@ &uart0 { + stdout-path = "serial0:115200n8"; + }; +@@ -381,10 +382,24 @@ &uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pb_pins>; status = "okay"; }; -+/* Bluetooth */ +&uart1 { + pinctrl-names = "default"; + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; + uart-has-rtscts; -+ status = "okay"; ++ status= "okay"; ++ ++ bluetooth { ++ compatible = "aic,aic8800-bt"; ++ shutdown-gpios = <&r_pio 1 2 GPIO_ACTIVE_LOW>; ++ host-wakeup-gpios = <&r_pio 1 4 GPIO_ACTIVE_HIGH>; ++ device-wakeup-gpios = <&r_pio 1 3 GPIO_ACTIVE_HIGH>; ++ }; +}; + &usb_otg { /* * The USB-C port is the primary power supply, so in this configuration + * relies on the other end of the USB cable to supply the VBUS power. + * So use this port in peripheral mode. -- -Armbian +Created with Armbian build tools https://github.com/armbian/build diff --git a/patch/kernel/archive/sunxi-6.18/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-6.18/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch new file mode 100644 index 000000000000..fb6934b946c9 --- /dev/null +++ b/patch/kernel/archive/sunxi-6.18/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch @@ -0,0 +1,83 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Juan Sanchez +Date: Wed, 1 Apr 2026 17:09:33 -0300 +Subject: Update WiFi patch on Radxa Cubie A5E + +Signed-off-by: Juan Sanchez +--- + arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 33 ++++++++++ + 1 file changed, 33 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +index e4fcfb01dab2..2abf6a535a6d 100644 +--- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts ++++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts +@@ -13,10 +13,11 @@ / { + compatible = "radxa,cubie-a5e", "allwinner,sun55i-a527"; + + aliases { + ethernet0 = &gmac0; + ethernet1 = &gmac1; ++ ethernet2 = &wifi; + serial0 = &uart0; + serial1 = &uart1; + }; + + chosen { +@@ -45,10 +46,25 @@ iio-hwmon { + compatible = "iio-hwmon"; + io-channels = <&axp717_adc 3>, /* vsys_v */ + <&axp717_adc 4>; /* pmic_temp */ + }; + ++ reg_3v3_wifi: 3v3-wifi { ++ compatible = "regulator-fixed"; ++ regulator-name = "3v3-wifi"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; ++ enable-active-high; ++ }; ++ ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 1 1 GPIO_ACTIVE_LOW>; ++ post-power-on-delay-ms = <200>; ++ }; ++ + reg_vcc5v: vcc5v { + /* board wide 5V supply from the USB-C connector */ + compatible = "regulator-fixed"; + regulator-name = "vcc-5v"; + regulator-min-microvolt = <5000000>; +@@ -160,10 +176,27 @@ &mmc0 { + cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */ + bus-width = <4>; + status = "okay"; + }; + ++&mmc1 { ++ vmmc-supply = <®_3v3_wifi>; ++ vqmmc-supply = <®_bldo1>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; ++ status = "okay"; ++ ++ wifi@1 { ++ reg = <1>; ++ interrupt-parent = <&r_pio>; ++ interrupts = <1 0 IRQ_TYPE_LEVEL_LOW>; ++ interrupt-names = "host-wake"; ++ }; ++}; ++ + &ohci0 { + status = "okay"; + }; + + &ohci1 { +-- +Created with Armbian build tools https://github.com/armbian/build + diff --git a/patch/kernel/archive/sunxi-6.18/patches.backports/30-allwinner-a523-support-spi-controllers.patch b/patch/kernel/archive/sunxi-6.18/patches.backports/30-allwinner-a523-support-spi-controllers.patch index 6ae29832292e..647db7f4d879 100644 --- a/patch/kernel/archive/sunxi-6.18/patches.backports/30-allwinner-a523-support-spi-controllers.patch +++ b/patch/kernel/archive/sunxi-6.18/patches.backports/30-allwinner-a523-support-spi-controllers.patch @@ -152,7 +152,7 @@ index 111111111111..222222222222 100644 + interrupts = ; + clocks = <&r_ccu CLK_BUS_R_SPI>, <&r_ccu CLK_R_SPI>; + clock-names = "ahb", "mod"; -+ dmas = <&dma 53>, <&dma 53>; ++ dmas = <&mcu_dma 13>, <&mcu_dma 13>; + dma-names = "rx", "tx"; + resets = <&r_ccu RST_BUS_R_SPI>; + status = "disabled"; diff --git a/patch/kernel/archive/sunxi-6.18/series.conf b/patch/kernel/archive/sunxi-6.18/series.conf index 760eac49b00d..3a08def8b1e9 100644 --- a/patch/kernel/archive/sunxi-6.18/series.conf +++ b/patch/kernel/archive/sunxi-6.18/series.conf @@ -392,8 +392,8 @@ patches.backports/08-mfd-axp20x-Support-tri-phase-setup.patch patches.backports/09-arm64-dts-allwinner-a523-Mark-dual-phased-regulators.patch patches.backports/10-Allwinner-A523-add-support-for-A523-THS0-1-controllers.patch - patches.backports/20-Add-wifi-to-Radxa-Cubie-A5E.patch patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch + patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch patches.backports/30-allwinner-a523-support-spi-controllers.patch diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch index 293be2265182..c6358aa4109d 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/21-Enable-uart1-on-Radxa-Cubie-A5E.patch @@ -38,9 +38,9 @@ index 5df8058e85be..75df77cc2099 100644 + + bluetooth { + compatible = "aic,aic8800-bt"; -+ shutdown-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; ++ shutdown-gpios = <&r_pio 1 2 GPIO_ACTIVE_LOW>; + host-wakeup-gpios = <&r_pio 1 4 GPIO_ACTIVE_HIGH>; -+ device-wakeup-gpios = <&r_pio 1 5 GPIO_ACTIVE_HIGH>; ++ device-wakeup-gpios = <&r_pio 1 3 GPIO_ACTIVE_HIGH>; + }; +}; + diff --git a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch index b88a2fe0a46b..89fde1b3c08e 100644 --- a/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch +++ b/patch/kernel/archive/sunxi-7.0/patches.backports/22-Enable-wifi-on-Radxa-Cubie-A5E.patch @@ -35,13 +35,13 @@ index e4fcfb01dab2..2abf6a535a6d 100644 + regulator-name = "3v3-wifi"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; -+ gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; ++ /* gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; */ + vin-supply = <®_vcc5v>; + }; + + wifi_pwrseq: wifi-pwrseq { + compatible = "mmc-pwrseq-simple"; -+ reset-gpios = <&r_pio 1 1 GPIO_ACTIVE_LOW>; ++ reset-gpios = <&r_pio 1 1 GPIO_ACTIVE_HIGH>; + post-power-on-delay-ms = <200>; + }; + @@ -68,7 +68,7 @@ index e4fcfb01dab2..2abf6a535a6d 100644 + wifi@1 { + reg = <1>; + interrupt-parent = <&r_pio>; -+ interrupts = <1 0 IRQ_TYPE_LEVEL_HIGH>; ++ interrupts = <1 0 IRQ_TYPE_LEVEL_LOW>; + interrupt-names = "host-wake"; + }; +};