Device-tree-overlays
Contents
- 1 Introduction of Radxa Boards Device Tree Overlays
- 1.1 Platform and Chips
- 1.2 Part One: Rockchip
- 1.2.1 U-Boot Environment Variable
- 1.2.2 RK3566/RK3568 Available Overlay (ROCK 3A, ROCK 3B, Radxa CM3)
- 1.2.2.1 rk3568-can1-m0
- 1.2.2.2 rk3568-can1-m1
- 1.2.2.3 rk3568-i2c2-m0
- 1.2.2.4 rk3568-i2c3-m0
- 1.2.2.5 rk3568-pwm1-m0
- 1.2.2.6 rk3568-pwm1-m1
- 1.2.2.7 rk3568-pwm2-m0
- 1.2.2.8 rk3568-pwm2-m1
- 1.2.2.9 rk3568-pwm8-m0-fan
- 1.2.2.10 rk3568-pwm9-m0
- 1.2.2.11 rk3568-pwm12-m0
- 1.2.2.12 rk3568-pwm12-m1
- 1.2.2.13 rk3568-pwm13-m0
- 1.2.2.14 rk3568-pwm13-m1
- 1.2.2.15 rk3568-pwm14-m0
- 1.2.2.16 rk3568-pwm14-m1
- 1.2.2.17 rk3568-pwm15-m0
- 1.2.2.18 rk3568-pwm15-m1
- 1.2.2.19 rk3568-spi3-m1-cs0-spidev
- 1.2.2.20 rk3568-uart0
- 1.2.2.21 rk3568-uart3-m0
- 1.2.2.22 rk3568-uart3-m1
- 1.2.2.23 rk3568-uart5-m1
- 1.2.2.24 rk3568-uart7-m1
- 1.2.2.25 rk3568-uart8-m1
- 1.2.2.26 rk3568-uart9-m1
- 1.2.2.27 rk3568-w1-gpio
- 1.2.3 RK3399PRO Available Overlay (ROCK Pi N10)
- 1.2.3.1 rk3399pro-i2c2
- 1.2.3.2 rk3399pro-i2c6
- 1.2.3.3 rk3399pro-i2c7
- 1.2.3.4 rk3399pro-spi-spidev
- 1.2.3.5 rk3399pro-pwm0
- 1.2.3.6 rk3399pro-pwm1
- 1.2.3.7 rk3399pro-uart2
- 1.2.3.8 rk3399pro-uart4
- 1.2.3.9 rk3399pro-console-on-uart2
- 1.2.3.10 rk3399pro-console-on-uart4
- 1.2.3.11 rk3399pro-w1-gpio
- 1.2.3.12 rk3399pro-raspberrypi-7-inch-lcd
- 1.2.3.13 rk3399pro-pcie-gen2
- 1.2.4 RK3328 Available Overlay (ROCK Pi E)
- 1.2.5 RK3308 Available Overlay (ROCK Pi S)
- 1.2.5.1 i2c1-hym8563
- 1.2.5.2 rk3308-i2c0
- 1.2.5.3 rk3308-i2c1
- 1.2.5.4 rk3308-i2c2
- 1.2.5.5 rk3308-i2c3
- 1.2.5.6 rk3308-spi-spidev
- 1.2.5.7 rk3308-uart0
- 1.2.5.8 rk3308-uart1
- 1.2.5.9 rk3308-uart2
- 1.2.5.10 rk3308-pwm1
- 1.2.5.11 rk3308-pwm2
- 1.2.5.12 rk3308-pwm3
- 1.2.5.13 rk3308-console-on-uart0
- 1.2.5.14 rk3308-console-on-uart1
- 1.2.5.15 rk3308-console-on-uart2
- 1.2.5.16 rk3308-w1-gpio
- 1.2.5.17 rockpis-v11-spi2-waveshare35b-v2
- 1.2.5.18 rockpis-v11-spi2-waveshare35c
- 1.2.5.19 rockpis-v12spi2-waveshare35b-v2
- 1.2.5.20 rockpis-v12-spi2-waveshare35c
- 1.3 Part Two: Meson
- 1.3.1 U-Boot Environment Variable
- 1.3.2 Meson G12A Available Overlay (Radxa Zero)
- 1.3.2.1 meson-g12a-i2c-ee-m1-gpioh-6-gpioh-7
- 1.3.2.2 meson-g12a-i2c-ee-m1-gpiox-10-gpiox-11
- 1.3.2.3 meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15
- 1.3.2.4 meson-g12a-i2c-ao-m0-gpioao-2-gpioao-3
- 1.3.2.5 meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1
- 1.3.2.6 meson-g12a-uart-ao-b-on-gpioao-2-gpioao-3
- 1.3.2.7 meson-g12a-uart-ao-b-on-gpioao-8-gpioao-9
- 1.3.2.8 meson-g12a-uart-ee-c
- 1.3.2.9 meson-g12a-pwm-c-on-gpiox-8
- 1.3.2.10 meson-g12a-pwmao-a-on-gpioao-11
- 1.3.2.11 meson-g12a-spi-spidev
Introduction of Radxa Boards Device Tree Overlays
This document describes Radxa Boards device tree overlays provided in kernel packages.
Platform and Chips
- Rockchip (Rockchip)
- RK3568
- RK3566
- RK3399PRO
- RK3328
- RK3308
- Meson (Amlogic)
- Meson G12A: S905Y2
Part One: Rockchip
Kernel provided DT overlay files are in /boot/dtbs/$(uname -r)/rockchip/overlay/
/boot/uEnv.txt contents:
overlays=rk3399pro-i2c2 rk3399pro-console-on-uart2 rk3399pro-pwm0 rk3399pro-w1-gpio rk3399pro-spi-spidev param_spidev_spi_bus=1 param_spidev_max_freq=10000000 param_w1_pin=GPIO2_A2
Add names of overlays you want to activate to overlays= line in /boot/uEnv.txt, separated with spaces.
Add required parameters with their values to /boot/uEnv.txt, one per line.
Add optional parameters with their values to /boot/uEnv.txt if you want to change the default value, one per line.
U-Boot Environment Variable
- verbosity
Kernel log level: 1~7
verbosity=7
- rootfstype
root filesystem type: ext4
rootfstype=ext4
- fdtfile
Kernel device tree name with the prefix, rockchip/
fdtfile=rockchip/rk3399pro-rockpi-n10-linux.dtb
- extraargs
- Driver module parameters
extraargs=mem=512MB max_loop=8
RK3566/RK3568 Available Overlay (ROCK 3A, ROCK 3B, Radxa CM3)
- rk3568-can1-m0 rk3568-can1-m1
- rk3568-i2c2-m0 rk3568-i2c3-m0
- rk3568-pwm1-m0 rk3568-pwm1-m1 rk3568-pwm2-m0 rk3568-pwm2-m1 rk3568-pwm8-m0-fan rk3568-pwm9-m0 rk3568-pwm12-m0 rk3568-pwm12-m1 rk3568-pwm13-m0 rk3568-pwm13-m1 rk3568-pwm14-m0 rk3568-pwm14-m1 k3568-pwm15-m0 rk3568-pwm15-m1
- rk3568-spi3-m1-cs0-spidev
- rk3568-uart0 rk3568-uart3-m0 rk3568-uart3-m1 rk3568-uart5-m1 rk3568-uart7-m1 rk3568-uart8-m1 rk3568-uart9-m1
- rk3568-w1-gpio
rk3568-can1-m0
Activates CAN bus 1 M0
CAN1 M0 pins: CAN1_RX_M0, CAN1_TX_M0
Usage: Add the item "rk3568-can1-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-can1-m0
rk3568-can1-m1
Activates CAN bus 1 M1
CAN1 M0 pins: CAN1_RX_M1, CAN1_TX_M1
Usage: Add the item "rk3568-can1-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-can1-m1
rk3568-i2c2-m0
Activates I2C bus 2 M0
I2C2 M0 pins: I2C2_SDA_M0, I2C2_SCL_M0
Usage: Add the item "rk3568-i2c2-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-i2c2-m0
rk3568-i2c3-m0
Activates I2C bus 3 M0
I2C3 M0 pins: I2C3_SDA_M0, I2C3_SCL_M0
Usage: Add the item "rk3568-i2c3-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-i2c3-m0
rk3568-pwm1-m0
Activates PWM1_M0
Usage: Add the item "rk3568-pwm1-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm1-m0
rk3568-pwm1-m1
Activates PWM1_M1
Usage: Add the item "rk3568-pwm1-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm1-m1
rk3568-pwm2-m0
Activates PWM2_M0
Usage: Add the item "rk3568-pwm2-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm2-m0
rk3568-pwm2-m1
Activates PWM2_M1
Usage: Add the item "rk3568-pwm2-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm2-m1
rk3568-pwm8-m0-fan
Activates PWM8_M0
Usage: Add the item "rk3568-pwm8-m0-fan" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm8-m0-fan
rk3568-pwm9-m0
Activates PWM9_M0
Usage: Add the item "rk3568-pwm9-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm9-m0
rk3568-pwm12-m0
Activates PWM12_M0
Usage: Add the item "rk3568-pwm12-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm12-m0
rk3568-pwm12-m1
Activates PWM12_M1
Usage: Add the item "rk3568-pwm12-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm12-m1
rk3568-pwm13-m0
Activates PWM13_M0
Usage: Add the item "rk3568-pwm13-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm13-m0
rk3568-pwm13-m1
Activates PWM13_M1
Usage: Add the item "rk3568-pwm13-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm13-m1
rk3568-pwm14-m0
Activates PWM14_M0
Usage: Add the item "rk3568-pwm14-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm14-m0
rk3568-pwm14-m1
Activates PWM14_M1
Usage: Add the item "rk3568-pwm14-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm14-m1
rk3568-pwm15-m0
Activates PWM15_M0
Usage: Add the item "k3568-pwm15-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=k3568-pwm15-m0
rk3568-pwm15-m1
Activates PWM15_M1
Usage: Add the item "rk3568-pwm15-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-pwm15-m1
rk3568-spi3-m1-cs0-spidev
Activates SPI3 M0 (/dev/spidev3.0)
SPI3 M1 pins: SPI3_CS0_M1, SPI3_CLK_M1, SPI3_MOSI_M1, SPI3_MISO_M1
Usage: Add the item "rk3568-spi3-m1-cs0-spidev" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-spi3-m1-cs0-spidev
rk3568-uart0
Activates serial port 0 (/dev/ttyS0)
UART0 pins: UART0_RX, UART0_TX
Usage: Add the item "rk3568-uart0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart0
rk3568-uart3-m0
Activates serial port 3 on M0 (/dev/ttyS3)
UART3 M0 pins: UART3_RX_M0, UART3_TX_M0
Usage: Add the item "rk3568-uart3-m0" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart3-m0
rk3568-uart3-m1
Activates serial port 3 on M1 (/dev/ttyS3)
UART3 M1 pins: UART3_RX_M1, UART3_TX_M1
Usage: Add the item "rk3568-uart3-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart3-m1
rk3568-uart5-m1
Activates serial port 5 on M1 (/dev/ttyS5)
UART5 M1 pins: UART5_RX_M1, UART5_TX_M1
Usage: Add the item "rk3568-uart5-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart5-m1
rk3568-uart7-m1
Activates serial port 7 on M1 (/dev/ttyS7)
UART7 M1 pins: UART7_RX_M1, UART7_TX_M1
Usage: Add the item "rk3568-uart7-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart7-m1
rk3568-uart8-m1
Activates serial port 8 on M1 (/dev/ttyS8)
UART8 M1 pins: UART8_RX_M1, UART8_TX_M1
Usage: Add the item "rk3568-uart8-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart8-m1
rk3568-uart9-m1
Activates serial port 9 on M1 (/dev/ttyS9)
UART9 M1 pins: UART9_RX_M1, UART9_TX_M1
Usage: Add the item "rk3568-uart9-m1" to "overlays=" line in /boot/uEnv.txt.
overlays=rk3568-uart9-m1
rk3568-w1-gpio
Activates 1-Wire GPIO master
Requires an external pull-up resistor on the data pin
- Parameters:
- param_w1_pin (pin)
- Data pin for 1-Wire master
- Optional
- Default: GPIO3_A5
- param_w1_pin (pin)
Usage: Add the item "rk3568-w1-gpio" to "overlays=" line in /boot/uEnv.txt. Also param_w1_pin is needed.
overlays=rk3568-w1-gpio param_w1_pin=GPIO3_A5
RK3399PRO Available Overlay (ROCK Pi N10)
- rk3399pro-i2c2, rk3399pro-i2c6, rk3399pro-i2c7
- rk3399pro-spi-spidev
- rk3399pro-pwm0, rk3399pro-pwm1
- rk3399pro-uart2, rk3399pro-uart4
- rk3399pro-console-on-uart2, rk3399pro-console-on-uart4
- rk3399pro-w1-gpio
rk3399pro-i2c2
Activates I2C bus 2
I2C2 pins (SCL, SDA): GPIO2_A1, GPIO2_A0
Usage: add one line in /boot/uEnv.txt overlays=rk3399pro-i2c2
rk3399pro-i2c6
Activates I2C bus 6
I2C7 pins (SCL, SDA): GPIO2_B2, GPIO2_A1
rk3399pro-i2c7
Activates I2C bus 7
I2C7 pins (SCL, SDA): GPIO2_B0, GPIO2_A7
rk3399pro-spi-spidev
Activates spidev device node (/dev/spidevX.Y) for userspace SPI access, where X is the bus number and Y is the CS number
SPI 1 pins (MOSI, MISO, SCK, CS): GPIO1_B0, GPIO1_A7, GPIO1_B1, GPIO1_B2
Parameters:
- param_spidev_spi_bus (int)
- SPI bus to activate SPIdev support on
- Required
- Supported values: 0, 1
- param_spidev_spi_cs (int)
- SPI chip select number
- Optional
- Default: 0
- Supported values: 0, 1
- Using chip select 1 requires using "spi-add-cs1" overlay
- param_spidev_max_freq (int)
- Maximum SPIdev frequency
- Optional
- Default: 10000000
- Range: 3000 - 100000000
rk3399pro-pwm0
Activates PWM0
rk3399pro-pwm1
Activates PWM1
rk3399pro-uart2
Activates serial port 2 (/dev/ttyS2)
UART2 pins (RXD, TXD): GPIO4_C3, GPIO4_C4
Notice: rk3399pro-uart2 and rk3399pro-console-on-uart2 cannnot be added together in /boot/uEnv.txt.
rk3399pro-uart4
Activates serial port 4 (/dev/ttyS4)
UART4 pins (RXD, TXD): GPIO1_A7, GPIO1_B0
Notice: UART4 cannot be activated together with SPI1 since they share the same pins. Also, rk3399pro-uart4 and rk3399pro-console-on-uart4 cannnot be added together in /boot/uEnv.txt.
rk3399pro-console-on-uart2
Activates debug console on UART2
console pins (RXD, TXD): GPIO4_C3, GPIO4_C4
Notice: rk3399pro-console-on-uart2 and rk3399pro-uart2 cannnot be added together in /boot/uEnv.txt.
rk3399pro-console-on-uart4
Activates debug console on UART4
console pins (RXD, TXD): GPIO1_A7, GPIO1_B0
Notice: rk3399pro-console-on-uart4 and rk3399pro-uart4 cannnot be added together in /boot/uEnv.txt.
rk3399pro-w1-gpio
Activates 1-Wire GPIO master
Requires an external pull-up resistor on the data pin
Parameters:
- param_w1_pin (pin)
- Data pin for 1-Wire master
- Optional
- Default: GPIO2_A2
rk3399pro-raspberrypi-7-inch-lcd
Activates Raspberry Pi 7-inch LCD
Notice: In term of hardware, use a 15-pin FPC cable to connect RPI LCD to ROCK Pi N10.
For power supply, both 5V pin and GND pin on 5-pin connector on RPI LCD are connected to the 40-pin connector on ROCK Pi N10.
rk3399pro-pcie-gen2
Activates PCIe Gen2 Mode
RK3328 Available Overlay (ROCK Pi E)
- rk3328-i2c1
- rk3328-spi-spidev
- rk3328-uart1, rk3328-uart2
- rk3328-console-on-uart1, rk3328-console-on-uart2
- rk3328-w1-gpio
rk3328-i2c1
Activates I2C bus 2
I2C2 pins (SCL, SDA): GPIO2_A1, GPIO2_A0
Usage: add one line in /boot/uEnv.txt
overlays=rk3328-i2c1
rk3328-spi-spidev
Activates spidev device node (/dev/spidevX.Y) for userspace SPI access, where X is the bus number and Y is the CS number
SPI 0 pins (MOSI, MISO, SCK, CS): GPIO3_A1, GPIO3_A2, GPIO3_A0, GPIO3_B0
Parameters:
- param_spidev_spi_bus (int)
- SPI bus to activate SPIdev support on
- Required
- Supported values: 0
- param_spidev_spi_cs (int)
- SPI chip select number
- Optional
- Default: 0
- Supported values: 0
- param_spidev_max_freq (int)
- Maximum SPIdev frequency
- Optional
- Default: 10000000
- Range: 3000 - 100000000
rk3328-uart1
Activates serial port 1 (/dev/ttyS1)
UART1 pins (RXD, TXD): GPIO3_A6, GPIO3_A4
Notice: rk3328-uart1 and rk3328-console-on-uart1 cannnot be added together in /boot/uEnv.txt.
rk3328-uart2
Activates serial port 2 (/dev/ttyS2)
UART2 pins (RXD, TXD): GPIO2_A1, GPIO2_A0
Notice: rk3328-uart2 and rk3328-console-on-uart2 cannnot be added together in /boot/uEnv.txt.
rk3328-console-on-uart
Activates debug console on UART1
console pins (RXD, TXD): GPIO3_A6, GPIO3_A4
Notice: rk3328-console-on-uart1 and rk3328-uart1 cannnot be added together in /boot/uEnv.txt.
rk3328-console-on-uart2
Activates debug console on UART2
console pins (RXD, TXD): GPIO2_A1, GPIO2_A0
Notice: rk3328-console-on-uart2 and rk3328-uart2 cannnot be added together in /boot/uEnv.txt.
rk3328-w1-gpio
Activates 1-Wire GPIO master
Requires an external pull-up resistor on the data pin
Parameters:
- param_w1_pin (pin)
- Data pin for 1-Wire master
- Optional
- Default: GPIO2_D2
RK3308 Available Overlay (ROCK Pi S)
- i2c1-hym8563
- rk3308-i2c0, rk3308-i2c1, rk3308-i2c2, rk3308-i2c3
- rk3308-spi-spidev
- rk3308-uart0, rk3308-uart1, rk3308-uart2
- rk3308-pwm1, rk3308-pwm2, rk3308-pwm3
- rk3308-console-on-uart0, rk3308-console-on-uart1, rk3308-console-on-uart2
- rk3308-w1-gpio
- rockpis-v11-spi2-waveshare35b-v2, rockpis-v11-spi2-waveshare35c, rockpis-v12-spi2-waveshare35b-v2, rockpis-v12-spi2-waveshare35c
Notes:.
1.I2C0, UART1 and SPI2 cannot be enabled at the same time.
2.I2C2 and SPI0 cannot be enabled at the same time..
3.I2C3 and PWM2 cannot be enabled at the same time..
4.I2C3 and PWM3 cannot be enabled at the same time..
5.SPI0 and UART0 cannot be enabled at the same time..
6.SPI2 and UART2 cannot be enabled at the same time..
7.Waveshare 3.5 inch LCD related pins on 40-PIN HEADER 1: PIN#11/18/19/21/22/23/24/26
i2c1-hym8563
Activates hym8563 RTC
Related pins: I2C1(SCL/SDA), nINT(GPIO0_C1)
rk3308-i2c0
Activates I2C bus 0
I2C0 pins (SCL, SDA): GPIO1_D1, GPIO1_D0
rk3308-i2c1
Activates I2C bus 1
I2C1 pins (SCL, SDA): GPIO0_B4, GPIO0_B3
rk3308-i2c2
Activates I2C bus 2
I2C2 pins (SCL, SDA): GPIO2_A3, GPIO2_A2
rk3308-i2c3
Activates I2C bus 3
I2C3 pins (SCL, SDA): GPIO0_C0, GPIO0_B7
rk3308-spi-spidev
Activates SPIdev device node (/dev/spidevX.Y) for userspace SPI access, where X is the bus number and Y is the CS number
SPI 0 pins (MOSI, MISO, SCK, CS): GPIO2_A1, GPIO2_A0, GPIO2_A2, GPIO2_A3 SPI 1 pins (MOSI, MISO, SCK, CS): GPIO3_B4, GPIO3_B2, GPIO3_B3, GPIO3_B5 SPI 2 pins (MOSI, MISO, SCK, CS): GPIO1_C7, GPIO1_C6, GPIO1_D0, GPIO1_D1
Parameters:
- param_spidev_spi_bus (int)
- SPI bus to activate SPIdev support on
- Required
- Supported values: 0
- param_spidev_spi_cs (int)
- SPI chip select number
- Optional
- Default: 0
- Supported values: 0
- param_spidev_max_freq (int)
- Maximum SPIdev frequency
- Optional
- Default: 10000000
- Range: 3000 - 100000000
rk3308-uart0
Activates serial port 0 (/dev/ttyS0)
UART0 pins (RXD, TXD): GPIO2_A0, GPIO2_A1
rk3308-uart1
Activates serial port 1 (/dev/ttyS1)
UART1 pins (RXD, TXD): GPIO1_D0, GPIO1_D1
rk3308-uart2
Activates serial port 2 (/dev/ttyS2)
UART2 pins (RXD, TXD): GPIO1_C6, GPIO1_C7
rk3308-pwm1
Activates PWM1
rk3308-pwm2
Activates PWM2
rk3308-pwm3
Activates PWM3
rk3308-console-on-uart0
Activates debug console on UART0
console pins (RXD, TXD): GPIO2_A0, GPIO2_A1
Notes:
1.rk3308-console-on-uart0 and rk3308-uart0 cannnot be added together in /boot/uEnv.txt.
rk3308-console-on-uart1
Activates debug console on UART1
console pins (RXD, TXD): GPIO1_D0, GPIO1_D1
Notes:
1.rk3308-console-on-uart1 and rk3308-uart1 cannnot be added together in /boot/uEnv.txt.
rk3308-console-on-uart2
Activates debug console on UART2
console pins (RXD, TXD): GPIO1_C6, GPIO1_C7
Notes:
1.rk3308-console-on-uart2 and rk3308-uart2 cannnot be added together in /boot/uEnv.txt.
rk3308-w1-gpio
Activates 1-Wire GPIO master
Requires an external pull-up resistor on the data pin
Parameters:
- param_w1_pin (pin)
- Data pin for 1-Wire master
- Optional
- Default: GPIO0_C1
Activates waveshare 3.5inch lcd(B v2) on ROCK Pi S V1.1
Activates waveshare 3.5inch lcd(C) on ROCK Pi S V1.1
Activates waveshare 3.5inch lcd(B v2) on ROCK Pi S V1.2
Activates waveshare 3.5inch lcd(C) on ROCK Pi S V1.2
Part Two: Meson
Kernel provided DT overlay files are in /boot/dtbs/$(uname -r)/amlogic/overlay/
/boot/uEnv.txt contents:
overlays=meson-g12a-i2c-ao-m0-gpioao-2-gpioao-3 meson-g12a-i2c-ee-m1-gpioh-6-gpioh-7 meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15 meson-g12a-spi-spidev param_spidev_spi_bus=0 param_spidev_max_freq=10000000
Add names of overlays you want to activate to overlays= line in /boot/uEnv.txt, separated with spaces.
Add required parameters with their values to /boot/uEnv.txt, one per line.
Add optional parameters with their values to /boot/uEnv.txt if you want to change the default value, one per line.
U-Boot Environment Variable
- verbosity
Kernel log level: 1~7
verbosity=7
- rootfstype
root filesystem type: ext4
rootfstype=ext4
- fdtfile
Kernel device tree name with the prefix, amlogic/
fdtfile=amlogic/meson-g12a-radxa-zero.dtb
- extraargs
- Driver module parameters
extraargs=mem=512MB max_loop=8
Meson G12A Available Overlay (Radxa Zero)
- meson-g12a-i2c-ao-m0-gpioao-2-gpioao-3 meson-g12a-i2c-ee-m1-gpioh-6-gpioh-7 meson-g12a-i2c-ee-m1-gpiox-10-gpiox-11 meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15
- meson-g12a-pwmao-a-on-gpioao-11 meson-g12a-pwm-c-on-gpiox-8
- meson-g12a-spi-spidev
- meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1 meson-g12a-uart-ao-b-on-gpioao-2-gpioao-3 meson-g12a-uart-ao-b-on-gpioao-8-gpioao-9 meson-g12a-uart-ee-c
meson-g12a-i2c-ee-m1-gpioh-6-gpioh-7
Activates I2C EE M1
Device name: /dev/i2c-1
Pins (SCL, SDA): GPIOH_7, GPIOH_6
Usage: add item "meson-g12a-i2c-ee-m1-gpioh-6-gpioh-7" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-i2c-ee-m1-gpioh-6-gpioh-7
meson-g12a-i2c-ee-m1-gpiox-10-gpiox-11
Activates I2C EE M1
Device name: /dev/i2c-1
Pins (SCL, SDA): GPIOX_11, GPIOX_10
Usage: add item "meson-g12a-i2c-ee-m1-gpiox-10-gpiox-11" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-i2c-ee-m1-gpiox-10-gpiox-11
meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15
Activates I2C EE M3
Device name: /dev/i2c-3
Pins (SCL, SDA): GPIOA_15, GPIOA_14
Usage: add item "meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15
meson-g12a-i2c-ao-m0-gpioao-2-gpioao-3
Activates I2C AO M0
Device name: /dev/i2c-4
Pins (SCL, SDA): GPIOAO_2, GPIOAO_3
Usage: add item "meson-g12a-i2c-ao-m0-gpioao-2-gpioao-3" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-i2c-ao-m0-gpioao-2-gpioao-3
meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1
Activates UART AO A (/dev/ttyAML0)
pins (RX, TX): GPIOAO_1, GPIOAO_0
Usage: add item "meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1
This dtbo meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1 enables us to use /dev/ttyAML0 as serial console or common serial communication.
For usage of serial console, add the following "console=" line and add item "meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1" to "overlays=" to line in /boot/uEnv.txt
console=ttyAML0,115200 overlays=meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1
For usage of common serial communication, only add the item "meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-uart-ao-a-on-gpioao-0-gpioao-1
meson-g12a-uart-ao-b-on-gpioao-2-gpioao-3
Activates UART AO B (/dev/ttyAML1)
pins (RX, TX): GPIOAO_3, GPIOAO_2
Usage: add item "meson-g12a-uart-ao-b-on-gpioao-2-gpioao-3" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-uart-ao-b-on-gpioao-2-gpioao-3
meson-g12a-uart-ao-b-on-gpioao-8-gpioao-9
Activates UART AO B (/dev/ttyAML1)
pins (RX, TX): GPIOAO_9, GPIOAO_8
Usage: add item "meson-g12a-uart-ao-b-on-gpioao-8-gpioao-9" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-uart-ao-b-on-gpioao-8-gpioao-9
meson-g12a-uart-ee-c
Activates UART EE C (/dev/ttyAML4)
pins (RX, TX, RTS, CTS): GPIOH_6, GPIOH_7, GPIOH_4, GPIOH_5
Usage: add item "meson-g12a-uart-ee-c" to "overlays=" line in /boot/uEnv.txt
overlays=meson-g12a-uart-ee-c
meson-g12a-pwm-c-on-gpiox-8
Activates PWM_C
Pins: GPIOX_8
meson-g12a-pwmao-a-on-gpioao-11
Activates PWMAO_A
Pins: GPIOAO_11
meson-g12a-spi-spidev
Activates SPIdev device node (/dev/spidevX.Y) for userspace SPI access, where X is the bus number and Y is the CS number
- SPI A bus
- pins (SS0, SCLK, MOSI, MISO): GPIOX_10, GPIOX_11, GPIOX_8, GPIOX_9
- device: /dev/spidev0.0
- SPI B bus
- pins (SS0, SCLK, MOSI, MISO): GPIOH_6, GPIOH_7, GPIOH_4, GPIOH_5
- device: /dev/spidev1.0
- Parameters:
- param_spidev_spi_bus (int)
- SPI bus to activate SPIdev support on
- Required
- Supported values: 0, 1
- param_spidev_spi_cs (int)
- SPI chip select number
- Optional
- Default: 0
- Supported values: 0
- param_spidev_max_freq (int)
- Maximum SPIdev frequency
- Optional
- Default: 10000000
- Range: 3000 - 100000000
- param_spidev_spi_bus (int)