Add initial device tree support for Asus Tinker Board 3 [1] and 3S [2],
which are SBCs based on the Rockchip 3566 SoC.
The "3S" version ("S" for "storage") is just a regular Tinker Board 3
fitted with a 16 GB eMMC and a "mask ROM" DIP switch
(to mask the eMMC and enter "Mask ROM" mode for recovery).
This adds support for:
- Debug UART (/dev/ttyS2)
- SD card (/dev/mmcblk1)
- eMMC (/dev/mmcblk0, only on Tinker Board 3S)
- I2C:
- i2c0 (internal bus with a PMIC and regulators)
- i2c2 (internal bus with an at24 eeprom and an RTC device)
- USB 2.0 ports
- 2 GPIO LEDS
This code was tested on Tinker Board 3S using the "master"
branch of the Linux kernel.
[1] https://tinker-board.asus.com/series/tinker-board-3.html
[2] https://tinker-board.asus.com/series/tinker-board-3s.html
Changes in V3:
- rockchip.yaml: group Tinker Board 3/3S in the same section
- Remove this Acked-by as the code changed substantially:
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
- Remove "asus,rk3566-tinker-board-3" from rk3566-tinker-board-3s.dts,
which conflicted with the change in rockchip.yaml and
could create an issue if some code unexpectedly turns out
to be compatible with 3 but not 3S.
If you don't agree, than we can keep V2.
Changes in V2:
- Rename "Tinker board" to "Tinker Board"
in commit messages and DT code
- Insert "-board" in DT file names
- Insert "-board" in new compatible string too
- Commit messages: change the way the references are introduced
("[1] https://..." instead of "Link: https://... [1]")
- Reorder alias properties and node names
- Add missing "cpu-supply" property to cpu nodes
- Use standard "eeprom@addr" node name for at24 eeprom
- DT commit message: add missing "Asus" before "Tinker"
Michael Opdenacker (2):
dt-bindings: arm: rockchip: Add Asus Tinker Board 3 and 3S
arm64: dts: rockchip: Add Asus Tinker Board 3 and 3S device tree
.../devicetree/bindings/arm/rockchip.yaml | 11 +
arch/arm64/boot/dts/rockchip/Makefile | 2 +
.../dts/rockchip/rk3566-tinker-board-3.dts | 14 +
.../dts/rockchip/rk3566-tinker-board-3.dtsi | 280 ++++++++++++++++++
.../dts/rockchip/rk3566-tinker-board-3s.dts | 30 ++
5 files changed, 337 insertions(+)
create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-tinker-board-3.dts
create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-tinker-board-3.dtsi
create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-tinker-board-3s.dts
---
Michael Opdenacker (2):
dt-bindings: arm: rockchip: Add Asus Tinker Board 3/3S
arm64: dts: rockchip: Add Asus Tinker Board 3 and 3S device tree
.../devicetree/bindings/arm/rockchip.yaml | 7 +
arch/arm64/boot/dts/rockchip/Makefile | 2 +
.../boot/dts/rockchip/rk3566-tinker-board-3.dts | 14 ++
.../boot/dts/rockchip/rk3566-tinker-board-3.dtsi | 280 +++++++++++++++++++++
.../boot/dts/rockchip/rk3566-tinker-board-3s.dts | 30 +++
5 files changed, 333 insertions(+)
---
base-commit: e7c375b181600caf135cfd03eadbc45eb530f2cb
change-id: 20251117-tinker3-88e32dfa9138
Best regards,
--
Michael Opdenacker <michael.opdenacker@rootcommit.com>