* [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4
@ 2026-02-06 18:37 Fabio Estevam
0 siblings, 0 replies; 4+ messages in thread
From: Fabio Estevam @ 2026-02-06 18:37 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, devicetree, linux-arm-kernel,
linux-rockchip, Fabio Estevam
From: Fabio Estevam <festevam@nabladev.com>
Onion Omega4 board is a board based on the RV1103B SoC that has:
- 256 MB of RAM
- 256 MB of SPI-NAND
- Ethernet
- USB OTG
- Wifi
- SD card
- Camera connector
Add the initial support for this board so that it can fully boot into
Linux with the root file system stored in the SPI NAND.
Signed-off-by: Fabio Estevam <festevam@nabladev.com>
---
arch/arm/boot/dts/rockchip/Makefile | 1 +
arch/arm/boot/dts/rockchip/rv1103b-omega4.dts | 92 +++++++++++++++++++
2 files changed, 93 insertions(+)
create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
diff --git a/arch/arm/boot/dts/rockchip/Makefile b/arch/arm/boot/dts/rockchip/Makefile
index 716f5540e438..d8cd5df138cc 100644
--- a/arch/arm/boot/dts/rockchip/Makefile
+++ b/arch/arm/boot/dts/rockchip/Makefile
@@ -1,5 +1,6 @@
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_ARCH_ROCKCHIP) += \
+ rv1103b-omega4.dtb \
rv1108-elgin-r1.dtb \
rv1108-evb.dtb \
rv1109-relfor-saib.dtb \
diff --git a/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
new file mode 100644
index 000000000000..512b063bceb1
--- /dev/null
+++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
@@ -0,0 +1,92 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
+ * Copyright (c) 2025 plan44.ch/luz
+ * Copyright (c) 2025 Onion Corporation
+ */
+
+/dts-v1/;
+
+#include "rv1103b.dtsi"
+
+/ {
+ model = "Onion RV1103 Omega4 Board";
+ compatible = "onion,rv1103b-omega4", "rockchip,rv1103b";
+
+ chosen {
+ stdout-path = &uart0;
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x10000000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-0 {
+ gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
+ label = "sys";
+ default-state = "on";
+ };
+ };
+};
+
+&fspi0 {
+ bootph-all;
+ status = "okay";
+
+ flash@0 {
+ compatible = "spi-nand";
+ reg = <0>;
+ spi-max-frequency = <75000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <1>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "env";
+ reg = <0x00000000 0x00040000>;
+ };
+
+ partition@40000 {
+ label = "idblock";
+ reg = <0x00040000 0x00100000>;
+ read-only;
+ };
+
+ partition@140000 {
+ label = "uboot";
+ reg = <0x00140000 0x00100000>;
+ read-only;
+ };
+
+ partition@240000 {
+ label = "boot";
+ reg = <0x00240000 0x00800000>;
+ };
+
+ partition@a40000 {
+ label = "ubi";
+ reg = <0x00a40000 0x0f5c0000>;
+ };
+ };
+ };
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0m0_xfer_pins>;
+ bootph-all;
+ status = "okay";
+};
+
+&wdt {
+ bootph-all;
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4
@ 2026-02-06 18:42 Fabio Estevam
0 siblings, 0 replies; 4+ messages in thread
From: Fabio Estevam @ 2026-02-06 18:42 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, devicetree, linux-arm-kernel,
linux-rockchip, Fabio Estevam
From: Fabio Estevam <festevam@nabladev.com>
Onion Omega4 board is a board based on the RV1103B SoC that has:
- 256 MB of RAM
- 256 MB of SPI-NAND
- Ethernet
- USB OTG
- Wifi
- SD card
- Camera connector
Add the initial support for this board so that it can fully boot into
Linux with the root file system stored in the SPI NAND.
Signed-off-by: Fabio Estevam <festevam@nabladev.com>
---
arch/arm/boot/dts/rockchip/Makefile | 1 +
arch/arm/boot/dts/rockchip/rv1103b-omega4.dts | 92 +++++++++++++++++++
2 files changed, 93 insertions(+)
create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
diff --git a/arch/arm/boot/dts/rockchip/Makefile b/arch/arm/boot/dts/rockchip/Makefile
index 716f5540e438..d8cd5df138cc 100644
--- a/arch/arm/boot/dts/rockchip/Makefile
+++ b/arch/arm/boot/dts/rockchip/Makefile
@@ -1,5 +1,6 @@
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_ARCH_ROCKCHIP) += \
+ rv1103b-omega4.dtb \
rv1108-elgin-r1.dtb \
rv1108-evb.dtb \
rv1109-relfor-saib.dtb \
diff --git a/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
new file mode 100644
index 000000000000..512b063bceb1
--- /dev/null
+++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
@@ -0,0 +1,92 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
+ * Copyright (c) 2025 plan44.ch/luz
+ * Copyright (c) 2025 Onion Corporation
+ */
+
+/dts-v1/;
+
+#include "rv1103b.dtsi"
+
+/ {
+ model = "Onion RV1103 Omega4 Board";
+ compatible = "onion,rv1103b-omega4", "rockchip,rv1103b";
+
+ chosen {
+ stdout-path = &uart0;
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x10000000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-0 {
+ gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
+ label = "sys";
+ default-state = "on";
+ };
+ };
+};
+
+&fspi0 {
+ bootph-all;
+ status = "okay";
+
+ flash@0 {
+ compatible = "spi-nand";
+ reg = <0>;
+ spi-max-frequency = <75000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <1>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "env";
+ reg = <0x00000000 0x00040000>;
+ };
+
+ partition@40000 {
+ label = "idblock";
+ reg = <0x00040000 0x00100000>;
+ read-only;
+ };
+
+ partition@140000 {
+ label = "uboot";
+ reg = <0x00140000 0x00100000>;
+ read-only;
+ };
+
+ partition@240000 {
+ label = "boot";
+ reg = <0x00240000 0x00800000>;
+ };
+
+ partition@a40000 {
+ label = "ubi";
+ reg = <0x00a40000 0x0f5c0000>;
+ };
+ };
+ };
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0m0_xfer_pins>;
+ bootph-all;
+ status = "okay";
+};
+
+&wdt {
+ bootph-all;
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH 00/11] ARM: rockchip: Add initial RV1103B and Omega4 board support
@ 2026-02-06 18:12 Fabio Estevam
2026-02-06 18:13 ` [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4 Fabio Estevam
0 siblings, 1 reply; 4+ messages in thread
From: Fabio Estevam @ 2026-02-06 18:12 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, devicetree, linux-arm-kernel,
linux-rockchip, Fabio Estevam
From: Fabio Estevam <festevam@nabladev.com>
This series adds initial support for the Rockchip RV1103B SoC and
the Omega4 board.
The goal of this series is to provide the minimal device tree and
platform support required to boot the Omega4 board into Linux
userspace with the root filesystem located on SPI NAND.
The series includes:
- Base RV1103B SoC device tree description
- Omega4 board device tree
- Required pinctrl and clock definitions
- Basic peripheral enablement required for boot
With this series applied, the Omega4 board is able to:
- Initialize DRAM
- Boot the kernel
- Access SPI NAND
- Mount the root filesystem from SPI NAND
- Reach userspace successfully
This submission intentionally focuses on minimal bring-up support.
Additional peripheral enablement and feature support will be
submitted separately.
Tested on Omega4 hardware based on the RV1103B SoC.
Boot verified with root filesystem stored on SPI NAND.
Fabio Estevam (11):
dt-bindings: clock: rockchip: Add RV1103B clock and reset unit
dt-bindings: clk: rockchip: Add RV1103B clock header
clk: rockchip: Add clock controller for the RV1103B
dt-bindings: pinctrl: Add RV1103B pinctrl support
pinctrl: rockchip: Add RV1103B pinctrl support
dt-bindings: mmc: rockchip-dw-mshc: Add compatible string for R1103B
dt-bindings: serial: snps-dw-apb-uart: Add support for RV1103B
dt-bindings: soc: rockchip: Add RV1103B IOC and GRF entries
ARM: dts: rockchip: Add support for RV1103B
dt-bindings: arm: rockchip: Add Onion RV1103B Omega4
ARM: dts: rockchip: Add Onion RV1103B Omega4
.../devicetree/bindings/arm/rockchip.yaml | 5 +
.../bindings/clock/rockchip,rv1103b-cru.yaml | 63 ++
.../bindings/mmc/rockchip-dw-mshc.yaml | 1 +
.../bindings/pinctrl/rockchip,pinctrl.yaml | 1 +
.../bindings/serial/snps-dw-apb-uart.yaml | 1 +
.../devicetree/bindings/soc/rockchip/grf.yaml | 2 +
arch/arm/boot/dts/rockchip/Makefile | 1 +
arch/arm/boot/dts/rockchip/rv1103b-omega4.dts | 92 ++
.../boot/dts/rockchip/rv1103b-pinctrl.dtsi | 831 ++++++++++++++++++
arch/arm/boot/dts/rockchip/rv1103b.dtsi | 266 ++++++
drivers/clk/rockchip/Kconfig | 7 +
drivers/clk/rockchip/Makefile | 1 +
drivers/clk/rockchip/clk-rv1103b.c | 670 ++++++++++++++
drivers/clk/rockchip/clk.h | 49 ++
drivers/pinctrl/pinctrl-rockchip.c | 313 ++++++-
drivers/pinctrl/pinctrl-rockchip.h | 1 +
.../dt-bindings/clock/rockchip,rv1103b-cru.h | 488 ++++++++++
17 files changed, 2791 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/clock/rockchip,rv1103b-cru.yaml
create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-pinctrl.dtsi
create mode 100644 arch/arm/boot/dts/rockchip/rv1103b.dtsi
create mode 100644 drivers/clk/rockchip/clk-rv1103b.c
create mode 100644 include/dt-bindings/clock/rockchip,rv1103b-cru.h
--
2.34.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4
2026-02-06 18:12 [PATCH 00/11] ARM: rockchip: Add initial RV1103B and Omega4 board support Fabio Estevam
@ 2026-02-06 18:13 ` Fabio Estevam
2026-02-06 20:50 ` Jonas Karlman
0 siblings, 1 reply; 4+ messages in thread
From: Fabio Estevam @ 2026-02-06 18:13 UTC (permalink / raw)
To: heiko
Cc: robh, krzk+dt, conor+dt, devicetree, linux-arm-kernel,
linux-rockchip, Fabio Estevam
From: Fabio Estevam <festevam@nabladev.com>
Onion Omega4 board is a board based on the RV1103B SoC that has:
- 256 MB of RAM
- 256 MB of SPI-NAND
- Ethernet
- USB OTG
- Wifi
- SD card
- Camera connector
Add the initial support for this board so that it can fully boot into
Linux with the root file system stored in the SPI NAND.
Signed-off-by: Fabio Estevam <festevam@nabladev.com>
---
arch/arm/boot/dts/rockchip/Makefile | 1 +
arch/arm/boot/dts/rockchip/rv1103b-omega4.dts | 92 +++++++++++++++++++
2 files changed, 93 insertions(+)
create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
diff --git a/arch/arm/boot/dts/rockchip/Makefile b/arch/arm/boot/dts/rockchip/Makefile
index 716f5540e438..d8cd5df138cc 100644
--- a/arch/arm/boot/dts/rockchip/Makefile
+++ b/arch/arm/boot/dts/rockchip/Makefile
@@ -1,5 +1,6 @@
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_ARCH_ROCKCHIP) += \
+ rv1103b-omega4.dtb \
rv1108-elgin-r1.dtb \
rv1108-evb.dtb \
rv1109-relfor-saib.dtb \
diff --git a/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
new file mode 100644
index 000000000000..512b063bceb1
--- /dev/null
+++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
@@ -0,0 +1,92 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
+ * Copyright (c) 2025 plan44.ch/luz
+ * Copyright (c) 2025 Onion Corporation
+ */
+
+/dts-v1/;
+
+#include "rv1103b.dtsi"
+
+/ {
+ model = "Onion RV1103 Omega4 Board";
+ compatible = "onion,rv1103b-omega4", "rockchip,rv1103b";
+
+ chosen {
+ stdout-path = &uart0;
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x10000000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-0 {
+ gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
+ label = "sys";
+ default-state = "on";
+ };
+ };
+};
+
+&fspi0 {
+ bootph-all;
+ status = "okay";
+
+ flash@0 {
+ compatible = "spi-nand";
+ reg = <0>;
+ spi-max-frequency = <75000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <1>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "env";
+ reg = <0x00000000 0x00040000>;
+ };
+
+ partition@40000 {
+ label = "idblock";
+ reg = <0x00040000 0x00100000>;
+ read-only;
+ };
+
+ partition@140000 {
+ label = "uboot";
+ reg = <0x00140000 0x00100000>;
+ read-only;
+ };
+
+ partition@240000 {
+ label = "boot";
+ reg = <0x00240000 0x00800000>;
+ };
+
+ partition@a40000 {
+ label = "ubi";
+ reg = <0x00a40000 0x0f5c0000>;
+ };
+ };
+ };
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0m0_xfer_pins>;
+ bootph-all;
+ status = "okay";
+};
+
+&wdt {
+ bootph-all;
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4
2026-02-06 18:13 ` [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4 Fabio Estevam
@ 2026-02-06 20:50 ` Jonas Karlman
0 siblings, 0 replies; 4+ messages in thread
From: Jonas Karlman @ 2026-02-06 20:50 UTC (permalink / raw)
To: Fabio Estevam
Cc: heiko, robh, krzk+dt, conor+dt, devicetree, linux-arm-kernel,
linux-rockchip, Fabio Estevam
Hi Fabio,
On 2/6/2026 7:13 PM, Fabio Estevam wrote:
> From: Fabio Estevam <festevam@nabladev.com>
>
> Onion Omega4 board is a board based on the RV1103B SoC that has:
>
> - 256 MB of RAM
> - 256 MB of SPI-NAND
> - Ethernet
> - USB OTG
> - Wifi
> - SD card
> - Camera connector
>
> Add the initial support for this board so that it can fully boot into
> Linux with the root file system stored in the SPI NAND.
>
> Signed-off-by: Fabio Estevam <festevam@nabladev.com>
> ---
> arch/arm/boot/dts/rockchip/Makefile | 1 +
> arch/arm/boot/dts/rockchip/rv1103b-omega4.dts | 92 +++++++++++++++++++
> 2 files changed, 93 insertions(+)
> create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
>
> diff --git a/arch/arm/boot/dts/rockchip/Makefile b/arch/arm/boot/dts/rockchip/Makefile
> index 716f5540e438..d8cd5df138cc 100644
> --- a/arch/arm/boot/dts/rockchip/Makefile
> +++ b/arch/arm/boot/dts/rockchip/Makefile
> @@ -1,5 +1,6 @@
> # SPDX-License-Identifier: GPL-2.0
> dtb-$(CONFIG_ARCH_ROCKCHIP) += \
> + rv1103b-omega4.dtb \
> rv1108-elgin-r1.dtb \
> rv1108-evb.dtb \
> rv1109-relfor-saib.dtb \
> diff --git a/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
> new file mode 100644
> index 000000000000..512b063bceb1
> --- /dev/null
> +++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
> @@ -0,0 +1,92 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
> + * Copyright (c) 2025 plan44.ch/luz
> + * Copyright (c) 2025 Onion Corporation
> + */
> +
> +/dts-v1/;
> +
> +#include "rv1103b.dtsi"
> +
> +/ {
> + model = "Onion RV1103 Omega4 Board";
> + compatible = "onion,rv1103b-omega4", "rockchip,rv1103b";
> +
> + chosen {
> + stdout-path = &uart0;
Please add a serial0 alias and use the following form to match most
other Rockchip boards.
stdout-path = "serial0:115200n8";
> + };
> +
> + memory@0 {
> + device_type = "memory";
> + reg = <0x0 0x10000000>;
> + };
Memory nodes is typically added by firmware on Rockchip platform.
Size of the DRAM is typically encoded in OS_REG2 by the DRAM init
code and can/should be picked up from there for next boot stages.
> + leds {
> + compatible = "gpio-leds";
> +
> + led-0 {
> + gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
Please add pinctrl props for this pin. Also please add function and
color props.
> + label = "sys";
> + default-state = "on";
> + };
> + };
> +};
> +
> +&fspi0 {
> + bootph-all;
This is not really needed in all boot phases, the initial phase only
initialize DRAM and then return to BootROM so does not need to know
about the spi flash.
Also adding it here is not enough, please instead add bootph props to
the flash@0 or possible partitions node.
For optimal boot performance and size consideration you should drop
this and add following bootph props.
> + status = "okay";
> +
> + flash@0 {
> + compatible = "spi-nand";
> + reg = <0>;
bootph-pre-ram;
bootph-some-ram;
Adding these here ensure that this and the parent node is included in
the second stage and the pre-relocation boot-phase, the only phases they
are needed.
Regards,
Jonas
> + spi-max-frequency = <75000000>;
> + spi-rx-bus-width = <4>;
> + spi-tx-bus-width = <1>;
> +
> + partitions {
> + compatible = "fixed-partitions";
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + partition@0 {
> + label = "env";
> + reg = <0x00000000 0x00040000>;
> + };
> +
> + partition@40000 {
> + label = "idblock";
> + reg = <0x00040000 0x00100000>;
> + read-only;
> + };
> +
> + partition@140000 {
> + label = "uboot";
> + reg = <0x00140000 0x00100000>;
> + read-only;
> + };
> +
> + partition@240000 {
> + label = "boot";
> + reg = <0x00240000 0x00800000>;
> + };
> +
> + partition@a40000 {
> + label = "ubi";
> + reg = <0x00a40000 0x0f5c0000>;
> + };
> + };
> + };
> +};
> +
> +&uart0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart0m0_xfer_pins>;
> + bootph-all;
> + status = "okay";
> +};
> +
> +&wdt {
> + bootph-all;
> + status = "okay";
> +};
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-02-06 20:50 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-06 18:37 [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4 Fabio Estevam
-- strict thread matches above, loose matches on Subject: below --
2026-02-06 18:42 Fabio Estevam
2026-02-06 18:12 [PATCH 00/11] ARM: rockchip: Add initial RV1103B and Omega4 board support Fabio Estevam
2026-02-06 18:13 ` [PATCH 11/11] ARM: dts: rockchip: Add Onion RV1103B Omega4 Fabio Estevam
2026-02-06 20:50 ` Jonas Karlman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox