R-Car/Boards/Porter

From eLinux.org
< R-Car
Revision as of 04:09, 15 March 2016 by Cogente (talk | contribs) (Introduction)
Jump to: navigation, search

Introduction

This is the official Wiki for Renesas R-Car M2 Porter board Rev C. Please refer to R-Car/Boards/Porter and R-Car/Boards/Porter:Hardware for Renesas R-Car M2 Porter board Rev B. Details can be found in the File:R-CarM2-KOELSCH PORTER-B PORTER C Comparison.pdf

Refer to R-Car page for Renesas R-Car SoC family. Information on Renesas R-Car E2 SILK board is on a separate page.

Hardware

Top view
For more information go to R-Car/Boards/Porter:Hardware

Hardware Features

  • R-Car M2 SoC
    • ARM®Cortex-A15 Dual Core 1.5­GHz
    • Multimedia Engine SH­4A 780 MHz
    • GPU
      • PowerVR SGX544MP2 (3D)
      • Renesas graphics processor (2D)
  • 2 GB DDR3 memory (dual channel)
  • Two flash memory chips
    • 4 MB SPI
    • 64 MB SPI
  • Debug Ethernet (100 Mbps)
  • Storage connection
    • one SATA rev. 3.1 port
    • one SD card slot
    • one microSD card slot
  • Analog Video In: ADV7180 Video Decoder
    • RCA jack
    • NTSC/PAL/SECAM autodetection
  • Audio codec: AK4643EN
    • Line In 3.5 mm jack
    • LineOut 3.5 mm jack
  • Two USB 2.0 ports
    • microUSB port supports host, device and OTG modes
  • PCI Express x1 slot
  • CAN transceiver
  • Power supply: 12V, 9 Amps
  • Dimensions: 170x125 mm

Where to buy

Porter board can be ordered from Digikey:

Click to buy Porter board

R-Car M2 SoC Documentation

Official Porter board documentation

Quick Start How To

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

Build Yocto image

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

Connect 12 V power supply to the board

Use 12 V power supply with a 5.5 mm barrel plug. The power supply should be able to provide 9 Amps.

Connect to serial console

Use a miniUSB cable to connect the PC to R-Car M2 Porter board. CN18 must be used on Porter side. It is routed to SCIF0 in the R-Car M2 via a CP2102 interface converter chip.

On Linux, CP2102 driver is included with kernel versions >=2.6.12. Windows driver and sources can be found on Silicon Labs website.

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

On Linux:

picocom
sudo picocom -b 38400 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    : 38400
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 38400 -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.

Power on the board and go to U-Boot prompt

Switch SW26 "Power" to switch the board on. Blue LEDs should lit up. Then you should see the following output in the terminal:

PORTER SPI_LOADER(DDR3L) V0.19 2015.02.12
 DEVICE S25FL512


U-Boot 2013.01.01-gc4d5d6e (Nov 13 2014 - 17:21:53)

CPU: Renesas Electronics R8A7791 rev 2.0
Board: Porter Board

DRAM:  1 GiB
MMC:   sh-sdhi: 0, sh-sdhi: 1, sh-sdhi: 2
SF: Detected S25FL512S with page size 256 KiB, total 64 MiB
In:    serial
Out:   serial
Err:   serial
Net:   sh_eth
Hit any key to stop autoboot:  0

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                                                                                                            
=> 

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

Refer to Yocto page for steps necessary for running Yocto.

Bootloader

R-Car M2 SoC can be booted from various sources. Porter board can be booted from QSPI Flash device. Porter has two SPI Flash memory chips selectable by JP2. In a standard configuration 4MB Flash S25FL032 stores original MiniMonitor firmware (for backup/rescue purposes) and 64 MB FLash S25FL512 stores U-Boot.

Boot source JP2 state
QSPI (64MB) 1-2 closed
QSPI (4MB) 2-3 closed

Updating U-Boot

