R-Car/Boards/Porter

Introduction
This is the official Wiki for Renesas R-Car M2 Porter board.

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
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
TBD At the moment just short description is available http://am.renesas.com/applications/automotive/cis/cis_highend/rcar_m2/

TBD Add here link to public R-Car M2 datasheet

Official Porter board documentation
Hardware Manual: Setup Manual:

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.

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:   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.   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.   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-) **

>   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.   Connect pins 1 and 2 of JP2. This activates 64MB SPI Flash for U-Boot.   Enter y to confirm your setting.   MiniMonitor should ask now: Select area(1-2)> Answer 2 and Enter.   Mini monitor should display: Please Input User Program Start Address : Enter e6304000 for R-Car M2 and hit Enter. </li>  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: 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"
 * file: /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]-+ +---+ </li>  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. </li>  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!
 * ASCII upload of "uboot.srec"          |
 * 23.0 Kbytes transferred at 3857 CPS   |
 * 23.0 Kbytes transferred at 3857 CPS   |
 * 23.0 Kbytes transferred at 3857 CPS   |

=
SPI Flash Sector1 Save Information ========= Program Start Address : H'E6304000 Program Size         :  H'000385B8

=
============================================ </li>  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 </li> </ol>

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: <ol>  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. </li>  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. </li>  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-) ** > </li>  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. </li>  Connect pins 1 and 2 of JP2. This activates 64MB SPI Flash for U-Boot. </li>  Enter y to confirm your setting. </li>  MiniMonitor should ask now: Select area(1-2)> Answer 1 and Enter. </li>

 MiniMonitor should now display: Please send ! ('.' & CR stop load) Send PORTER_SPL_LOADER_V020.mot file. It can be downloaded from this site 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: ascii-xfr -vvs /data/Renesas/PORTER/PORTER_SPL_LOADER_V020.mot ASCII upload of "/data/Renesas/PORTER/PORTER_SPL_LOADER_V020.mot"
 * file: /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]+ +--+ </li>  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. </li>  After writing is complete, MiniMonitor should display SAVE SPI-FLASH....... complete! </li>  Reboot R-Car M2 Porter board by pressing SW9 "Reset" button. </li> </ol> You can now flash U-Boot or proceed to loading operating system. </ol>
 * ASCII upload of "PORTER_SPL_LOADER_V020.mot" |
 * 23.0 Kbytes transferred at 3857 CPS          |
 * 23.0 Kbytes transferred at 3857 CPS          |
 * 23.0 Kbytes transferred at 3857 CPS          |

= 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 (oct. 2015), this project is a work in progress but a Kickstart guide to start AGL on Renesas Porter board is already available.

Known Issues
TBD