From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dy1-f175.google.com (mail-dy1-f175.google.com [74.125.82.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7EB9A38C432 for ; Fri, 13 Mar 2026 13:11:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.175 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773407491; cv=none; b=llWravpxLij4CIjYXL7/v+t+glim8Azld+SjtUTpruFwNDAsWtjea0gkjc7D6Yn/BxA27cYQhyn6SkelVyh7J+9wANel3Dc0cqCxaffrlvjY99GioxIivOCvQBDFNdvWoRjsYzBI0Nvl2z8eBfahXoIxzBPN1lGvyi8ZJ1ZLIgo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773407491; c=relaxed/simple; bh=oUZtqjaZ6hsoxQP3lQ/P9bgrAyclLtkqKy+q9rKkHK0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=hWr58dR6DHks2jcLd32N4KGUb9rO3ijsu7wxZ0eebvshMkmtOsclgbbriX9ncgbRQdqxblJj8BFBJdr6iibGPXxbYViW6aZkD4Tbhmuc99mD6AH89uZvj7HMmSh8NNqYyFzIEOxicE0o3Ng3P0+xP8pJrk8Da3o6FJ2NnpmnJJU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=am/j2K+6; arc=none smtp.client-ip=74.125.82.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="am/j2K+6" Received: by mail-dy1-f175.google.com with SMTP id 5a478bee46e88-2be9c886a0fso2785768eec.0 for ; Fri, 13 Mar 2026 06:11:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773407490; x=1774012290; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=96wIKyTh0AzqeditJlQ3kQuExY/YGJnegboCLTZQauE=; b=am/j2K+6R3mUGSFrjaHdPmB1Frm7eW3PJ0QJX1TI6ZVZTVh5zDOLlpdCPtJ4utcgEA RFUw5qDACVwTG+HQ+TsOktcjc3uOTxZzd5MUDHToEmfSwDWYMKBlcZGDXjEyxqZXr7RV Faz+aq/nzdrSdM+AfXdIXyLUrUxRIYIjKcf+4231rPeAw+fH2pP6y7OzCgmO2uKV4eYP uH6gL0zHomQY/KI+BoqUeG+Rc8TQHQCWFA/V64QQLNTkPO7zPd7D0ca7worxFZkW1/Qq PV7Wylr6FNIxGlgrt8i/4sDkvNrGyZVVgw4O1EelzivCST9QWCorAt9sEMaaTxdtgWKE QHrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773407490; x=1774012290; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=96wIKyTh0AzqeditJlQ3kQuExY/YGJnegboCLTZQauE=; b=V0uvc/0Pg4/scRMyOtZl17AMMbWcaP87wSp0WPFAGEJaRPTN5hEKUIwOcUq9q2l15D j2Q3Puj3HQCkbTVpVTNo/ajXGfDje0Oe2249ce2EMuKiQ81+6FRGPpfvXhWjt/xS0ULe /k6XQD/8x586vAHE3UC6pYeOpEKCDtQ6M+fS+KNKv2nReCxaumldvcU8jQHx8APmRD2y cO9V4z713Mpp6xn2+N6rvD2YVyxd0LV7HNB8WA+2/9iajn1elr46c9gNsTiaWdJMl6k6 UbnA2kLZhWseHX313K1LyDs3JozvBdIqCpCtTrbbTmbjkL/CCN/eG/XGezji/QNFS1nv QObQ== X-Forwarded-Encrypted: i=1; AJvYcCXQkrV4TEjz1mPX7D1q1E1mQY8O66bN4ZSskdWEq8moUZvewBDNCjIc14Se5Ms9Fzh1FKJopr3GYUL9mbU=@vger.kernel.org X-Gm-Message-State: AOJu0YxLe/nLdaW0PRRZ23mVSp4g/z7qz4b37xP8rtaJCLJxQYTtUdma u5bsObPqPJjS39d4XYbPjfpLOqgZ+SZN25ZfEPAJTf1C9X5ubFIfF3j3b+TL1g== X-Gm-Gg: ATEYQzy9UFDaruENKpzvTQHnKtKZKX7ZkHEl70/cvG8pVWgJhvlAqOun4fGchYdq2/9 R83YvJ/4g0Z47qIp/2WMQ0rYBIky1ihs65+Q7oWRXMfwJHsewCvzoZ14jEcA1bVZpk+gi/p02T8 /pWlvL2oUTQC4sc0CIa5B5LCM0/LfuWsUL5tHBHGDSGARr6jqeP6Tf1U0Wo4scBMG6pjfXoRDhN n9V4iBszxWgjMRy035xtpCCCQr1KXBRB0WWNoFLYgjeWyiLHlnXymwx6cXwpEzYDqzMaIy4Zy5p aw5V693cQxnLJ+X64exkVPGOlR/LZn5Z6qfG7F2jDM5PsISIcgIrKmpEVHmvorEWMXDwzORUAii wUy9hidelXXSZIxUesvfDi9RO5aGBuVmMnFw+JpHJDqREUXSJC3sBBMQMxluOWK/9D2DCFSdBod AuXJoZ4o2+q3YQssYDBXjTDlZROPLivqLhteJQSS01Yck/hWgiKZitk3KyNfuM+CA3NZ/SzJ/VK YRh X-Received: by 2002:a05:7301:1688:b0:2be:ca4:e13d with SMTP id 5a478bee46e88-2bea55f5207mr1416328eec.30.1773407489117; Fri, 13 Mar 2026 06:11:29 -0700 (PDT) Received: from fabio-Precision-3551.. ([2804:1b3:a803:148f:b6b5:4:db6e:9a2c]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2beab5702e5sm2602315eec.29.2026.03.13.06.11.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2026 06:11:27 -0700 (PDT) From: Fabio Estevam To: heiko@sntech.de Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, shawn.lin@rock-chips.com, Fabio Estevam Subject: [PATCH v7 4/4] ARM: dts: rockchip: Add Onion Omega4 Evaluation Board Date: Fri, 13 Mar 2026 10:10:58 -0300 Message-ID: <20260313131058.708361-4-festevam@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260313131058.708361-1-festevam@gmail.com> References: <20260313131058.708361-1-festevam@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Fabio Estevam The Onion Omega4 Evaluation Board is based on the RV1103B SoC and has: - 256 MB of RAM - 256 MB of SPI-NAND - Ethernet - USB OTG - Wifi - SD card - Camera connector The details can be found at: https://documentation.onioniot.com/omega4/getting-started/ 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 --- Changes since v6: - Added SD card and SDIO support. arch/arm/boot/dts/rockchip/Makefile | 1 + .../boot/dts/rockchip/rv1103b-omega4-evb.dts | 63 ++++++++ .../arm/boot/dts/rockchip/rv1103b-omega4.dtsi | 151 ++++++++++++++++++ 3 files changed, 215 insertions(+) create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4-evb.dts create mode 100644 arch/arm/boot/dts/rockchip/rv1103b-omega4.dtsi diff --git a/arch/arm/boot/dts/rockchip/Makefile b/arch/arm/boot/dts/rockchip/Makefile index 716f5540e438..d0154fd7ff24 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-evb.dtb \ rv1108-elgin-r1.dtb \ rv1108-evb.dtb \ rv1109-relfor-saib.dtb \ diff --git a/arch/arm/boot/dts/rockchip/rv1103b-omega4-evb.dts b/arch/arm/boot/dts/rockchip/rv1103b-omega4-evb.dts new file mode 100644 index 000000000000..d63aa3515403 --- /dev/null +++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4-evb.dts @@ -0,0 +1,63 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2022 Rockchip Electronics Co., Ltd. + * Copyright (c) 2025 plan44.ch/luz + * Copyright (c) 2026 Onion Corporation + */ + +/dts-v1/; + +#include +#include +#include "rv1103b-omega4.dtsi" + +/ { + model = "Onion Omega4 Evaluation Board"; + compatible = "onion,omega4-evb", "onion,omega4", "rockchip,rv1103b"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + leds { + compatible = "gpio-leds"; + + led-0 { + pinctrl-names = "default"; + pinctrl-0 = <&led>; + gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>; + function = LED_FUNCTION_STATUS; + color = ; + label = "sys"; + default-state = "on"; + }; + }; +}; + +&fspi0 { + status = "okay"; +}; + +&sdmmc0 { + status = "okay"; +}; + +&sdmmc1 { + status = "okay"; +}; + +&uart0 { + status = "okay"; +}; + +&pinctrl { + leds { + led: led { + rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; diff --git a/arch/arm/boot/dts/rockchip/rv1103b-omega4.dtsi b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dtsi new file mode 100644 index 000000000000..eda0189af7a8 --- /dev/null +++ b/arch/arm/boot/dts/rockchip/rv1103b-omega4.dtsi @@ -0,0 +1,151 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2022 Rockchip Electronics Co., Ltd. + * Copyright (c) 2025 plan44.ch/luz + * Copyright (c) 2026 Onion Corporation + */ + +/dts-v1/; + +#include "rv1103b.dtsi" + +/ { + sdio_pwrseq: sdio-pwrseq { + compatible = "mmc-pwrseq-simple"; + pinctrl-names = "default"; + pinctrl-0 = <&wifi_enable_h>; + post-power-on-delay-ms = <300>; + reset-gpios = <&gpio2 RK_PB2 GPIO_ACTIVE_LOW>; + }; + + vcc3v3_sd: vcc3v3-sd { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc_pwren>; + gpio = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; + regulator-name = "vcc3v3_sd"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + vccio_sd: vccio-sd { + compatible = "regulator-gpio"; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc_volt>; + regulator-name = "vccio_sd"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; + states = <3300000 1 1800000 0>; + }; +}; + +&uart0 { + bootph-all; + pinctrl-names = "default"; + pinctrl-0 = <&uart0m0_xfer>; +}; + +&fspi0 { + spi_nand: flash@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@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>; + }; + }; + }; +}; + +&sdmmc0 { + bus-width = <4>; + cap-mmc-highspeed; + cap-sd-highspeed; + disable-wp; + no-sdio; + no-mmc; + sd-uhs-sdr104; + vmmc-supply = <&vcc3v3_sd>; + vqmmc-supply = <&vccio_sd>; + status = "disabled"; +}; + +&sdmmc1 { + bus-width = <4>; + cap-sd-highspeed; + cap-sdio-irq; + keep-power-in-suspend; + mmc-pwrseq = <&sdio_pwrseq>; + no-sd; + no-mmc; + non-removable; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc1_cmd &sdmmc1_clk &sdmmc1_bus4>; + status = "disabled"; +}; + +&wdt { + status = "okay"; +}; + +&pinctrl { + sdio-pwrseq { + /omit-if-no-ref/ + wifi_enable_h: wifi-enable-h { + rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + sdmmc { + /omit-if-no-ref/ + sdmmc_pwren: sdmmc-pwren { + rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + /omit-if-no-ref/ + sdmmc_volt: sdmmc-volt { + rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + wireless-wlan { + /omit-if-no-ref/ + wifi_host_wake_irq: wifi-host-wake-irq { + rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; -- 2.43.0