You may want to update U-Boot in case of upgrade or if the board you received does not have the U-Boot flashed. Follow these steps carefully to flash U-Boot:

  1. Selects 4MB SPI Flash with MiniMonitor as a boot device. Use JP2 for this.
    MiniMonitor is loaded via SPI boot interface of R-Car M2.
  2. Connect to serial console over microUSB.
    If using picocom, start it with the following command line options:
    sudo picocom -b BAUDRATE --send-cmd "ascii-xfr -vvs" DEVICE
    

    Refer to "Connect to serial console" section for more information.

  3. Switch the board ON or reset it.
    You should see the following output on the console (version numbers can be different):
    PORTER(M2W) SPI_LOADER(DDR3L) V0.20 2015.07.14
     DEVICE S25FL032
      
    PORTER MiniMonitor SPI_BOOT 
     Work memory DRAM (H'40200000-) 
     2015.06.04 Ver0.09c ** Program on DRAM (H'40000000-)  ** 
    
    >
    
  4. Execute the ls command:
    ls
    

    You should be able to see the following output:

    Load Program to 64MB Spiflash memory (U16:S25FL512S)
    JP2(SPI_SEL) 1pin-Side! Setting OK? (Push Y key)
    

    MiniMonitor is asking to connect pins 1 and 2 of JP2.

  5. Connect pins 1 and 2 of JP2. This activates 64MB SPI Flash for U-Boot.
  6. Enter y to confirm your setting.
  7. MiniMonitor should ask now:
    Select area(1-2)> 
    

    Answer 2 and Enter.

  8. Mini monitor should display:
    Please Input User Program Start Address :
    

    Enter e6304000 for R-Car M2 and hit Enter.

  9. MiniMonitor should now display:
    Please send ! ('.' & CR stop load)
    

    Send uboot.srec file. It should be available in $WORK/build/tmp/deploy/images/porter/ folder which is generated by bitbake during Yocto build.

    picocom

    Use Ctrl+A, Ctrl+S, then select uboot.srec file and hit Enter.
    Transmission should start immediately and the progress counter should be displayed:

    *** file: /data/Renesas/Porter/build/tmp/deploy/images/porter/u-boot.srec
    ascii-xfr -vvs /data/Renesas/Porter/build/tmp/deploy/images/porter/u-boot.srec 
    ASCII upload of "/data/Renesas/Porter/build/tmp/deploy/images/porter/u-boot.srec"
    
    15.0 Kbytes transferred at 3732 CPS...
    
    minicom

    Use Ctrl+A, S, choose ascii, then locate uboot.srec file and hit Enter. Transmission should start immediately and the progress counter should be displayed:

    +-[ascii upload - Press CTRL-C to quit]-+
    |ASCII upload of "uboot.srec"           |
    |                                       |
    |                                       |
    |23.0 Kbytes transferred at 3857 CPS    |
    |                                       |
    +---------------------------------------+
    
  10. If there are some data in writing area, MiniMonitor will display:
    SPI Data Clear(H'FF) Check :H'0080000-00BFFFF Clear OK?(y/n)
    

    You can safely input "y" to override area 2 of 64MB SPI Flash.

  11. After writing is complete, MiniMonitor should display
    SPI Data Clear(H'FF) Check :H'00080000-000BFFFF Erasing..Erase Completed 
    SAVE SPI-FLASH....... complete!
    -- Save (Program Start Address & Size ) -----
    SPI Data Clear(H'FF):H'040000-07FFFF Erasing..Erase Completed 
    SAVE SPI-FLASH....... complete!
    
    ==========  SPI Flash Sector1 Save Information  =========
     Program Start Address :  H'E6304000
     Program Size          :  H'000385B8
    =========================================================
    
  12. Reboot R-Car M2 Porter board by pressing SW9 "Reset" button.
    You should see U-Boot prompt now.
    PORTER(M2W) SPI_LOADER(DDR3L) V0.20 2015.07.14
     DEVICE S25FL512
    
    
    U-Boot 2013.01.01-g74b16ba-dirty (Jun 05 2015 - 10:03:26)
    
    CPU: Renesas Electronics R8A7791 rev 3.0
    Board: Porter Board
    
    DRAM:  1 GiB
    MMC:   sh-sdhi: 0, sh-sdhi: 1
    SF: Detected S25FL512S with page size 256 KiB, total 64 MiB
    In:    serial
    Out:   serial
    Err:   serial
    Net:   sh_eth
    Hit any key to stop autoboot: 3
    

Flashing QSPI loader using MiniMonitor

You may want to flash QSPI loader in case you board does not have it pre-loaded. Follow these steps carefully to flash QSPI loader:

  1. Set jumper on pins 2 and 3 of JP2. This selects 4MB SPI Flash with MiniMonitor as a boot device.
    MiniMonitor is loaded via SPI boot interface of R-Car M2.
  2. Connect to serial console over microUSB.
    If using picocom, start it with the following command line options:
    sudo picocom -b BAUDRATE --send-cmd "ascii-xfr -vvs" DEVICE
    

    Refer to "Connect to serial console" section for more information.

  3. Switch the board ON or reset it.
    You should see the following output on the console (version numbers can be different):
    PORTER(M2W) SPI_LOADER(DDR3L) V0.20 2015.07.14                                                                               
     DEVICE S25FL032                                                                                                             
                                                                                                                                 
    PORTER MiniMonitor SPI_BOOT                                                                                                  
     Work memory DRAM (H'40200000-)                                                                                              
     2015.06.04 Ver0.09c ** Program on DRAM (H'40000000-)  **                                                                    
                                                                                                                                 
    >
    
  4. Execute the ls command:
    ls
    

    You should be able to see the following output:

    Load Program to 64MB Spiflash memory (U16:S25FL512S)
    JP2(SPI_SEL) 1pin-Side! Setting OK? (Push Y key)
    

    MiniMonitor is asking to connect pins 1 and 2 of JP2.

  5. Connect pins 1 and 2 of JP2. This activates 64MB SPI Flash for U-Boot.
  6. Enter y to confirm your setting.
  7. MiniMonitor should ask now:
    Select area(1-2)> 
    

    Answer 1 and Enter.

  8. MiniMonitor should now display:
    Please send ! ('.' & CR stop load)
    

    Send PORTER_SPL_LOADER_V020.mot file. It can be downloaded from this site File:PORTER SPL LOADER V020.mot.zip
    Unzip the file before downloading.

    picocom

    Use Ctrl+A, Ctrl+S, then select PORTER_SPL_LOADER_V020.mot file and hit Enter.
    Transmission should start immediately and the progress counter should be displayed:

    *** file: /data/Renesas/PORTER/PORTER_SPL_LOADER_V020.mot
    ascii-xfr -vvs /data/Renesas/PORTER/PORTER_SPL_LOADER_V020.mot
    ASCII upload of "/data/Renesas/PORTER/PORTER_SPL_LOADER_V020.mot"
    
    15.0 Kbytes transferred at 3732 CPS...
    
    minicom

    Use Ctrl+A, S, choose ascii, then locate PORTER_SPL_LOADER_V020.mot file and hit Enter. Transmission should start immediately and the progress counter should be displayed:

    +-[ascii upload - Press CTRL-C to quit]--------+
    |ASCII upload of "PORTER_SPL_LOADER_V020.mot"  |
    |                                              |
    |                                              |
    |23.0 Kbytes transferred at 3857 CPS           |
    |                                              |
    +----------------------------------------------+
    
  9. If there are some data in writing area, MiniMonitor will display:
    SPI Data Clear(H'FF) Check :H'00000000-0003FFFF,Clear OK?(y/n)
    

    You can safely input "y" to override area 1 of 64MB SPI Flash.

  10. After writing is complete, MiniMonitor should display
    SAVE SPI-FLASH....... complete!
    
  11. Reboot R-Car M2 Porter board by pressing SW9 "Reset" button.

You can now flash U-Boot or proceed to loading operating system.

FAQ

How do I change/update MAC address for Ethernet interface?

In U-boot command line type:

=> env delete -f ethaddr                  
=> setenv ethaddr 2e:09:0a:00:xx:xx
=> saveenv

You should see the output

Saving Environment to SPI Flash...
SF: Detected S25FL512S with page size 256 KiB, total 64 MiB
Erasing SPI flash...Writing to SPI flash...done

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

How do I connect an external LVDS display with touchscreen?

See an example for Boundary Devices BD101LCC1 display.

Which operating systems/distributions can be used with R-Car M2 Porter board?

Automotive Grade Linux (AGL) is a Linux Foundation Workgroup dedicated to creating open source software solutions for automotive applications. Porter board can be use to run an AGL distribution.

Currently (jan. 2016), this project is a work in progress but a Kickstart guide to start AGL on Renesas Porter board is already available.

Known Issues

TBD