R-Car/Boards/M3SK

From eLinux.org
Jump to: navigation, search

Introduction

This is the Wiki for the Renesas R-Car Starter Kit Pro board . Refer to the R-Car page for information about Renesas' R-Car SoC family.

Hardware

Top view
Bottom view

Hardware Features

  • R-CAR M3
    • ARM CA57 (ARMv8) 1.5 GHz dual core, with NEON/VFPv4, L1$ I/D 48K/32K, L2$ 1MB
    • ARM CA53 (ARMv8) 1.2 GHz quad core, with NEON/VFPv4, L1$ I/D 32K/32K, L2$ 512K
    • Memory controller for LPDDR4-3200 2GB in 2 channels, each 64-bit wide
    • Two- and three-dimensional graphics engines,
    • Video processing units,
    • 3 channels Display Output,
    • 6 channels Video Input,
    • SD card host interface,
    • USB3.0 and USB2.0 interfaces,
    • CAN interfaces
    • Ethernet AVB
    • PCI Express Interfaces
  • Memories
    • INTERNAL 384KB SYSTEM RAM
    • DDR 2 GB LPDDR4
    • HYPERFLASH 64 MB HYPER FLASH (512 MBITS, 160 MHZ, 320 MBYTES/S)
    • QSPI FLASH 16MB QSPI (128 MBITS,80 MHZ,80 MBYTES/S)1 HEADER QSPI MODULE
    • EMMC 32 GB EMMC (HS400 240 MBYTES/S)
    • MICROSD-CARD SLOT (SDR104 100 MBYTES/S)
  • Connectors
    • CN1 COM Express type connector 440pin
    • CN2 QSPI Flash module
    • CN3 DEBUG JTAG
    • CN4 HDMI
    • CN5 USB 2.0
    • CN6 Push-Pull microSD Card Socket
    • CN7 Ethernet, Connector, RJ45
    • CN8 LINE Out
    • CN9 MIC Input
    • CN10 DEBUG SERIAL (not populated)
    • CN11 CPLD Programming JTAG
    • CN12 DEBUG SERIAL (serial)
    • CN13 Main Power Supply input (5VDC)
    • CN14 CPU Fan
  • Switches
    • SW1 Hyper Flash
    • SW2 Software Readable DIPSWITCHES (4x)
    • SW3 Software Readable Push button
    • SW4 Software Readable Push button
    • SW5 Software Readable Push button
    • SW6 Mode Settings
    • SW7 CPLD Reset
    • SW8 Power
    • SW9 Reset
  • Board specifications
    • Dimensions: 95mm × 95mm
    • Board thickness: 1.6mm
    • External power supply 5V / 6A max, Ripple & Noise (Vp-p) Full load 200mV
    • T opr Operating ambient temperature 0°C to 40°C Do not expose to condensation
    • Vcc 5V system power supply voltage (range 5V +- 5%)
    • I board Maximum current consumption 8A , 40W

Where to buy

R-Car Starter Kit Pro board can be ordered from following distributors:

Click to buy R-Car Starter Kit Pro board from Future Electronics - Not available
Click to buy R-Car Starter Kit Pro board from AVNET - World Wide
Click to buy R-Car Starter Kit Pro board from Marutsu-elec - Japan Only
Click to buy R-Car Starter Kit Pro board from chip1stop - Japan Only

Click to buy R-Car Starter Kit Pro board from Digi-Key - U.S Only

R-Car M3 SoC Documentation

Official board documentation

Kingfisher(R-Car Starter kit extension board)

Instruction of using M3SK with the Kingfisher board located here http://elinux.org/R-Car/Boards/Kingfisher

Quick Start How To

This sections describes steps that are necessary to run a "Hello, World!" application using Yocto build. Only Wayland is supported.

Build Yocto image

Refer to Yocto for steps necessary for making a Yocto image.

Connect 5 V power supply to the board

Use 5 V power supply with a 5.5 mm barrel plug. The power supply should be able to provide 4(Min) ~ 8(Max)Amps.

Note

  • The recommended value is 8 Amps. But, user can use 4 Amps. and 6 Amps. (depends on the use case).

Connect to serial console

Use a microUSB cable to connect the PC to R-Car Starter Kit Pro (M3ULCB) board. CN12 ("CPLD/DEBUG") must be used on Starter Kit side. It is routed to SCIF2 in the R-Car M3 via a FT232 interface converter chip.

On Linux, FT232 driver is included with kernel versions >=2.6.12. Windows driver and sources can be found on FTDI Chip website.

Serial settings are 115200 8N1. Any standard terminal emulator program can be used.

On Linux:

picocom

sudo picocom -b 115200 DEVICE

replace DEVICE with the proper tty device name, for example /dev/ttyUSB0. Running dmesg | tail can help locating proper device. After the successful connection, picocom should display:

picocom v1.7
port is  : /dev/ttyUSB0 flowcontrol  : none baudrate is  : 115200 parity is  : none databits are  : 8 escape is  : C-a local echo is  : no noinit is  : no noreset is  : no nolock is  : no send_cmd is  : sz -vv receive_cmd is : rz -vv imap is  : omap is  : emap is  : crcrlf,delbs,
Terminal ready

Use Ctrl+A, Ctrl+Q to exit picocom.

minicom

sudo minicom -b 115200 -D DEVICE

replace DEVICE with the proper tty device name, for example /dev/ttyUSB0. Running dmesg | tail can help locating proper device. After the successful connection, minicom should display:

Welcome to minicom 2.6.2
OPTIONS: I18n Compiled on Aug 7 2013, 13:32:48. Port /dev/ttyUSB0
Press CTRL-A Z for help on special keys

Use Ctrl+A, Q to exit minicom.

If you encounter problems, make sure that minicom is configured with hardware flow control off. To check this, start minicom with 'minicom -s' then select "Serial port setup" and set 'F - Hardware Flow Control' to 'No'.

Power on the board and go to U-Boot prompt

Short-press SW8 "Power" to switch the board on. Then you should see the following output in the terminal:

Welcome to minicom 2.7
OPTIONS: I18n Compiled on Jan 1 2014, 17:13:19. Port /dev/ttyUSB0, 18:31:48
Press CTRL-A Z for help on special keys
NOTICE: BL2: R-Car Gen3 Initial Program Loader(CA57) Rev.1.0.9 NOTICE: BL2: PRR is R-Car M3 ES1.0 NOTICE: BL2: Boot device is HyperFlash(80MHz) NOTICE: BL2: LCM state is CM NOTICE: BL2: AVS setting succeeded. DVFS_SetVID=0x52 NOTICE: BL2: DDR3200(rev.0.20rc8)[COLD_BOOT]..0 NOTICE: BL2: DRAM Split is 2ch NOTICE: BL2: QoS is default setting(rev.0.15) NOTICE: BL2: Lossy Decomp areas NOTICE: Entry 0: DCMPAREACRAx:0x80000540 DCMPAREACRBx:0x570 NOTICE: Entry 1: DCMPAREACRAx:0x40000000 DCMPAREACRBx:0x0 NOTICE: Entry 2: DCMPAREACRAx:0x20000000 DCMPAREACRBx:0x0 NOTICE: BL2: v1.1(release):3ad02ac NOTICE: BL2: Built : 16:12:30, Oct 24 2016 NOTICE: BL2: Normal boot NOTICE: BL2: dst=0xe6315208 src=0x8180000 len=512(0x200) NOTICE: BL2: dst=0x43f00000 src=0x8180400 len=6144(0x1800) NOTICE: BL2: dst=0x44000000 src=0x81c0000 len=65536(0x10000) NOTICE: BL2: dst=0x44100000 src=0x8200000 len=524288(0x80000) NOTICE: BL2: dst=0x50000000 src=0x8640000 len=1048576(0x100000)
U-Boot 2015.04 (Oct 24 2016 - 15:48:09)
CPU: Renesas Electronics R8A7796 rev 1.0 Board: M3ULCB I2C: ready DRAM: 1.9 GiB MMC: sh-sdhi: 0, sh-sdhi: 1 In: serial Out: serial Err: serial Net: Board Net Initialization Failed No ethernet found. Hit any key to stop autoboot: 3

Quickly hit any key to get into U-boot command prompt. Use SW9 ("Reset") to reboot the board when necessary.
You should see the following:

Hit any key to stop autoboot:  0                                                                                                            
=>

Change/update MAC address for Ethernet interface

In U-boot command line type:

=> setenv ethact ravb
=> setenv ethaddr aa:bb:cc:dd:ee:ff
=> saveenv

