From: Simon Glass <sjg@chromium.org>
To: Heiko Stuebner <heiko@sntech.de>
Cc: Fabio Estevam <festevam@nabladev.com>,
linux-rockchip@lists.infradead.org,
Jonas Karlman <jonas@kwiboo.se>,
linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
Simon Glass <sjg@chromium.org>,
Albert Aribaud <albert.u.boot@aribaud.net>,
Brian Masney <bmasney@redhat.com>,
Chukun Pan <amadeus@jmu.edu.cn>,
Conor Dooley <conor+dt@kernel.org>,
FUKAUMI Naoki <naoki@radxa.com>,
Jeffy Chen <jeffy.chen@rock-chips.com>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Michael Opdenacker <michael.opdenacker@rootcommit.com>,
Michael Riesch <michael.riesch@collabora.com>,
Michael Turquette <mturquette@baylibre.com>,
Rob Herring <robh@kernel.org>, Stephen Boyd <sboyd@kernel.org>,
Vinod Koul <vkoul@kernel.org>, Yao Zi <ziyao@disroot.org>,
huang lin <hl@rock-chips.com>,
linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v3 0/6] Add support for the Rockchip RV1106 and RV1103
Date: Wed, 29 Jul 2026 07:35:47 -0600 [thread overview]
Message-ID: <20260729133609.3465563-1-sjg@chromium.org> (raw)
This series adds initial support for the Rockchip RV1106, a Cortex-A7
SoC aimed at IP cameras, and its RV1103 package variant, together with
the Luckfox Pico Mini B, a small and widely available RV1103 board.
The series follows the structure of the recently merged RV1103B
support. The clock driver is ported from the vendor kernel and is the
work of Elaine Zhang. As with the RV1103B, no resets are exposed yet
and the CPU pvtpll is initialised but not calibrated.
Following feedback on v1, several parts have been split out into
separate series: the pinctrl driver and binding, and the serial,
watchdog and iio bindings, are submitted separately to their
maintainers. The mmc binding is already applied for mmc-next. This
series carries the clock support, the GRF compatibles and the
devicetrees, which depend on the clock binding header.
The devicetrees cover the devices needed for a basic system: UARTs,
SD/eMMC, the SPI flash controller, SARADC, watchdog, GPIO and pinctrl.
This v3 is re-tested on the Luckfox Pico Mini B: the kernel boots to
the rootfs wait with a working console on UART2, timers, pinctrl and
GPIO, and an SD card running at high speed. It builds with W=1 without
warnings and dt_binding_check and dtbs_check are clean.
Changes in v3:
- Add IDs for the internal clocks, so that anonymous branches cannot
overwrite the APLL entry in the clock array
- Register the CRU as a platform driver, like the RK3528
- Give the internal clocks real IDs so that they cannot overwrite the
APLL entry in the clock array
- Drop the pre-mux write of the alternate divider, which overwrites the
safe divider calculated by the CPU clock framework, and the post-mux
write, which duplicates the framework's own clean-up
- Add CLK_SET_RATE_PARENT to clk_vicap_m1_frac, matching m0
- Use a separate compatible for each GPIO IOC block, since their
register layouts differ
- Use the per-bank IOC compatibles
- Place the entry with the other Luckfox boards, in alphabetical order
Changes in v2:
- Renumber the clock IDs to be continuous, starting from 0
- Provide the MMC phase clocks from the CRU rather than a grf-cru
- Mention the MMC phase clocks in the rockchip,grf description
- Provide the MMC phase clocks from the CRU via an auxiliary GRF regmap
rather than from a separate grf-cru clock provider
- Drop the grf-cru clock-controller child and use the syscon-only
group for the main GRF, since the CRU now provides the MMC phase
clocks
- Use a single gpio-ioc compatible for the per-bank IOC blocks in
place of the ioc and pmuioc regions
- Take the MMC drive and sample phase clocks from the CRU and drop the
grf-cru node
- Give each GPIO bank a syscon for its own IOC block, referenced by a
rockchip,grf phandle in the bank node
- Add gpio aliases, which the pin controller and gpio drivers use to
identify the bank; the rv1103 removes the gpio2 alias
- Split the series by subsystem: pinctrl, serial, watchdog and iio are
now submitted separately
- Drop patch 'dt-bindings: mmc: rockchip-dw-mshc: Add RV1106
compatible', which is applied for mmc-next
Simon Glass (6):
dt-bindings: clock: rockchip: Add RV1106 CRU support
clk: rockchip: Add clock controller for the RV1106
dt-bindings: soc: rockchip: grf: Add RV1106 compatibles
ARM: dts: rockchip: Add support for RV1106 and RV1103
dt-bindings: arm: rockchip: Add Luckfox Pico Mini B
ARM: dts: rockchip: Add Luckfox Pico Mini B
.../devicetree/bindings/arm/rockchip.yaml | 5 +
.../bindings/clock/rockchip,rv1106-cru.yaml | 60 +
.../devicetree/bindings/soc/rockchip/grf.yaml | 6 +
arch/arm/boot/dts/rockchip/Makefile | 1 +
.../rockchip/rv1103-luckfox-pico-mini-b.dts | 93 ++
arch/arm/boot/dts/rockchip/rv1103.dtsi | 16 +
.../arm/boot/dts/rockchip/rv1106-pinctrl.dtsi | 1398 +++++++++++++++++
arch/arm/boot/dts/rockchip/rv1106.dtsi | 321 ++++
drivers/clk/rockchip/Kconfig | 7 +
drivers/clk/rockchip/Makefile | 1 +
drivers/clk/rockchip/clk-rv1106.c | 1099 +++++++++++++
.../dt-bindings/clock/rockchip,rv1106-cru.h | 306 ++++
12 files changed, 3313 insertions(+)
create mode 100644 Documentation/devicetree/bindings/clock/rockchip,rv1106-cru.yaml
create mode 100644 arch/arm/boot/dts/rockchip/rv1103-luckfox-pico-mini-b.dts
create mode 100644 arch/arm/boot/dts/rockchip/rv1103.dtsi
create mode 100644 arch/arm/boot/dts/rockchip/rv1106-pinctrl.dtsi
create mode 100644 arch/arm/boot/dts/rockchip/rv1106.dtsi
create mode 100644 drivers/clk/rockchip/clk-rv1106.c
create mode 100644 include/dt-bindings/clock/rockchip,rv1106-cru.h
---
base-commit: fc02acf6ac0ccde0c805c2daa9148683cdd01ba8
branch: rv1106a3
--
2.43.0
next reply other threads:[~2026-07-29 13:36 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-29 13:35 Simon Glass [this message]
2026-07-29 13:35 ` [PATCH v3 1/6] dt-bindings: clock: rockchip: Add RV1106 CRU support Simon Glass
2026-07-29 13:35 ` [PATCH v3 2/6] clk: rockchip: Add clock controller for the RV1106 Simon Glass
2026-07-29 13:35 ` [PATCH v3 3/6] dt-bindings: soc: rockchip: grf: Add RV1106 compatibles Simon Glass
2026-07-29 13:35 ` [PATCH v3 4/6] ARM: dts: rockchip: Add support for RV1106 and RV1103 Simon Glass
2026-07-29 13:35 ` [PATCH v3 5/6] dt-bindings: arm: rockchip: Add Luckfox Pico Mini B Simon Glass
2026-07-29 13:35 ` [PATCH v3 6/6] ARM: dts: " Simon Glass
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260729133609.3465563-1-sjg@chromium.org \
--to=sjg@chromium.org \
--cc=albert.u.boot@aribaud.net \
--cc=amadeus@jmu.edu.cn \
--cc=bmasney@redhat.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=festevam@nabladev.com \
--cc=heiko@sntech.de \
--cc=hl@rock-chips.com \
--cc=jeffy.chen@rock-chips.com \
--cc=jonas@kwiboo.se \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=michael.opdenacker@rootcommit.com \
--cc=michael.riesch@collabora.com \
--cc=mturquette@baylibre.com \
--cc=naoki@radxa.com \
--cc=robh@kernel.org \
--cc=sboyd@kernel.org \
--cc=vkoul@kernel.org \
--cc=ziyao@disroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox