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 - World Wide
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

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.19)
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

Current BSP(Yocto v2.19) does not support "reset" command on u-boot