* [PATCH v3 1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix
2025-05-19 8:56 [PATCH v3 0/3] Add support for Sakura Pi RK3308B Hsun Lai
@ 2025-05-19 8:56 ` Hsun Lai
2025-05-19 9:31 ` Krzysztof Kozlowski
2025-05-20 2:00 ` [v3,1/3] " Hsun Lai
2025-05-19 8:56 ` [PATCH v3 2/3] dt-bindings: arm: rockchip: Add Sakura Pi RK3308B Hsun Lai
2025-05-19 8:56 ` [PATCH v3 3/3] arm64: dts: rockchip: add DTs for " Hsun Lai
2 siblings, 2 replies; 6+ messages in thread
From: Hsun Lai @ 2025-05-19 8:56 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt
Cc: i, heiko, andrew, inindev, quentin.schulz, jonas, sfr,
nicolas.frattaroli, devicetree, linux-arm-kernel, linux-kernel,
krzysztof.kozlowski, linux-rockchip
Add vendor prefix for SakuraPi.org, which produces
development boards like the SakuraPi-RK3308B.
Signed-off-by: Hsun Lai <i@chainsx.cn>
---
(no changes since v1)
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 3e7450c3f..744d01a76 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -1299,6 +1299,8 @@ patternProperties:
"^rve,.*":
description: Recharge Véhicule Électrique (RVE) inc.
"^saef,.*":
+ description: SakuraPi.org
+ "^sakurapi,.*":
description: Saef Technology Limited
"^samsung,.*":
description: Samsung Semiconductor
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v3 1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix
2025-05-19 8:56 ` [PATCH v3 1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix Hsun Lai
@ 2025-05-19 9:31 ` Krzysztof Kozlowski
2025-05-20 2:00 ` [v3,1/3] " Hsun Lai
1 sibling, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-19 9:31 UTC (permalink / raw)
To: Hsun Lai, robh, krzk+dt, conor+dt
Cc: heiko, andrew, inindev, quentin.schulz, jonas, sfr,
nicolas.frattaroli, devicetree, linux-arm-kernel, linux-kernel,
krzysztof.kozlowski, linux-rockchip
On 19/05/2025 10:56, Hsun Lai wrote:
> Add vendor prefix for SakuraPi.org, which produces
> development boards like the SakuraPi-RK3308B.
>
> Signed-off-by: Hsun Lai <i@chainsx.cn>
> ---
>
> (no changes since v1)
You ignored comments twice. Repeating same mistake, even though it was
pointed out, feels like we are wasting our time, so please avoid that.
Go back and respond to comments, then implement them.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [v3,1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix
2025-05-19 8:56 ` [PATCH v3 1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix Hsun Lai
2025-05-19 9:31 ` Krzysztof Kozlowski
@ 2025-05-20 2:00 ` Hsun Lai
1 sibling, 0 replies; 6+ messages in thread
From: Hsun Lai @ 2025-05-20 2:00 UTC (permalink / raw)
To: i
Cc: andrew, conor+dt, devicetree, heiko, inindev, jonas, krzk+dt,
krzysztof.kozlowski, linux-arm-kernel, linux-kernel,
linux-rockchip, quentin.schulz, robh, sfr
On 19/05/2025 9:31, Krzysztof Kozlowski wrote:
> You ignored comments twice. Repeating same mistake, even though it was
> pointed out, feels like we are wasting our time, so please avoid that.
> Go back and respond to comments, then implement them.
> Best regards,
> Krzysztof
Sorry, this is my mistake. I have fixed it and will release a patch in the next version.
Best regards,
Hsun
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v3 2/3] dt-bindings: arm: rockchip: Add Sakura Pi RK3308B
2025-05-19 8:56 [PATCH v3 0/3] Add support for Sakura Pi RK3308B Hsun Lai
2025-05-19 8:56 ` [PATCH v3 1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix Hsun Lai
@ 2025-05-19 8:56 ` Hsun Lai
2025-05-19 8:56 ` [PATCH v3 3/3] arm64: dts: rockchip: add DTs for " Hsun Lai
2 siblings, 0 replies; 6+ messages in thread
From: Hsun Lai @ 2025-05-19 8:56 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt
Cc: i, heiko, andrew, inindev, quentin.schulz, jonas, sfr,
nicolas.frattaroli, devicetree, linux-arm-kernel, linux-kernel,
krzysztof.kozlowski, linux-rockchip, Conor Dooley
This patch adds device tree binding support for
Sakura Pi RK3308B, with compatibility for the
Rockchip RK3308 SoC.
Link: https://docs.sakurapi.org/article/sakurapi-rk3308b/introduce
Signed-off-by: Hsun Lai <i@chainsx.cn>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
---
(no changes since v1)
Documentation/devicetree/bindings/arm/rockchip.yaml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Documentation/devicetree/bindings/arm/rockchip.yaml
index 115c3ca43..c64adc0d0 100644
--- a/Documentation/devicetree/bindings/arm/rockchip.yaml
+++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
@@ -1109,6 +1109,11 @@ properties:
- const: rockchip,rk3588-toybrick-x0
- const: rockchip,rk3588
+ - description: Sakura Pi RK3308B
+ items:
+ - const: sakurapi,rk3308-sakurapi-rk3308b
+ - const: rockchip,rk3308
+
- description: Sinovoip RK3308 Banana Pi P2 Pro
items:
- const: sinovoip,rk3308-bpi-p2pro
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH v3 3/3] arm64: dts: rockchip: add DTs for Sakura Pi RK3308B
2025-05-19 8:56 [PATCH v3 0/3] Add support for Sakura Pi RK3308B Hsun Lai
2025-05-19 8:56 ` [PATCH v3 1/3] dt-bindings: vendor-prefixes: Add SakuraPi prefix Hsun Lai
2025-05-19 8:56 ` [PATCH v3 2/3] dt-bindings: arm: rockchip: Add Sakura Pi RK3308B Hsun Lai
@ 2025-05-19 8:56 ` Hsun Lai
2 siblings, 0 replies; 6+ messages in thread
From: Hsun Lai @ 2025-05-19 8:56 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt
Cc: i, heiko, andrew, inindev, quentin.schulz, jonas, sfr,
nicolas.frattaroli, devicetree, linux-arm-kernel, linux-kernel,
krzysztof.kozlowski, linux-rockchip
The Sakura Pi RK3308B is a SBC based on the Rockchip RK3308 SoC.
Link: https://github.com/Sakura-Pi
Link: https://docs.sakurapi.org/article/sakurapi-rk3308b/introduce
The device contains the following hardware that is tested/working:
- 4 or 8GB eMMC
- SDMMC card slot
- Realtek SDIO WiFi 5/BT
- 256 or 512MB of RAM
- USB 2.0 port
- OTG port
Signed-off-by: Hsun Lai <i@chainsx.cn>
---
Changes in v3:
- Remove empty i2c controller (Heiko Stuebner, v1)
- Remove unused spi nodes (Heiko Stuebner, v1)
- Sort nodes alphabetically (Heiko Stuebner, v1)
- Put status as last property (Heiko Stuebner, v1)
Changes in v2:
- Update the names of the regulators (Heiko Stuebner, v1)
Changes in v1:
- Add support for Sakura Pi RK3308B
- Patch 2: Acked-by: Conor Dooley <conor.dooley@microchip.com>
arch/arm64/boot/dts/rockchip/Makefile | 1 +
.../dts/rockchip/rk3308-sakurapi-rk3308b.dts | 274 ++++++++++++++++++
2 files changed, 275 insertions(+)
create mode 100644 arch/arm64/boot/dts/rockchip/rk3308-sakurapi-rk3308b.dts
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index e63c3f5eb..c9017bdc3 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -12,6 +12,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-evb.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-roc-cc.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-rock-pi-s.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-rock-s0.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-sakurapi-rk3308b.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3318-a95x-z2.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3326-anbernic-rg351m.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3326-anbernic-rg351v.dtb
diff --git a/arch/arm64/boot/dts/rockchip/rk3308-sakurapi-rk3308b.dts b/arch/arm64/boot/dts/rockchip/rk3308-sakurapi-rk3308b.dts
new file mode 100644
index 000000000..b9032d4e7
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3308-sakurapi-rk3308b.dts
@@ -0,0 +1,274 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 Akash Gajjar <akash@openedev.com>
+ * Copyright (c) 2019 Jagan Teki <jagan@openedev.com>
+ * Copyright (C) 2024 TheSnowfield <thesnowfield@sakurapi.org>
+ * Copyright (C) 2025 Hsun Lai <i@chainsx.cn>
+ */
+
+/dts-v1/;
+#include "rk3308.dtsi"
+#include <dt-bindings/leds/common.h>
+
+/ {
+ model = "Sakura Pi RK3308B";
+ compatible = "sakurapi,rk3308-sakurapi-rk3308b", "rockchip,rk3308";
+
+ aliases {
+ mmc0 = &emmc;
+ mmc1 = &sdmmc;
+ mmc2 = &sdio;
+ };
+
+ chosen {
+ stdout-path = "serial2:1500000n8";
+ };
+
+ sdio_pwrseq: sdio-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ pinctrl-0 = <&wifi_enable_h>;
+ pinctrl-names = "default";
+ /*
+ * On the module itself this is one of these (depending
+ * on the actual card populated):
+ * - SDIO_RESET_L_WL_REG_ON
+ * - PDN (power down when low)
+ */
+ reset-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>;
+ };
+
+ vcc5v0_sys: regulator-vcc5v0-sys {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc5v0_sys";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ };
+
+ vdd_core: regulator-vdd-core {
+ compatible = "pwm-regulator";
+ pwms = <&pwm0 0 5000 1>;
+ regulator-name = "vdd_core";
+ regulator-min-microvolt = <827000>;
+ regulator-max-microvolt = <1340000>;
+ regulator-settling-time-up-us = <250>;
+ regulator-always-on;
+ regulator-boot-on;
+ pwm-supply = <&vcc5v0_sys>;
+ };
+
+ vdd_log: regulator-vdd-log {
+ compatible = "regulator-fixed";
+ regulator-name = "vdd_log";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <1050000>;
+ regulator-max-microvolt = <1050000>;
+ vin-supply = <&vcc5v0_sys>;
+ };
+
+ vcc_ddr: regulator-vcc-ddr {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc_ddr";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ vin-supply = <&vcc5v0_sys>;
+ };
+
+ vcc_1v8: regulator-vcc-1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc_1v8";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ vin-supply = <&vcc_io>;
+ };
+
+ vcc_io: regulator-vcc-io {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc_io";
+ regulator-always-on;
+ regulator-boot-on;
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&vcc5v0_sys>;
+ };
+
+ vcc_phy: regulator-vcc-phy-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc_phy";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ vcc5v0_otg: regulator-vcc5v0-otg {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc5v0_otg";
+ regulator-always-on;
+ gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ pinctrl-names = "default";
+ pinctrl-0 = <&otg_vbus_drv>;
+ vin-supply = <&vcc5v0_sys>;
+ };
+
+};
+
+&cpu0 {
+ cpu-supply = <&vdd_core>;
+};
+
+&emmc {
+ bus-width = <8>;
+ cap-mmc-highspeed;
+ non-removable;
+ status = "okay";
+};
+
+&i2c1 {
+ status = "okay";
+};
+
+&sdmmc {
+ cap-mmc-highspeed;
+ cap-sd-highspeed;
+ disable-wp;
+ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_det &sdmmc_bus4>;
+ card-detect-delay = <800>;
+ status = "okay";
+};
+
+&sdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ cap-sd-highspeed;
+ cap-sdio-irq;
+ keep-power-in-suspend;
+ mmc-pwrseq = <&sdio_pwrseq>;
+ non-removable;
+ no-mmc;
+ no-sd;
+ status = "okay";
+
+ brcmf: wifi@1 {
+ compatible = "brcm,bcm43455-fmac", "brcm,bcm4329-fmac";
+ reg = <1>;
+ interrupt-parent = <&gpio0>;
+ interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
+ interrupt-names = "host-wake";
+ pinctrl-names = "default";
+ pinctrl-0 = <&wifi_host_wake>;
+ };
+};
+
+&dmac0 {
+ status = "okay";
+};
+
+&pinctrl {
+ pinctrl-names = "default";
+ pinctrl-0 = <&rtc_32k>;
+
+ usb {
+ otg_vbus_drv: otg-vbus-drv {
+ rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
+ sdio-pwrseq {
+ wifi_enable_h: wifi-enable-h {
+ rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
+ wifi {
+ wifi_host_wake: wifi-host-wake {
+ rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>;
+ };
+ };
+
+ bluetooth {
+ bt_reg_on: bt-reg-on {
+ rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+
+ bt_wake_host: bt-wake-host {
+ rockchip,pins = <4 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+
+ host_wake_bt: host-wake-bt {
+ rockchip,pins = <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+};
+
+&pwm0 {
+ status = "okay";
+ pinctrl-0 = <&pwm0_pin_pull_down>;
+};
+
+&saradc {
+ vref-supply = <&vcc_1v8>;
+ status = "okay";
+};
+
+&pwm3 {
+ status = "okay";
+};
+
+&i2c1 {
+ status = "okay";
+};
+
+&uart2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart2m0_xfer>;
+ status = "okay";
+};
+
+&uart4 {
+ pinctrl-names = "default";
+ uart-has-rtscts;
+ status = "okay";
+
+ bluetooth {
+ compatible = "brcm,bcm4345c5";
+ clocks = <&cru SCLK_RTC32K>;
+ clock-names = "lpo";
+ pinctrl-names = "default";
+ pinctrl-0 = <&host_wake_bt &bt_wake_host &bt_reg_on>;
+ device-wakeup-gpios = <&gpio4 RK_PB4 GPIO_ACTIVE_HIGH>;
+ host-wakeup-gpios = <&gpio4 RK_PB2 GPIO_ACTIVE_HIGH>;
+ shutdown-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
+ max-speed = <1500000>;
+ };
+};
+
+&usb20_otg {
+ dr_mode = "peripheral";
+ status = "okay";
+};
+
+&u2phy {
+ status = "okay";
+};
+
+&u2phy_otg {
+ status = "okay";
+};
+
+&u2phy_host {
+ status = "okay";
+};
+
+&usb_host_ehci {
+ status = "okay";
+};
+
+&usb_host_ohci{
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread