R-Car H3ULCB

Overview

R-Car H3ULCB starter kit board is based on the R-Car H3 SoC that features basic functions for next-generation car navigation systems. It is composed of a quad Cortex®-A57, a quad Cortex®-A53 cluster and a dual lockstep Cortex®-R7.

Zephyr OS support is available for both Cortex®-A cores & Cortex®-R7 core.

More information about the H3 SoC can be fount at Renesas R-Car H3 chip.

Hardware

  • H3ULCB features:

    • Storage:

      • 384KB System RAM

      • 4/8 GB LPDDR4

      • 64 MB HYPER FLASH (512 MBITS, 160 MHZ, 320 MBYTES/S)

      • 16MB QSPI FLASH (128 MBITS,80 MHZ,80 MBYTES/S)1 HEADER QSPI MODULE

      • 8/32/64/128 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 (HDMI-0)

      • CN5 USB 2.0 (USB2.0-1)

      • CN6 Push-Pull microSD Card Socket (SDHI-0)

      • 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

    • Input

      • 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

    • Output

      • LED1 HDMI / Hot Plug Sync Detect

      • LED4 Software Controllable LED

      • LED5 Software Controllable LED

      • LED6 Software Controllable LED

      • LED9 5V Main Supply

      • LED14 Backup LED

      • LED15 System Reset

Complete list of the H3ULCB board capabilities can be found on the eLinux H3SK page of the board.

More information about the board can be found at Renesas R-Car Starter Kit website.

Supported Features

The rcar_h3ulcb board supports the hardware features listed below.

on-chip / on-board
Feature integrated in the SoC / present on the board.
2 / 2
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files.
vnd,foo
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
rcar_h3ulcb
/

Type

Location

Description

Compatible

Clock control

on-chip

Renesas R8A7795 SoC Clock Pulse Generator / Module Standby and Software Reset1

renesas,r8a7795-cpg-mssr

GPIO & Headers

on-chip

Renesas RCAR GPIO1

renesas,rcar-gpio

Interrupt controller

on-chip

ARM Generic Interrupt Controller v21

arm,gic-v2

MMC

on-chip

Renesas R-Car eMMC1 1

renesas,rcar-mmc

Pin control

on-chip

Renesas R-Car Pin Function Controller1

renesas,rcar-pfc

Power management CPU operations

on-chip

Power State Coordination Interface (PSCI) version 0.21

arm,psci-0.2

Regulator

on-chip

Fixed voltage regulators3

regulator-fixed

on-board

GPIO-controlled voltage of regulators1

regulator-gpio

Serial controller

on-chip

Renesas R-Car UART controller1

renesas,rcar-scif

Timer

on-chip

per-core ARM architected timer1

arm,armv8-timer

Note

It is recommended to disable peripherals used by the R7 core on the Linux host.

Connections and IOs

The H3ULCB Starter Kit can be plugged on a Kingfisher daughter board.

H3ULCB Board

Here are official IOs figures from eLinux for H3ULCB board:

H3SK top view

H3SK bottom view

Kingfisher Infotainment daughter board

When connected to Kingfisher Infotainment board through COMExpress connector, the board is exposing much more IOs.

Here are official IOs figures from eLinux for Kingfisher Infotainment board:

Kingfisher top view

Kingfisher bottom view

GPIO

By running Zephyr on H3ULCB, the software readable push button ‘SW3’ can be used as input, and the software controllable LED ‘LED5’ can be used as output.

UART

H3ULCB board is providing two serial ports, only one is commonly available on the board, however, the second one can be made available either by welding components or by plugging the board on a Kingfisher Infotainment daughter board.

Here is information about these serial ports:

Physical Interface

Physical Location

Software Interface

Converter

Further Information

CN12 DEBUG SERIAL

ULCB Board

SCIF2

FT232RQ

Used by U-BOOT & Linux

CN10 DEBUG SERIAL

ULCB Board

SCIF1

CP2102

Non-welded

CN04 DEBUG SERIAL

Kingfisher

SCIF1

Secondary UART // Through ComExpress

H3ULCB A53 support is assigning SCIF2 as UART while R7 supports is using SCIF1. In both cases, console are set to 115200 8N1 without hardware flow control by default.

To access SCIF1 using CN04 UART interface, please follow the following pinout (depending on your Kingfisher board version):

Signal

Pin KF03

Pin KF04

RXD

3

4

TXD

5

2

RTS

4

1

CTS

6

3

GND

9

6

CAN

H3ULCB board provides two CAN interfaces. Both interfaces are available on the Kingfisher daughter board.

Physical Interface

Software Interface

Transceiver

CN17

CAN0

TCAN332GDCNT

CN18

CAN1

TCAN332GDCNT

Note

Interfaces are set to 125 kbit/s by default.

The following table lists CAN physical interfaces pinout:

Pin

Signal

1

CANH

2

CANL

3

GND

I2C

H3ULCB board provides two I2C buses. Unfortunately direct access to these buses is not available through connectors.

I2C is mainly used to manage and power on multiple of onboard chips on the H3ULCB and Kingfisher daughter board.

Embedded I2C devices and I/O expanders are not yet supported. The current I2C support therefore does not make any devices available to the user at this time.

PWM

ULCB boards provide one PWM controller with a maximum of 7 channels [0..6]. H3ULCB does provide the pwm0 from test pin CP8 only.

When plugged on a Kingfisher daughter board, pwm4 channel is available on CN7 LVDS connector.

Programming and Debugging (A53)

Flashing

At that time, no flashing method is officially supported by this Zephyr port.

Programming and Debugging (R7)

The rcar_h3ulcb board supports the runners and associated west commands listed below.

flash debug rtt attach debugserver
openocd ✅ (default) ✅ (default)

Build and flash applications as usual (see Building an Application and Run an Application for more details).

Supported Debug Probe

The “Olimex ARM-USB-OCD-H” probe is the only officially supported probe. This probe is supported by OpenOCD that is shipped with the Zephyr SDK.

The “Olimex ARM-USB-OCD-H” probe needs to be connected with a SICA20I2P adapter to CN3 on H3ULCB.

Note

See eLinux Kingfisher page “Known issues” section if you encounter problem with JTAG.

Configuring a Console

Connect a USB cable from your PC to CN04 of your Kingfisher daughter board.

Use the following settings with your serial terminal of choice (minicom, putty, etc.):

  • Speed: 115200

  • Data: 8 bits

  • Parity: None

  • Stop bits: 1

Flashing

First of all, open your serial terminal.

Applications for the rcar_h3ulcb/r8a77951/r7 board configuration can be built in the usual way (see Building an Application for more details).

# From the root of the zephyr repository
west build -b rcar_h3ulcb/r8a77951/r7 samples/hello_world
west flash

You should see the following message in the terminal:

*** Booting Zephyr OS build v2.6.0-rc1 ***
Hello World! rcar_h3ulcb

Debugging

First of all, open your serial terminal.

Here is an example for the Hello World application.

# From the root of the zephyr repository
west build -b rcar_h3ulcb/r8a77951/r7 samples/hello_world
west debug

You will then get access to a GDB session for debug.

By continuing the app, you should see the following message in the terminal:

*** Booting Zephyr OS build v2.6.0-rc1 ***
Hello World! rcar_h3ulcb

References