* [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech
[not found] <20230804090102.273029-1-martin@biqu3d.com>
@ 2023-08-04 9:00 ` Martin Botka
2023-08-04 9:37 ` Krzysztof Kozlowski
2023-08-04 9:00 ` [PATCH v2 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards Martin Botka
` (2 subsequent siblings)
3 siblings, 1 reply; 8+ messages in thread
From: Martin Botka @ 2023-08-04 9:00 UTC (permalink / raw)
To: martin.botka1
Cc: Konrad Dybcio, AngeloGioacchino Del Regno, Marijn Suijten,
Jami Kettunen, Paul Bouchara, Martin Botka, Andre Przywara,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Icenowy Zheng, Andrew Lunn,
Ludwig Kormann, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
From: Martin Botka <martin.botka@somainline.org>
BigTreeTech is a company based in Shenzhen that makes
3D printers and accessories.
Add prefix for it.
Signed-off-by: Martin Botka <martin.botka@somainline.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
---
Changes in V2:
- Fix alphabetical order
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 af60bf1a6664..a1f3bb7be860 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -192,6 +192,8 @@ patternProperties:
description: BeagleBoard.org Foundation
"^bhf,.*":
description: Beckhoff Automation GmbH & Co. KG
+ "^bigtreetech,.*":
+ description: Shenzhen BigTree Tech Co., LTD
"^bitmain,.*":
description: Bitmain Technologies
"^blutek,.*":
--
2.41.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards
[not found] <20230804090102.273029-1-martin@biqu3d.com>
2023-08-04 9:00 ` [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech Martin Botka
@ 2023-08-04 9:00 ` Martin Botka
2023-08-04 9:39 ` Krzysztof Kozlowski
2023-08-04 9:00 ` [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Martin Botka
2023-08-04 9:00 ` [PATCH v2 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support Martin Botka
3 siblings, 1 reply; 8+ messages in thread
From: Martin Botka @ 2023-08-04 9:00 UTC (permalink / raw)
To: martin.botka1
Cc: Konrad Dybcio, AngeloGioacchino Del Regno, Marijn Suijten,
Jami Kettunen, Paul Bouchara, Martin Botka, Andre Przywara,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Andrew Lunn, Icenowy Zheng,
Ludwig Kormann, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
From: Martin Botka <martin.botka@somainline.org>
Add name & compatible for BigTreeTech Manta boards and
BigTreeTech Pi
Signed-off-by: Martin Botka <martin.botka@somainline.org>
---
Changes in V2:
- Remove CB1 SoM as its own entry
- Squash BTT Pi and manta patches into 1
Documentation/devicetree/bindings/arm/sunxi.yaml | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index ee8fdd2da869..b90d2a7dbe2d 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -151,6 +151,17 @@ properties:
- const: roofull,beelink-x2
- const: allwinner,sun8i-h3
+ - description: BigTreeTech Manta M4/8P
+ items:
+ - const: bigtreetech,cb1-manta
+ - const: bigtreetech,cb1
+ - const: allwinner,sun50i-h616
+
+ - description: BigTreeTech Pi
+ items:
+ - const: bigtreetech,pi
+ - const: allwinner,sun50i-h616
+
- description: Chuwi V7 CW0825
items:
- const: chuwi,v7-cw0825
--
2.41.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support
[not found] <20230804090102.273029-1-martin@biqu3d.com>
2023-08-04 9:00 ` [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech Martin Botka
2023-08-04 9:00 ` [PATCH v2 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards Martin Botka
@ 2023-08-04 9:00 ` Martin Botka
2023-08-04 13:31 ` Andre Przywara
2023-08-04 9:00 ` [PATCH v2 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support Martin Botka
3 siblings, 1 reply; 8+ messages in thread
From: Martin Botka @ 2023-08-04 9:00 UTC (permalink / raw)
To: martin.botka1
Cc: Konrad Dybcio, AngeloGioacchino Del Regno, Marijn Suijten,
Jami Kettunen, Paul Bouchara, Martin Botka, Andre Przywara,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Icenowy Zheng, Ludwig Kormann,
Andrew Lunn, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
From: Martin Botka <martin.botka@somainline.org>
CB1 is Compute Module style board that plugs into Rpi board style adapter or
Manta 3D printer boards (M4P/M8P).
The SoM features:
- H616 SoC
- 1GiB of RAM
- AXP313A PMIC
- RTL8189FTV WiFi
Boards feature:
- 4x USB via USB2 hub (usb1 on SoM).
- SDcard slot for loading images.
- Ethernet port wired to the internal PHY. (100M)
- 2x HDMI 2.0. (Only 1 usable on CB1)
- Power and Status LEDs. (Only Status LED usable on CB1)
- 40 pin GPIO header
Currently working:
- Booting
- USB (USB-OTG doesnt work)
- UART
- MMC
- Status LED
- WiFi (RTL8189FS via out of tree driver)
I didnt want to duplicate things so the manta DTS can also be used on BTT pi4b adapter.
CB1 SoM has its own DTSI file in case other boards shows up that accept this SoM.
Signed-off-by: Martin Botka <martin.botka@somainline.org>
---
Changes in V2:
- Fixed whitespace errors
- Move UART into carrier boards and BTT Pi
- Remove usb1-vbus regulator
- Fix ranges and naming of AXP313A rails
- Add comment specifying why broken-cd in mmc0 is needed
- Rename sdio_wifi to wifi
- Specify in commit description that USB-OTG doesnt work
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../sun50i-h616-bigtreetech-cb1-manta.dts | 35 +++++
.../sun50i-h616-bigtreetech-cb1.dtsi | 142 ++++++++++++++++++
3 files changed, 178 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 6a96494a2e0a..7b386428510b 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -38,5 +38,6 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6-mini.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-manta.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-orangepi-zero2.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-x96-mate.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
new file mode 100644
index 000000000000..9a30d7d627d9
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
@@ -0,0 +1,35 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2023 Martin Botka <martin.botka@somainline.org>.
+ */
+
+/dts-v1/;
+
+#include "sun50i-h616-bigtreetech-cb1.dtsi"
+
+/ {
+ compatible = "bigtreetech,cb1-manta", "allwinner,sun50i-h616";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&ehci1 {
+ status = "okay";
+};
+
+&ohci1 {
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_ph_pins>;
+ status = "okay";
+};
+
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
new file mode 100644
index 000000000000..669c05f642dd
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
@@ -0,0 +1,142 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2023 Martin Botka <martin.botka@somainline.org>.
+ */
+
+/dts-v1/;
+
+#include "sun50i-h616.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+ model = "BigTreeTech CB1"
+
+ aliases {
+ ethernet0 = &rtl8189ftv;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-0 {
+ function = LED_FUNCTION_STATUS;
+ color = <LED_COLOR_ID_GREEN>;
+ gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
+ };
+ };
+
+ reg_vcc5v: regulator-vcc5v {
+ /* board wide 5V supply from carrier boards */
+ compatible = "regulator-fixed";
+ regulator-name = "vcc-5v";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+
+ reg_vcc33_wifi: vcc33-wifi {
+ /* Always on 3.3V regulator for WiFi */
+ compatible = "regulator-fixed";
+ regulator-name = "vcc33-wifi";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ vin-supply = <®_vcc5v>;
+ };
+
+ reg_vcc_wifi_io: vcc-wifi-io {
+ /* Always on 1.8V/300mA regulator for WiFi */
+ compatible = "regulator-fixed";
+ regulator-name = "vcc-wifi-io";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ vin-supply = <®_vcc33_wifi>;
+ };
+
+ wifi_pwrseq: wifi-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ clocks = <&rtc 1>;
+ clock-names = "ext_clock";
+ reset-gpios = <&pio 6 18 GPIO_ACTIVE_LOW>; /* PG18 */
+ post-power-on-delay-ms = <200>;
+ };
+};
+
+&mmc0 {
+ vmmc-supply = <®_dldo1>;
+ /* Card detection pin is not connected */
+ broken-cd;
+ bus-width = <4>;
+ status = "okay";
+};
+
+&mmc1 {
+ vmmc-supply = <®_vcc33_wifi>;
+ vqmmc-supply = <®_vcc_wifi_io>;
+ mmc-pwrseq = <&wifi_pwrseq>;
+ bus-width = <4>;
+ non-removable;
+ mmc-ddr-1_8v;
+ status = "okay";
+
+ rtl8189ftv: wifi@1 {
+ reg = <1>;
+ };
+};
+
+&r_i2c {
+ status = "okay";
+
+ axp313a: pmic@36 {
+ compatible = "x-powers,axp313a";
+ reg = <0x36>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ regulators{
+ reg_dcdc1: dcdc1 {
+ regulator-name = "vdd-gpu-sys";
+ regulator-min-microvolt = <810000>;
+ regulator-max-microvolt = <990000>;
+ regulator-always-on;
+ };
+
+ reg_dcdc2: dcdc2 {
+ regulator-name = "vdd-cpu";
+ regulator-min-microvolt = <810000>;
+ regulator-max-microvolt = <1100000>;
+ regulator-ramp-delay = <200>;
+ regulator-always-on;
+ };
+
+ reg_dcdc3: dcdc3 {
+ regulator-name = "vcc-dram";
+ regulator-min-microvolt = <1350000>;
+ regulator-max-microvolt = <1350000>;
+ regulator-always-on;
+ };
+
+ reg_aldo1: aldo1 {
+ regulator-name = "vcc-1v8-pll";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ reg_dldo1: dldo1 {
+ regulator-name = "vcc-3v3-io";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ };
+ };
+};
+
+&usbphy {
+ status = "okay";
+};
--
2.41.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support
[not found] <20230804090102.273029-1-martin@biqu3d.com>
` (2 preceding siblings ...)
2023-08-04 9:00 ` [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Martin Botka
@ 2023-08-04 9:00 ` Martin Botka
2023-08-04 13:35 ` Andre Przywara
3 siblings, 1 reply; 8+ messages in thread
From: Martin Botka @ 2023-08-04 9:00 UTC (permalink / raw)
To: martin.botka1
Cc: Konrad Dybcio, AngeloGioacchino Del Regno, Marijn Suijten,
Jami Kettunen, Paul Bouchara, Martin Botka, Andre Przywara,
Martin Botka, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Andrew Lunn,
Icenowy Zheng, Ludwig Kormann, Heiko Stuebner, Shawn Guo,
Bjorn Andersson, Chris Morgan, Jagan Teki, Maxime Ripard,
devicetree, linux-arm-kernel, linux-sunxi, linux-kernel
The BigTreeTech Pi is an H616 based board based on CB1.
Just in Rpi format board.
It features the same internals as BTT CB1 but adds:
- Fan port
- IR receiver
- ADXL345 Accelerometer connector via SPI
- 24V DC power supply via terminal plugs
- USB to CAN module connector (The actual USB to CAN happens on the external module)
List of currently working things is same as BTT CB1 but also:
- IR receiver
- ADXL345 connector
Signed-off-by: Martin Botka <martin@biqu3d.com>
---
Changes in V2:
- Add UART alongside aliases and chosen for it
- Add model string
- Enable IR receiver
- Enable SPI0 for ADXL345 connector
arch/arm64/boot/dts/allwinner/Makefile | 1 +
.../allwinner/sun50i-h616-bigtreetech-pi.dts | 68 +++++++++++++++++++
2 files changed, 69 insertions(+)
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 7b386428510b..0b6232a7f328 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -39,5 +39,6 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6-mini.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-manta.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
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
new file mode 100644
index 000000000000..cbeedf147ab6
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
@@ -0,0 +1,68 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2023 Martin Botka <martin@biqu3d.com>.
+ */
+
+/dts-v1/;
+
+#include "sun50i-h616-bigtreetech-cb1.dtsi"
+
+/ {
+ model = "BigTreeTech Pi"
+ compatible = "bigtreetech,pi", "allwinner,sun50i-h616";
+
+ aliases {
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&ehci0 {
+ status = "okay";
+};
+
+&ehci1 {
+ status = "okay";
+};
+
+&ehci2 {
+ status = "okay";
+};
+
+&ehci3 {
+ status = "okay";
+};
+
+&ir {
+ status = "okay";
+};
+
+&ohci0 {
+ status = "okay";
+};
+
+&ohci1 {
+ status = "okay";
+};
+
+&ohci2 {
+ status = "okay";
+};
+
+&ohci3 {
+ status = "okay";
+};
+
+&spi0 {
+ /* SPI connection for onboard connector for ADXL345 accelerometer */
+ status = "okay";
+}
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_ph_pins>;
+ status = "okay";
+};
--
2.41.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech
2023-08-04 9:00 ` [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech Martin Botka
@ 2023-08-04 9:37 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2023-08-04 9:37 UTC (permalink / raw)
To: Martin Botka, martin.botka1
Cc: Konrad Dybcio, AngeloGioacchino Del Regno, Marijn Suijten,
Jami Kettunen, Paul Bouchara, Martin Botka, Andre Przywara,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Icenowy Zheng, Andrew Lunn,
Ludwig Kormann, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
On 04/08/2023 11:00, Martin Botka wrote:
> From: Martin Botka <martin.botka@somainline.org>
>
> BigTreeTech is a company based in Shenzhen that makes
> 3D printers and accessories.
>
> Add prefix for it.
>
> Signed-off-by: Martin Botka <martin.botka@somainline.org>
> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards
2023-08-04 9:00 ` [PATCH v2 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards Martin Botka
@ 2023-08-04 9:39 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2023-08-04 9:39 UTC (permalink / raw)
To: Martin Botka, martin.botka1
Cc: Konrad Dybcio, AngeloGioacchino Del Regno, Marijn Suijten,
Jami Kettunen, Paul Bouchara, Martin Botka, Andre Przywara,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Andrew Lunn, Icenowy Zheng,
Ludwig Kormann, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
On 04/08/2023 11:00, Martin Botka wrote:
> From: Martin Botka <martin.botka@somainline.org>
>
> Add name & compatible for BigTreeTech Manta boards and
> BigTreeTech Pi
>
> Signed-off-by: Martin Botka <martin.botka@somainline.org>
> ---
> Changes in V2:
> - Remove CB1 SoM as its own entry
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support
2023-08-04 9:00 ` [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Martin Botka
@ 2023-08-04 13:31 ` Andre Przywara
0 siblings, 0 replies; 8+ messages in thread
From: Andre Przywara @ 2023-08-04 13:31 UTC (permalink / raw)
To: Martin Botka
Cc: martin.botka1, Konrad Dybcio, AngeloGioacchino Del Regno,
Marijn Suijten, Jami Kettunen, Paul Bouchara, Martin Botka,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Icenowy Zheng, Ludwig Kormann,
Andrew Lunn, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
On Fri, 4 Aug 2023 11:00:31 +0200
Martin Botka <martin@biqu3d.com> wrote:
Hi,
thanks for the changes. Some minor things left ...
> From: Martin Botka <martin.botka@somainline.org>
>
> CB1 is Compute Module style board that plugs into Rpi board style adapter or
> Manta 3D printer boards (M4P/M8P).
>
> The SoM features:
> - H616 SoC
> - 1GiB of RAM
> - AXP313A PMIC
> - RTL8189FTV WiFi
>
> Boards feature:
> - 4x USB via USB2 hub (usb1 on SoM).
> - SDcard slot for loading images.
> - Ethernet port wired to the internal PHY. (100M)
> - 2x HDMI 2.0. (Only 1 usable on CB1)
> - Power and Status LEDs. (Only Status LED usable on CB1)
> - 40 pin GPIO header
>
> Currently working:
> - Booting
> - USB (USB-OTG doesnt work)
> - UART
> - MMC
> - Status LED
> - WiFi (RTL8189FS via out of tree driver)
>
> I didnt want to duplicate things so the manta DTS can also be used on BTT pi4b adapter.
> CB1 SoM has its own DTSI file in case other boards shows up that accept this SoM.
>
> Signed-off-by: Martin Botka <martin.botka@somainline.org>
> ---
> Changes in V2:
> - Fixed whitespace errors
> - Move UART into carrier boards and BTT Pi
> - Remove usb1-vbus regulator
> - Fix ranges and naming of AXP313A rails
> - Add comment specifying why broken-cd in mmc0 is needed
> - Rename sdio_wifi to wifi
> - Specify in commit description that USB-OTG doesnt work
>
> arch/arm64/boot/dts/allwinner/Makefile | 1 +
> .../sun50i-h616-bigtreetech-cb1-manta.dts | 35 +++++
> .../sun50i-h616-bigtreetech-cb1.dtsi | 142 ++++++++++++++++++
> 3 files changed, 178 insertions(+)
> create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
> create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
>
> diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
> index 6a96494a2e0a..7b386428510b 100644
> --- a/arch/arm64/boot/dts/allwinner/Makefile
> +++ b/arch/arm64/boot/dts/allwinner/Makefile
> @@ -38,5 +38,6 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6-mini.dtb
> +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-manta.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-orangepi-zero2.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-x96-mate.dtb
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
> new file mode 100644
> index 000000000000..9a30d7d627d9
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1-manta.dts
> @@ -0,0 +1,35 @@
> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)
> +/*
> + * Copyright (C) 2023 Martin Botka <martin.botka@somainline.org>.
> + */
> +
> +/dts-v1/;
> +
> +#include "sun50i-h616-bigtreetech-cb1.dtsi"
> +
> +/ {
> + compatible = "bigtreetech,cb1-manta", "allwinner,sun50i-h616";
This must follow what you just added to sunxi.yaml, so:
"bigtreetech,cb1-manta", "bigtreetech,cb1", "allwinner,sun50i-h616";
And you need the human readable "model" string *here*.
> +
> + aliases {
> + serial0 = &uart0;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +};
> +
> +&ehci1 {
> + status = "okay";
> +};
> +
> +&ohci1 {
> + status = "okay";
> +};
> +
> +&uart0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart0_ph_pins>;
> + status = "okay";
> +};
> +
Extra empty line here.
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
> new file mode 100644
> index 000000000000..669c05f642dd
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi
> @@ -0,0 +1,142 @@
> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)
> +/*
> + * Copyright (C) 2023 Martin Botka <martin.botka@somainline.org>.
> + */
> +
> +/dts-v1/;
> +
> +#include "sun50i-h616.dtsi"
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/interrupt-controller/arm-gic.h>
> +#include <dt-bindings/leds/common.h>
> +
> +/ {
> + model = "BigTreeTech CB1"
Apart from the missing semicolon, which actually breaks the build (as you
have discovered yourself): there shouldn't be a model string in a .dtsi
file, that should be confined to the final board .dts, just as a human
readable form of the board compatible string. So drop this here, and add
the respective name to the two .dts files.
Rest looks fine now, thanks.
Cheers,
Andre
> + aliases {
> + ethernet0 = &rtl8189ftv;
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> +
> + led-0 {
> + function = LED_FUNCTION_STATUS;
> + color = <LED_COLOR_ID_GREEN>;
> + gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
> + };
> + };
> +
> + reg_vcc5v: regulator-vcc5v {
> + /* board wide 5V supply from carrier boards */
> + compatible = "regulator-fixed";
> + regulator-name = "vcc-5v";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + regulator-always-on;
> + };
> +
> + reg_vcc33_wifi: vcc33-wifi {
> + /* Always on 3.3V regulator for WiFi */
> + compatible = "regulator-fixed";
> + regulator-name = "vcc33-wifi";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + vin-supply = <®_vcc5v>;
> + };
> +
> + reg_vcc_wifi_io: vcc-wifi-io {
> + /* Always on 1.8V/300mA regulator for WiFi */
> + compatible = "regulator-fixed";
> + regulator-name = "vcc-wifi-io";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + vin-supply = <®_vcc33_wifi>;
> + };
> +
> + wifi_pwrseq: wifi-pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + clocks = <&rtc 1>;
> + clock-names = "ext_clock";
> + reset-gpios = <&pio 6 18 GPIO_ACTIVE_LOW>; /* PG18 */
> + post-power-on-delay-ms = <200>;
> + };
> +};
> +
> +&mmc0 {
> + vmmc-supply = <®_dldo1>;
> + /* Card detection pin is not connected */
> + broken-cd;
> + bus-width = <4>;
> + status = "okay";
> +};
> +
> +&mmc1 {
> + vmmc-supply = <®_vcc33_wifi>;
> + vqmmc-supply = <®_vcc_wifi_io>;
> + mmc-pwrseq = <&wifi_pwrseq>;
> + bus-width = <4>;
> + non-removable;
> + mmc-ddr-1_8v;
> + status = "okay";
> +
> + rtl8189ftv: wifi@1 {
> + reg = <1>;
> + };
> +};
> +
> +&r_i2c {
> + status = "okay";
> +
> + axp313a: pmic@36 {
> + compatible = "x-powers,axp313a";
> + reg = <0x36>;
> + interrupt-controller;
> + #interrupt-cells = <1>;
> +
> + regulators{
> + reg_dcdc1: dcdc1 {
> + regulator-name = "vdd-gpu-sys";
> + regulator-min-microvolt = <810000>;
> + regulator-max-microvolt = <990000>;
> + regulator-always-on;
> + };
> +
> + reg_dcdc2: dcdc2 {
> + regulator-name = "vdd-cpu";
> + regulator-min-microvolt = <810000>;
> + regulator-max-microvolt = <1100000>;
> + regulator-ramp-delay = <200>;
> + regulator-always-on;
> + };
> +
> + reg_dcdc3: dcdc3 {
> + regulator-name = "vcc-dram";
> + regulator-min-microvolt = <1350000>;
> + regulator-max-microvolt = <1350000>;
> + regulator-always-on;
> + };
> +
> + reg_aldo1: aldo1 {
> + regulator-name = "vcc-1v8-pll";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + };
> +
> + reg_dldo1: dldo1 {
> + regulator-name = "vcc-3v3-io";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> + };
> + };
> +};
> +
> +&usbphy {
> + status = "okay";
> +};
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support
2023-08-04 9:00 ` [PATCH v2 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support Martin Botka
@ 2023-08-04 13:35 ` Andre Przywara
0 siblings, 0 replies; 8+ messages in thread
From: Andre Przywara @ 2023-08-04 13:35 UTC (permalink / raw)
To: Martin Botka
Cc: martin.botka1, Konrad Dybcio, AngeloGioacchino Del Regno,
Marijn Suijten, Jami Kettunen, Paul Bouchara, Martin Botka,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Andrew Lunn, Icenowy Zheng,
Ludwig Kormann, Heiko Stuebner, Shawn Guo, Bjorn Andersson,
Chris Morgan, Jagan Teki, Maxime Ripard, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel
On Fri, 4 Aug 2023 11:00:32 +0200
Martin Botka <martin@biqu3d.com> wrote:
Hi,
> The BigTreeTech Pi is an H616 based board based on CB1.
> Just in Rpi format board.
>
> It features the same internals as BTT CB1 but adds:
> - Fan port
> - IR receiver
> - ADXL345 Accelerometer connector via SPI
> - 24V DC power supply via terminal plugs
> - USB to CAN module connector (The actual USB to CAN happens on the external module)
>
> List of currently working things is same as BTT CB1 but also:
> - IR receiver
> - ADXL345 connector
>
> Signed-off-by: Martin Botka <martin@biqu3d.com>
> ---
> Changes in V2:
> - Add UART alongside aliases and chosen for it
> - Add model string
> - Enable IR receiver
> - Enable SPI0 for ADXL345 connector
>
> arch/arm64/boot/dts/allwinner/Makefile | 1 +
> .../allwinner/sun50i-h616-bigtreetech-pi.dts | 68 +++++++++++++++++++
> 2 files changed, 69 insertions(+)
> create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
>
> diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
> index 7b386428510b..0b6232a7f328 100644
> --- a/arch/arm64/boot/dts/allwinner/Makefile
> +++ b/arch/arm64/boot/dts/allwinner/Makefile
> @@ -39,5 +39,6 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-model-b.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-tanix-tx6-mini.dtb
> dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h616-bigtreetech-cb1-manta.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
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
> new file mode 100644
> index 000000000000..cbeedf147ab6
> --- /dev/null
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616-bigtreetech-pi.dts
> @@ -0,0 +1,68 @@
> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)
> +/*
> + * Copyright (C) 2023 Martin Botka <martin@biqu3d.com>.
> + */
> +
> +/dts-v1/;
> +
> +#include "sun50i-h616-bigtreetech-cb1.dtsi"
> +
> +/ {
> + model = "BigTreeTech Pi"
missing semicolon
> + compatible = "bigtreetech,pi", "allwinner,sun50i-h616";
> +
> + aliases {
> + serial0 = &uart0;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +};
> +
> +&ehci0 {
> + status = "okay";
> +};
> +
> +&ehci1 {
> + status = "okay";
> +};
> +
> +&ehci2 {
> + status = "okay";
> +};
> +
> +&ehci3 {
> + status = "okay";
> +};
> +
> +&ir {
> + status = "okay";
> +};
> +
> +&ohci0 {
> + status = "okay";
> +};
> +
> +&ohci1 {
> + status = "okay";
> +};
> +
> +&ohci2 {
> + status = "okay";
> +};
> +
> +&ohci3 {
> + status = "okay";
> +};
> +
> +&spi0 {
> + /* SPI connection for onboard connector for ADXL345 accelerometer */
You need to specify the pinctrl properties here, since there is no
default. I guess it's PortC? Then you can copy from the OPiZero2, just
check the CS situation.
> + status = "okay";
> +}
missing semicolon;
Rest looks fine.
Thanks,
Andre
> +
> +&uart0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart0_ph_pins>;
> + status = "okay";
> +};
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-08-04 13:35 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20230804090102.273029-1-martin@biqu3d.com>
2023-08-04 9:00 ` [PATCH v2 1/4] dt-bindings: vendor-prefixes: Add BigTreeTech Martin Botka
2023-08-04 9:37 ` Krzysztof Kozlowski
2023-08-04 9:00 ` [PATCH v2 2/4] dt-bindings: arm: sunxi: Add BigTreeTech boards Martin Botka
2023-08-04 9:39 ` Krzysztof Kozlowski
2023-08-04 9:00 ` [PATCH v2 3/4] arm64: dts: allwinner: h616: Add BigTreeTech CB1 SoM & boards support Martin Botka
2023-08-04 13:31 ` Andre Przywara
2023-08-04 9:00 ` [PATCH v2 4/4] arm64: dts: allwinner: h616: Add BigTreeTech Pi support Martin Botka
2023-08-04 13:35 ` Andre Przywara
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox