RZ-G/RZ-G2 HiHope: Difference between revisions

From Renesas.info
Line 22: Line 22:
1. '''Download the Linux BSP''' : Download the Linux BSP from renesas.com. More information can be found [https://renesas.info/wiki/RZ-G/RZ-G2_BSP here]
1. '''Download the Linux BSP''' : Download the Linux BSP from renesas.com. More information can be found [https://renesas.info/wiki/RZ-G/RZ-G2_BSP here]


2. '''Build Environment''' : To build the BSP, you will need a Linux PC running Ubuntu 16.04 or 18.04. If your PC is running a newer version (such as 20.04), you will need to use a container (recommended) or virtual machine to emulate that older environment. For easy instructions on how to set up a docker container for your build environment please see [https://github.com/renesas-rz/rzg2_bsp_scripts/tree/master/docker_setup]
2. '''Build Environment''' : To build the BSP, you will need a Linux PC running Ubuntu 16.04 or 18.04. If your PC is running a newer version (such as 20.04), you will need to use a container (recommended) or virtual machine to emulate that older environment. For easy instructions on how to set up a docker container for your build environment please see [https://github.com/renesas-rz/rzg2_bsp_scripts/tree/master/docker_setup here]


3. '''Build the BSP''' : The instructions for building the BSP are located in the "Release Note" document that is include in the BSP download. However, scripts have also been posted that make the setup and configuration of the Yocto build environment easer. Please see [https://github.com/renesas-rz/rzg2_bsp_scripts here] for instructions.
3. '''Build the BSP''' : The instructions for building the BSP are located in the "Release Note" document that is include in the BSP download. However, scripts have also been posted that make the setup and configuration of the Yocto build environment easer. Please see [https://github.com/renesas-rz/rzg2_bsp_scripts here] for instructions.

Revision as of 20:05, 2 July 2021

← RZ-G <img src="rzg2n-reference-board-grid_0.jpg" style="float:right">

The same PCB board is used for RZ/G2N, RZ/G2M and RZ/G2H kits since these parts are pin-to-pin compatible. The only difference is that the RZ/G2N board is populated with a single 4Gb DDR memory device while the G2M and G2H boards have dual 2Gb DDR memories.

Product Versions

Getting Started

1. Download the Linux BSP : Download the Linux BSP from renesas.com. More information can be found here

2. Build Environment : To build the BSP, you will need a Linux PC running Ubuntu 16.04 or 18.04. If your PC is running a newer version (such as 20.04), you will need to use a container (recommended) or virtual machine to emulate that older environment. For easy instructions on how to set up a docker container for your build environment please see here

3. Build the BSP : The instructions for building the BSP are located in the "Release Note" document that is include in the BSP download. However, scripts have also been posted that make the setup and configuration of the Yocto build environment easer. Please see here for instructions.

4. Prepare an SD Card : The evaluation boards are intended to be booted from SD Cards. These cards must be formatted and loaded using a Linux PC. A helpful script has been created (usb_sd_partition) and is contained in the rzg2_bsp_scripts package that was downloaded in step 3.

5. Boot the Board : After formatting and loading the SD Card and inserting it into the board, the board will automatically boot into Linux after Power On Reset. The login will be "root" (no password is needed)

Device Tree Rev2 Files

HiHope Device Tree files are located in Yocto under:

build/tmp/work-shared/hihope-rzg2m/kernel-source/arch/arm64/boot/dts/renesas/

NOTE: The file names below are for RZ/G2M (r8a774a1-hihope-rzg2m.dts), but the same applies for RZ/G2N and RZ/G2H Device Tree files.

If you have a sub-board attached (with the Ethernet connector), then you should use the "-ex" versions of the Device Tree.

Starting with VLP64 v1.0.4, the default Device Tree file will be for HiHope boards HIHOPE_RZ/G2_V3 boards or later.
You can find the version of your board printed on both the main board and sub-board.
Boards V3 or later

  • hihope-common.dtsi
  • r8a774a1-hihope-rzg2m.dts
  • r8a774a1-hihope-rzg2m-ex.dts


If you are using an older V2 board, then you will need to use the "-rev2" Device Tree Files.
Board V2 only

  • hihope-common-rev2.dtsi
  • r8a774a1-hihope-rzg2m-rev2.dts
  • r8a774a1-hihope-rzg2m-rev2-ex.dts


Enable I2C-0 on CN1801 Header

You need to add 2 new nodes in the Device Tree: One in the β€˜pfc’ section to configure pin muxing, and another node at the global level to enable to I2C peripheral interface.
Edit the file:

build/tmp/work-shared/hihope-rzg2m/kernel-source/arch/arm64/boot/dts/renesas/r8a774a1-hihope-rzg2m-ex.dts

and at the end of the file, add the following:

/*
 * Enable I2C0 on CN1801
 * GP3_14 = scl0
 * GP3_15 = sda0
 */
&pfc {
	i2c0_pins: i2c0 {
		groups = "i2c0";
		function = "i2c0";
	};
};
&i2c0 {  
    pinctrl-0 = <&i2c0_pins>;
    pinctrl-names = "default";
    status = "okay";
    clock-frequency = <100000>;
};

You can change the clock-frequency to 400000 if you like.

To rebuild the Device Tree:
1. Run this bitbake command:

bitbake -c devshell linux-renesas  

2. This will open a new window. In the new window, run:

make dtbs
exit

3. Now to repackage and copy the files into the 'deploy' directory, run this bitbake command:

bitbake linux-renesas -f -c deploy

4. Copy your new .dtb file to your SD card and boot. Then you should see the device /dev/i2c-0

5. If you have i2c-tools installed, you can use i2cdetect to confirm your device is accessible. For example:

root$ i2cdetect -y -r 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- 4a -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --


"No Boot" Message

When you get the message:

No Boot
0x00000010 0x60018118 0x00000008 

If a prohibited setting is made in the Boot Mode setting, it will result in a No Boot state.
On the HiHope-RZG2M board, the same error occurs when the following DIP SW settings are made. 0x60018118 indicates the value of Mode Monitor Register (MODEMR).

0x60018118

MD8 MD7 MD6 MD5 MD4 MD3 MD2 MD1 MD0
 1   0   0   0   1   1   0   0   0

Since MD5=0 is prohibited, it must be changed to MD5=1.
For eMMC Boot operation, it is necessary to change to MD1=1.

u-boot Configuration Files

The u-boot for the RZ/G2 configures the HW (peripherals and drivers) in multiple locations.

Board Device Tree Header Code
RZ/G2M HiHope arch/arm/dts/r8a774a1.dtsi
arch/arm/dts/hihope-common.dtsi
arch/arm/dts/r8a774a1-hihope-rzg2m.dts
arch/arm/dts/r8a774a1-hihope-rzg2m-u-boot.dts
include/configs/hihope-rzg2m.h board/renesas/hihope-rzg2m/hihope-rzg2m.c
RZ/G2N HiHope arch/arm/dts/r8a774b1.dtsi
arch/arm/dts/hihope-common.dtsi
arch/arm/dts/r8a774b1-hihope-rzg2n.dts
arch/arm/dts/r8a774b1-hihope-rzg2n-u-boot.dts
include/configs/hihope-rzg2n.h board/renesas/hihope-rzg2n/hihope-rzg2n.c
RZ/G2N HiHope arch/arm/dts/r8a774e1.dtsi
arch/arm/dts/hihope-common.dtsi
arch/arm/dts/r8a774e1-hihope-rzg2h.dts
arch/arm/dts/r8a774e1-hihope-rzg2h-u-boot.dts
include/configs/hihope-rzg2h.h board/renesas/hihope-rzg2n/hihope-rzg2h.c