diff --git a/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-BPI-M4-ZERO-sdio-wifi-bt-overlay.patch b/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-BPI-M4-ZERO-sdio-wifi-bt-overlay.patch index ac8c6b2f00..fca59b3966 100644 --- a/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-BPI-M4-ZERO-sdio-wifi-bt-overlay.patch +++ b/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-BPI-M4-ZERO-sdio-wifi-bt-overlay.patch @@ -1,22 +1,22 @@ -From ab89eadbd909022e7be9052e5765d1309f64984b Mon Sep 17 00:00:00 2001 +From 57f3aa16ec2a46967b56f7849eaf7f34c09fe5b8 Mon Sep 17 00:00:00 2001 From: Patrick Yavitz -Date: Thu, 3 Oct 2024 12:59:06 -0400 -Subject: Add BPI-M4-ZERO sdio wifi bt overlay +Date: Wed, 9 Oct 2024 08:05:54 -0400 +Subject: [PATCH] Add BPI-M4-ZERO sdio wifi bt overlay sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso Signed-off-by: Patrick Yavitz --- .../arm64/boot/dts/allwinner/overlay/Makefile | 3 +- - .../sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso | 45 +++++++++++++++++++ - 2 files changed, 47 insertions(+), 1 deletion(-) + .../sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso | 29 +++++++++++++++++++ + 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso diff --git a/arch/arm64/boot/dts/allwinner/overlay/Makefile b/arch/arm64/boot/dts/allwinner/overlay/Makefile -index 24383cb63770..3d3f715c15d4 100644 +index 76a4952e3ecc..b10db212cdf2 100644 --- a/arch/arm64/boot/dts/allwinner/overlay/Makefile +++ b/arch/arm64/boot/dts/allwinner/overlay/Makefile -@@ -67,7 +67,8 @@ dtb-$(CONFIG_ARCH_SUNXI) += \ +@@ -66,7 +66,8 @@ dtb-$(CONFIG_ARCH_SUNXI) += \ sun50i-h616-i2c0-pi.dtbo \ sun50i-h616-i2c1-pi.dtbo \ sun50i-h616-i2c2-pi.dtbo \ @@ -28,21 +28,13 @@ index 24383cb63770..3d3f715c15d4 100644 sun50i-a64-fixup.scr \ diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso new file mode 100644 -index 000000000000..f52d445dfc4f +index 000000000000..b672807fab66 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-bananapi-m4-sdio-wifi-bt.dtso -@@ -0,0 +1,45 @@ +@@ -0,0 +1,29 @@ +/dts-v1/; +/plugin/; + -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ +/ { + compatible = "sinovoip,bpi-m4-zero", "allwinner,sun50i-h616", "allwinner,sun50i-h618"; + @@ -65,18 +57,10 @@ index 000000000000..f52d445dfc4f + fragment@2 { + target = <&uart1>; + __overlay__ { -+ bluetooth { -+ compatible = "brcm,bcm43438-bt"; -+ host-wakeup-gpios = <&pio 6 16 GPIO_ACTIVE_HIGH>; -+ device-wakeup-gpios = <&pio 6 17 GPIO_ACTIVE_HIGH>; -+ shutdown-gpios = <&pio 6 19 GPIO_ACTIVE_HIGH>; -+ max-speed = <1500000>; -+ vbat-supply = <®_dldo1>; -+ vddio-supply = <®_aldo1>; -+ }; ++ status = "okay"; + }; + }; +}; -- -2.35.3 +2.39.5 diff --git a/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-board-BananaPi-BPI-M4-ZERO.patch b/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-board-BananaPi-BPI-M4-ZERO.patch index 05d77ae4fc..2c717dc547 100644 --- a/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-board-BananaPi-BPI-M4-ZERO.patch +++ b/patch/kernel/archive/sunxi-6.11/patches.armbian/Add-board-BananaPi-BPI-M4-ZERO.patch @@ -1,7 +1,7 @@ -From 35466d40a5d04ad03ef7a5d5abf1512e5e1df1bd Mon Sep 17 00:00:00 2001 +From 946c4756a270d64c9a128e629ff7c4789a5ff8c4 Mon Sep 17 00:00:00 2001 From: Patrick Yavitz -Date: Thu, 3 Oct 2024 12:46:14 -0400 -Subject: Add board BananaPi BPI-M4-ZERO +Date: Mon, 7 Oct 2024 08:37:08 -0400 +Subject: [PATCH] Add board BananaPi BPI-M4-ZERO sun50i-h618-bananapi-m4-zero.dts sun50i-h618-bananapi-m4.dtsi @@ -10,16 +10,16 @@ Signed-off-by: Patrick Yavitz --- arch/arm64/boot/dts/allwinner/Makefile | 1 + .../sun50i-h618-bananapi-m4-zero.dts | 73 +++++ - .../allwinner/sun50i-h618-bananapi-m4.dtsi | 252 ++++++++++++++++++ - 3 files changed, 326 insertions(+) + .../allwinner/sun50i-h618-bananapi-m4.dtsi | 280 ++++++++++++++++++ + 3 files changed, 354 insertions(+) create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4-zero.dts create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4.dtsi diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile -index a2ca84f2e3fe..0df5a842ce1f 100644 +index 717ef4a7ca1c..c2922d51cee2 100644 --- a/arch/arm64/boot/dts/allwinner/Makefile +++ b/arch/arm64/boot/dts/allwinner/Makefile -@@ -56,6 +56,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-emmc.dtb +@@ -58,6 +58,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-emmc.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-pi.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-orangepi-zero2.dtb dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-x96-mate.dtb @@ -29,7 +29,7 @@ index a2ca84f2e3fe..0df5a842ce1f 100644 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h618-orangepi-zero3.dtb diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4-zero.dts b/arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4-zero.dts new file mode 100644 -index 000000000000..d7c6e0fdf2ff +index 000000000000..61829ab55218 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4-zero.dts @@ -0,0 +1,73 @@ @@ -108,10 +108,10 @@ index 000000000000..d7c6e0fdf2ff +}; diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4.dtsi new file mode 100644 -index 000000000000..9a975de996c6 +index 000000000000..32fa9588efda --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/sun50i-h618-bananapi-m4.dtsi -@@ -0,0 +1,252 @@ +@@ -0,0 +1,280 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2024 Patrick Yavitz @@ -147,16 +147,6 @@ index 000000000000..9a975de996c6 + }; + }; + -+ gpio-keys { -+ compatible = "gpio-keys"; -+ -+ key-sw3 { -+ label = "sw3"; -+ linux,code = ; -+ gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */ -+ }; -+ }; -+ + leds { + compatible = "gpio-leds"; + @@ -171,19 +161,37 @@ index 000000000000..9a975de996c6 + reg_usb_vbus: regulator-usb-vbus { + /* Separate discrete regulator for the USB ports */ + compatible = "regulator-fixed"; -+ regulator-name = "usb-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; ++ regulator-name = "usb-vbus"; + vin-supply = <®_vcc5v>; + }; + + reg_vcc5v: regulator-vcc5v { + /* Board wide 5V supply directly from the USB-C socket */ + compatible = "regulator-fixed"; -+ regulator-name = "vcc-5v"; ++ regulator-always-on; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; ++ regulator-name = "vcc-5v"; ++ }; ++ ++ reg_vcc3v3: regulator-vcc3v3 { ++ compatible = "regulator-fixed"; + regulator-always-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-3v3"; ++ vin-supply = <®_vcc5v>; ++ }; ++ ++ reg_vcc1v8: regulator-vcc1v8 { ++ compatible = "regulator-fixed"; ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc-1v8"; ++ vin-supply = <®_vcc3v3>; + }; + + wifi_pwrseq: wifi-pwrseq { @@ -240,38 +248,48 @@ index 000000000000..9a975de996c6 + +&mmc0 { + status = "okay"; -+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ -+ disable-wp; + bus-width = <4>; + max-frequency = <50000000>; -+ vmmc-supply = <®_dldo1>; ++ ++ disable-wp; ++ ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ ++ vmmc-supply = <®_vcc3v3>; +}; + +&mmc1 { + status = "disabled"; + bus-width = <4>; -+ non-removable; -+ mmc-pwrseq = <&wifi_pwrseq>; -+ vmmc-supply = <®_dldo1>; -+ vqmmc-supply = <®_aldo1>; ++ max-frequency = <100000000>; + -+ sdio_wifi: wifi@1 { ++ non-removable; ++ disable-wp; ++ ++ /* WiFi firmware requires power to be kept while in suspend */ ++ keep-power-in-suspend; ++ ++ mmc-pwrseq = <&wifi_pwrseq>; ++ ++ cd-gpios = <&pio 6 15 GPIO_ACTIVE_HIGH>; /* PG15 */ ++ vmmc-supply = <®_vcc3v3>; ++ ++ sdio: wifi@1 { + reg = <1>; + compatible = "brcm,bcm4329-fmac"; -+ interrupt-parent = <&pio>; -+ interrupts = <6 15 IRQ_TYPE_LEVEL_LOW>; /* PG15 */ -+ interrupt-names = "host-wake"; + }; +}; + +&mmc2 { + status = "okay"; + bus-width = <8>; -+ non-removable; + cap-mmc-hw-reset; + mmc-hs200-1_8v; -+ vmmc-supply = <®_dldo1>; -+ vqmmc-supply = <®_aldo1>; ++ ++ non-removable; ++ disable-wp; ++ ++ vmmc-supply = <®_vcc3v3>; ++ vqmmc-supply = <®_vcc1v8>; +}; + +&pio { @@ -353,10 +371,20 @@ index 000000000000..9a975de996c6 +}; + +&uart1 { -+ status = "okay"; ++ status = "disabled"; + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; + pinctrl-names = "default"; + uart-has-rtscts; ++ ++ bluetooth { ++ compatible = "brcm,bcm43540-bt"; ++ host-wakeup-gpios = <&pio 6 16 GPIO_ACTIVE_HIGH>; ++ device-wakeup-gpios = <&pio 6 17 GPIO_ACTIVE_HIGH>; ++ shutdown-gpios = <&pio 6 19 GPIO_ACTIVE_HIGH>; ++ max-speed = <1500000>; ++ vbat-supply = <®_vcc3v3>; ++ vddio-supply = <®_vcc3v3>; ++ }; +}; + +&uart5 { @@ -365,5 +393,5 @@ index 000000000000..9a975de996c6 + pinctrl-names = "default"; +}; -- -2.35.3 +2.39.5