]> git.dujemihanovic.xyz Git - u-boot.git/commit
board: rockchip: add Anbernic RGXX3 Series Devices
authorChris Morgan <macromorgan@hotmail.com>
Fri, 21 Apr 2023 15:59:19 +0000 (10:59 -0500)
committerKever Yang <kever.yang@rock-chips.com>
Sat, 6 May 2023 09:45:05 +0000 (17:45 +0800)
commit6cf6fe25370c8d96e02488ef8779e295ecdb982d
tree91e019def4aeca2ca6313ed37814c3ce05dc8cd9
parentc2d5edff916379abd2da4590e8171c965d9a3e1d
board: rockchip: add Anbernic RGXX3 Series Devices

The Anbernic RGxx3 is a "pseudo-device" that encompasses the following
devices:

 - Anbernic RG353M
 - Anbernic RG353P
 - Anbernic RG353V
 - Anbernic RG353VS
 - Anbernic RG503

The rk3566-anbernic-rgxx3.dtsi is synced with upstream Linux, but
rk3566-anbernic-rgxx3.dts is a U-Boot specific devicetree that
is used for all RGxx3 devices.

Via the board.c file, the bootloader automatically sets the correct
fdtfile, board, and board_name environment variables so that the
correct devicetree can be passed to Linux. It is also possible to
simply hard-code a single devicetree in the boot.scr file and use
that to load Linux as well.

The common specifications for each device are:

 - Rockchip RK3566 SoC
 - 2 external SDMMC slots
 - 1 USB-C host port, 1 USB-C peripheral port
 - 1 mini-HDMI output
 - MIPI-DSI based display panel
 - ADC controlled joysticks with a GPIO mux
 - GPIO buttons
 - A PWM controlled vibrator
 - An ADC controlled button

All of the common features are defined in the devicetree synced from
upstream Linux.

TODO: DSI panel auto-detection for the RG353 devices (requires porting
of DSI controller driver and DSI-DPHY driver to send DSI commands to
the panel).

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
15 files changed:
arch/arm/dts/Makefile
arch/arm/dts/rk3566-anbernic-rgxx3-u-boot.dtsi [new file with mode: 0644]
arch/arm/dts/rk3566-anbernic-rgxx3.dts [new file with mode: 0644]
arch/arm/dts/rk3566-anbernic-rgxx3.dtsi [new file with mode: 0644]
arch/arm/mach-rockchip/rk3568/Kconfig
board/anbernic/rgxx3_rk3566/Kconfig [new file with mode: 0644]
board/anbernic/rgxx3_rk3566/MAINTAINERS [new file with mode: 0644]
board/anbernic/rgxx3_rk3566/Makefile [new file with mode: 0644]
board/anbernic/rgxx3_rk3566/rgxx3-rk3566.c [new file with mode: 0644]
configs/anbernic-rgxx3_defconfig [new file with mode: 0644]
doc/board/anbernic/index.rst [new file with mode: 0644]
doc/board/anbernic/rgxx3.rst [new file with mode: 0644]
doc/board/index.rst
doc/board/rockchip/rockchip.rst
include/configs/anbernic-rgxx3-rk3566.h [new file with mode: 0644]