[PATCH v2 4/4] ARM: dts: rockchip: Add Onion RV1103B Omega4
Jonas Karlman
jonas at kwiboo.se
Sun Feb 8 14:14:57 PST 2026
Hi Fabio,
On 2/7/2026 2:18 PM, Fabio Estevam wrote:
> From: Fabio Estevam <festevam at 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 at nabladev.com>
> ---
> Changes since v1:
> - Removed memory node.
> - Added serial0 alias and used stdout-path = "serial0:115200n8";
> - Added color, function and pinctrl entries to the LED node.
> - Used bootph-pre-ram and bootph-some-ram.
>
> arch/arm/boot/dts/rockchip/Makefile | 1 +
> arch/arm/boot/dts/rockchip/rv1103b-omega4.dts | 106 ++++++++++++++++++
> 2 files changed, 107 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..bcfc9b321dd6
> --- /dev/null
> +++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dts
> @@ -0,0 +1,106 @@
> +// 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 <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/leds/common.h>
> +#include "rv1103b.dtsi"
> +
> +/ {
> + model = "Onion RV1103 Omega4 Board";
> + compatible = "onion,rv1103b-omega4", "rockchip,rv1103b";
Am I correct in that this is the Omega-4 Evaluation Board (EVB) [1] and
that the Omega-4 is a System-on-Module?
The model should probably not mention the RV1103, as this is a RV1103B
board. I also think this probably should be split up into a SOM dtsi and
a board dts similar to how other Rockchip SOM boards are handled, e.g.
model = "Onion Omega-4 Evaluation Board";
compatible = "onion,omega4-evb", "onion,omega4", "rockchip,rv1103b";
and split into rv1103b-omega4.dtsi and rv1103b-omega4-evb.dts or similar?
[1] https://documentation.onioniot.com/omega4/getting-started/
Regards,
Jonas
> +
> + aliases {
> + serial0 = &uart0;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> +
> + led-0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&led_pin>;
> + gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
> + function = LED_FUNCTION_STATUS;
> + color = <LED_COLOR_ID_BLUE>;
> + label = "sys";
> + default-state = "on";
> + };
> + };
> +};
> +
> +&fspi0 {
> + status = "okay";
> +
> + flash at 0 {
> + compatible = "spi-nand";
> + reg = <0>;
> + bootph-pre-ram;
> + bootph-some-ram;
> + 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 at 0 {
> + label = "env";
> + reg = <0x00000000 0x00040000>;
> + };
> +
> + partition at 40000 {
> + label = "idblock";
> + reg = <0x00040000 0x00100000>;
> + read-only;
> + };
> +
> + partition at 140000 {
> + label = "uboot";
> + reg = <0x00140000 0x00100000>;
> + read-only;
> + };
> +
> + partition at 240000 {
> + label = "boot";
> + reg = <0x00240000 0x00800000>;
> + };
> +
> + partition at a40000 {
> + label = "ubi";
> + reg = <0x00a40000 0x0f5c0000>;
> + };
> + };
> + };
> +};
> +
> +&uart0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart0m0_xfer_pins>;
> + bootph-all;
> + status = "okay";
> +};
> +
> +&wdt {
> + bootph-all;
> + status = "okay";
> +};
> +
> +&pinctrl {
> + leds {
> + led_pin: led-pin {
> + rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
> + };
> + };
> +};
More information about the linux-arm-kernel
mailing list