[PATCH v5 0/3] [PATCH v5 0/3] Add device tree support for Luckfox Omni3576 and Core3576

John Clark inindev at gmail.com
Thu May 15 17:27:10 PDT 2025


Subject: [PATCH v5 0/3] Add device tree support for Luckfox Omni3576 and Core3576

This series adds device tree support for the Luckfox Omni3576 Carrier
Board with the Core3576 Module, powered by the Rockchip RK3576 SoC
(four Cortex-A72 cores, four Cortex-A53 cores, Mali-G52 MC3 GPU). It
enables essential functionality for booting Linux and basic connectivity,
with plans for future support of peripherals like WiFi, MIPI-DSI, HDMI,
and Ethernet.

Tested features (on Linux 6.15-rc4):
 - UART: Serial console operational
 - SD card: Mounts and reads/writes successfully
 - PCIe: NVMe SSD detected, mounted, and fully functional
 - USB 2.0: Host ports operational
 - RTC: Timekeeping and wake-up tested
 - LED: Heartbeat trigger functional
 - eMMC: Enabled in device tree, not populated on tested hardware

The series includes three patches:
 1. dt-bindings: vendor-prefixes: Add Luckfox vendor prefix
 2. dt-bindings: arm: rockchip: Add Luckfox Omni3576 and Core3576 bindings
 3. arm64: dts: rockchip: Add Luckfox Omni3576 board support

The device tree is covered by the existing ROCKCHIP ARCHITECTURE entry in
MAINTAINERS. I am aware of ongoing RK3576 upstreaming efforts (e.g., by
Collabora) and welcome feedback or collaboration to align with mainline
driver development.

Changes in v5:
 - Patch 1: Moved luckfox vendor prefix to correct alphabetical position
   between lsi and lunzn (Quentin Schulz, v4).
   Acked-by: Conor Dooley <conor.dooley at microchip.com>
   Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
 - Patch 2: Unchanged from v4.
   Reviewed-by: Quentin Schulz <quentin.schulz at cherry.de>
   Acked-by: Rob Herring (Arm) <robh at kernel.org>
 - Patch 3:
   - Updated copyright to include John Clark (Quentin Schulz, v4).
   - Reordered top-level nodes alphabetically per DTS coding style
     (Quentin Schulz, v4).
   - Reordered CPU node overrides to match alphabetical order (cpu_bX
     before cpu_lX) (Quentin Schulz, v4).
   - Moved mmc0 alias to rk3576-luckfox-core3576.dtsi for module-level
     eMMC; kept mmc1 in rk3576-luckfox-omni3576.dts for board-specific
     SD (Quentin Schulz, v4).
   - Added regulator-state-mem to top-level regulator-fixed nodes with
     blank lines, omitting deprecated regulator-suspend-microvolt; PMIC
     regulators retain regulator-suspend-microvolt to preserve Luckfox
     SDK behavior, with a future patch planned after RK806 driver
     validation (Quentin Schulz, v4).
   - Removed redundant max-frequency from &sdmmc, as it matches
     rk3576.dtsi (Quentin Schulz, v4).
   - Added vmmc-supply and vqmmc-supply to &sdhci to support eMMC (Jonas
     Karlman, v2).
   - Confirmed blank line style compliance across DTSI and DTS (Jonas
     Karlman, v2).

Changes in v4:
 - Patch 1: Unchanged, Acked-by: Conor Dooley.
 - Patch 2: Fixed binding for Omni3576 to use correct enum syntax (enum:
   [luckfox,omni3576]), added luckfox,core3576 to compatible string
   (Heiko Stuebner, v3).
 - Patch 3: Updated compatible string in rk3576-luckfox-omni3576.dts to
   match revised binding.

Changes in v3:
 - Split device tree into rk3576-luckfox-core3576.dtsi and
   rk3576-luckfox-omni3576.dts for modularity (Jonas Karlman, v2).
 - Patch 3:
   - Added pinctrl for green LED GPIO (Jonas Karlman, v2).
   - Reordered regulator node properties for consistency (Jonas
     Karlman, v2).
   - Used gpios instead of deprecated gpio in regulators (Jonas
     Karlman, v2).
   - Removed vendor-specific pmic-power-off pinctrl and pwrkey from
     RK806 PMIC (Jonas Karlman, v2).
   - Removed no-mmc from &sdmmc to enable MMC support (Jonas Karlman, v2).
   - Removed Ethernet nodes (gmac0/gmac1) due to unreliable PHY driver
     (Andrew Lunn, v2).
   - Addressed DTB warnings within scope (Rob Herring, v2).
   - Added RNG node per Nicolas Frattaroli’s patch (v3).

Changes in v2:
 - Enabled HDMI node, untested due to driver issues (Heiko Stuebner,
   Nicolas Frattaroli, v1).
 - Enabled Ethernet 1 node, removed in v3 (Heiko Stuebner, v1).
 - Clarified eMMC enabled but unpopulated (Heiko Stuebner, v1).
 - Patch 1: Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
 - Patch 2: Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>

Signed-off-by: John Clark <inindev at gmail.com>
---
John Clark (3):
 dt-bindings: vendor-prefixes: Add luckfox prefix
 dt-bindings: arm: rockchip: Add Luckfox Omni3576 and Core3576 bindings
 arm64: dts: rockchip: Add Luckfox Omni3576 Board support

 .../devicetree/bindings/arm/rockchip.yaml     |   7 +
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 arch/arm64/boot/dts/rockchip/Makefile         |   1 +
 .../dts/rockchip/rk3576-luckfox-core3576.dtsi | 748 ++++++++++++++++++
 .../dts/rockchip/rk3576-luckfox-omni3576.dts  |  50 ++
 5 files changed, 808 insertions(+)
 create mode 100644 arch/arm64/boot/dts/rockchip/rk3576-luckfox-core3576.dtsi
 create mode 100644 arch/arm64/boot/dts/rockchip/rk3576-luckfox-omni3576.dts

-- 
2.39.5



More information about the Linux-rockchip mailing list