RZ-G/Boards/HiHope

HiHope RZ/G2M,N,H board

NOTE: The same PCB board is used for RZ/G2M, RZ/G2N and RZ/G2H

= 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 If you are using an older V2 board, then you will need to use the "-rev2" Device Tree Files. Board V2 only
 * hihope-common.dtsi
 * r8a774a1-hihope-rzg2m.dts
 * r8a774a1-hihope-rzg2m-ex.dts
 * 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 = ; };

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 the prohibition setting is made in the Boot Mode setting, it will be in 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 MODEMR.

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.