The original (board default) MAC address can be found on the label on top of RJ45 connector.

A user who purchased M3SK board must set the above by himself.

Configure U-Boot to boot over TFTP + NFS or from a micro SD card

Refer to Yocto page for steps necessary for running Yocto.

Serial Console

Use a micro-USB cable to connect to "Debug Serial-0" (CN10 for ws1.0, CN12 for ws1.1). Serial settings are 115200 8N1.

Booting Linux

 * Kernel config: defconfig
 * Kernel image: arch/arm64/boot/Image
 * DTB: arch/arm64/boot/dts/renesas/r8a7796-m3ulcb.dtb

U-Boot boot command:

tftpboot 0x48080000 Image
tftpboot 0x48000000 r8a7796-m3ulcb.dtb 
booti 0x48080000 - 0x48000000

Flashing firmware

Writing data (Yocto v2.23)
Filename Program Top Address Flash Save Address Description
bootparam_sa0.srec 0xE6320000 0x000000 Loader(Boot parameter)
bl2-m3ulcb.srec 0xE6304000 0x040000 Loader
cert_header_sa6.srec 0xE6320000 0x180000 Loader(Certification)
bl31-m3ulcb.srec 0x44000000 0x1C0000 ARM Trusted Firmware
tee-m3ulcb.srec 0x44100000 0x200000 OP-Tee
u-boot-elf.srec 0x50000000 0x640000 U-Boot


  1. Power off the board
  2. Press SW8
    
  3. Set SW and JP as follows:
  4. SW1=OFF
    SW6[1]=OFF, SW6[2]=OFF, SW6[3]=OFF, SW6[4]=ON
    JP1 -> 1-2 short
    
  5. Power on the board
  6. Press SW8
    Minimonitor starts and provides prompts on console
    
  7. Change SW as follows:
  8. SW1=ON
    SW6[all]=ON
    
  9. Flash bootparam_sa0.srec. In console execute xls2 command (load program to hyper flash) and provide the following inputs:
  10. 3
    y
    e6320000
    0
    type "ctrl+A S" and select upload method "ascii", then choose file for uploading "bootparam_sa0.srec", after upload finished press any key
    y
    
  11. Flash bl2-m3ulcb.srec. In console execute xls2 command (load program to hyper flash) and provide the following inputs:
  12. 3
    y
    e6304000 (e6302000 if using Yocto BSP versions v2.12 and v2.16)
    40000
    type "ctrl+A S" and select upload method "ascii", then choose file for uploading "bl2-m3ulcb.srec", after upload finished press any key
    y
    
  13. Flash cert_header_sa6.srec. In console execute xls2 command (load program to hyper flash) and provide the following inputs:
  14. 3
    y
    e6320000
    180000
    type "ctrl+A S" and select upload method "ascii", then choose file for uploading "cert_header_sa6.srec", after upload finished press any key
    y
    
  15. Flash bl31-m3ulcb.srec. In console execute xls2 command (load program to hyper flash) and provide the following inputs:
  16. 3
    y
    44000000
    1C0000
    type "ctrl+A S" and select upload method "ascii", then choose file for uploading "bl31-m3ulcb.srec", after upload finished press any key
    y
    
  17. Flash tee-m3ulcb.srec. In console execute xls2 command (load program to hyper flash) and provide the following inputs:
  18. 3
    y
    44100000
    200000
    type "ctrl+A S" and select upload method "ascii", then choose file for uploading "tee-m3ulcb.srec", after upload finished press any key
    y
    
  19. Flash u-boot-elf.srec. In console execute xls2 command (load program to hyper flash) and provide the following inputs:
  20. 3
    y
    50000000 (49000000 if using Yocto BSP version v2.12)
    640000
    type "ctrl+A S" and select upload method "ascii", then choose file for uploading "u-boot-elf.srec", after upload finished press any key
    y
    
  21. Reset the board
  22. Press SW9
    


Test procedures

FAQ

http://elinux.org/Talk:R-Car/Boards/Yocto-Gen3

Known Issues

  1. USB3.0
  2. USB3.0 host can be used via COM Ex connector(CN1). But, when connecting USB2.0 High Speed device to USB3.0 host, USB2.0 connection does not work properly for any of the following problems may occur.
    - The USB device isn't normally recognized.
    - An error occurs during communication, and USB3.0 host freezes.