Commit 33de787d authored by Tomeu Vizoso's avatar Tomeu Vizoso Committed by Sjoerd Simons
Browse files

Add device documentation for the Khadas VIM3 board


Signed-off-by: Tomeu Vizoso's avatarTomeu Vizoso <tomeu.vizoso@collabora.com>
parent 83aa0a61
---
title: Khadas VIM3 Pro
---
This document provides information needed for adding Khadas' VIM3 Pro boards to the LAVA lab.
https://www.khadas.com/vim3
Note that this isn't about the VIM3 Basic board, which has less memory (2GB vs 4GB RAM and 16GB vs. 32GB eMMC).
Specification:
* Amlogic A311D 2.2GHz Quad core ARM Cortex-A73 and 1.8GHz dual core Cortex-A53 CPU
* 4GB of RAM
* ARM Mali G52 MP4 GPU 800MHz
* 1 USB 3.0 port (USB-A)
* 1 USB 2.0 port (USB-A)
* 1 USB 2.0 port (USB-C) with power delivery (5-20V input)
* 1 RJ-45 port
* 40-Pin GPIO which includes pins for the SoC UART
This board is available from [Khadas' store](https://www.khadas.com/product-page/vim3).
### Power control
The VIM3 can be powered via the USB-C port (5-20V input).
It can also be powered via the VIN port on the back of the board, with a standard 4 circuit, Molex 78172-0004 connector (5-12V input). See vim3_interfaces_bottom.jpg in this repository.
### Low-level boot control
Baud rate: 115200 8n1
Voltage: 3.3V TTL
Pins: 18 is Linux_RX, 19 is Linux_TX: See SerialConnections_3Pin.jpg in this repository.
#### Network connectivity
The onboard ethernet should work with the vendor U-Boot already flashed.
A random MAC address is generated if there's none defined in the environement. To keep the same MAC address, just do a saveenv in U-Boot.
### Bootloader
* Boot with the serial cable connected
* On the terminal emulator interrupt the boot by pressing any key after U-Boot has started
* Type `setenv bootdelay -1`
* Type `saveenv`
The bootloader resides in the 16MB SPI-Flash on board (not verified).
These are the memory addresses to load the boot artifacts into:
{% set bootm_kernel_addr = '0x01080000' %}
{% set bootm_dtb_addr = '0x01070000' %}
{% set bootm_ramdisk_addr = '0x08000000' %}
### Health checks
To build a suitable kernel:
* git clone https://github.com/bbrezillon/linux.git && cd linux && git checkout panfrost-vim3-working
* make ARCH=arm64 CROSS_COMPILE=... vim3_deconfig
* make ARCH=arm64 CROSS_COMPILE=... Image dtbs
Copy Image and meson-g12b-s922x-khadas-vim3.dtb to your tftp dir.
By the time Linux 5.9 is released, support for the on-board ethernet should be in mainline (should work out of the box with arm64_defconfig).
### Lab notes and trouble shooting
None known.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment