mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-18 01:03:05 +00:00
6cf6fe2537
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>
47 lines
1.4 KiB
ReStructuredText
47 lines
1.4 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0+
|
|
|
|
U-Boot for Anbernic RGxx3 Devices
|
|
=================================
|
|
|
|
This allows U-Boot to boot the following Anbernic devices:
|
|
|
|
- Anbernic RG353M
|
|
- Anbernic RG353P
|
|
- Anbernic RG353V
|
|
- Anbernic RG353VS
|
|
- Anbernic RG503
|
|
|
|
The correct device is detected automatically by comparing ADC values
|
|
from ADC channel 1. In the event of an RG353V, an attempt is then made
|
|
to probe for an eMMC and if it fails the device is assumed to be an
|
|
RG353VS. Based on the detected device, the environment variables
|
|
"board", "board_name", and "fdtfile" are set to the correct values
|
|
corresponding to the board which can be read by a boot script to boot
|
|
with the correct device tree.
|
|
|
|
Please note that there are some versions of the RG353 devices with
|
|
different panels. Panel auto-detection is planned for a later date.
|
|
|
|
Building U-Boot
|
|
---------------
|
|
|
|
.. code-block:: bash
|
|
|
|
$ export CROSS_COMPILE=aarch64-none-elf-
|
|
$ export BL31=../rkbin/bin/rk35/rk3568_bl31_v1.34.elf
|
|
$ export ROCKCHIP_TPL=../rkbin/bin/rk35/rk3568_ddr_1056MHz_v1.13.bin
|
|
$ make anbernic-rgxx3_defconfig
|
|
$ make
|
|
|
|
This will build ``u-boot-rockchip.bin`` which can be written to an SD
|
|
card.
|
|
|
|
Image installation
|
|
------------------
|
|
|
|
Write the ``u-boot-rockchip.bin`` to an SD card offset 32kb from the
|
|
start.
|
|
|
|
.. code-block:: bash
|
|
|
|
$ dd if=u-boot-rockchip.bin of=/dev/mmcblk0 bs=512 seek=64
|