Silicon Linux RZ/G2E evaluation kit (EK874)
You can make sure you have all the supporting hardware and are able to connect and talk to the board. There is no manual for the board yet, so here is what you need:
Power supply – 12V, 2.5A or more, with a center positive plug, 4.7x1.7mm in size HDMI display, preferable with touch. If it doesn’t have touch you will need a USB mouse Drivers for the serial-to-USB converter used on the board - https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers Tera Term or other terminal emulator software - https://osdn.net/projects/ttssh2/
There is an add-on micro USB cable that you need to plug into the board (in CN1). That provides console access to the board. After you install the drivers and connect to the micro USB port from your PC, you should see a new virtual COM port being created. Launch Tera Term, create a serial connection to the new COM port, set the baud rate to 115200. Turn on the board (the On/Off switch is next to the power plug) and you should see some boot messages in Tera Term and you should get to the u-boot command line where you can type.
Turning off the board - with any of the RZ/G boards it is recommended to turn off the board using the switch before unplugging the power supply.
1. Download the Linux BSP
- Download the Linux BSP from renesas.com. More information can be found on this page 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.
- ⚠️ There are 2 revisions of the EK874 board (Rev C, E). The kernel image is the same, but each board revision has a different Device Tree. Please review the table labeled "Device tree files" on page 9 of the Release Note.
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 repository.
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)
Sample and Demo Code
RZ/G2 Group Application Note and Source Codes of Sample Applications
- Sample usage and applications for using GStreamer and Qt.
RZ/G2 Door Phone Demo
- This demo shows the multi-stream capabilities of the RZ/G2. One board is intended to be a camera on a front door that will encode as H.264. Another board is intended to be inside the house to view the camera stream as well as 3 other remote mp4 streams.
"Silicon Linux" vs "iWave"
The RZ/G2E eval board is design/manufactured by Silicon Linux and distributed by iWave. So it sometimes refereed to as the “iWave board” or “Silicon Linux board”. Silicon linux is small company and does not have have distribution channel. Therefore, iWave is distributing the the Silicon linux RZ/G2E board using their channel.
Max Monitor Resolution of 1080p@30fps
The RZ/G2E has two types of display outputs - LVDS and parallel (RGB888). On the RZ/G2E evaluation board the HDMI output is connected to the parallel RGB interface. That interface has a maximum pixel clock of 75MHz which is not enough to support 1080p at 60fps, the maximum that can be supported is 1080p 30fps, or 1080i 60 fps or lower.
The problem is that most desktop displays support 1080p 60fps and that gets auto negotiated over the HDMI connection. And since the board doesn't actually support that mode, there are visual artifacts on the display. Because of that, specific display configuration settings were put into the BSP that sets the mode to 1080p 30 fps in order to show application running a 1920x1080. However, it turns out those settings work for the specific LCD display that was used for testing, but do not necessary work for many other displays. The reason they don't work is because these LCD displays don't actually support 30fps, they only support 60 fps.
One solution is to use a display that supports 1080p 30fps (although that might not be a common feature). The other option is to use a display that support lower resolutions. e.g. Use a portable touch display called GeChic 1002 which has a native resolution of 1280x800 and works fine with the RZ/G2E board.
No HDMI output for Weston
The display configuration for RZ/G2 is controlled by a file named 'weston.ini' located in the folder /etc/xdg/weston. Currently there is a section in it that sets some specific display timings. Please note, that board can only display a maximum of 1920x1080 @ 30Hz, so by default, the timing has been fixed to that.
When using the HDMI connector, you may have to edit the file /etc/xdg/weston/weston.ini on your target board and remove the "mode" line if not video shows up. This is always the case with the small 1280x800 monitors. You can just comment it out by putting a # sign at the beginning of the line.
[output] name=HDMI-A-1 #mode=79.75 1920 1976 2168 2416 1080 1083 1088 1102 -hsync +vsync
These timings force the output to be 1920x1080 30Hz. The reason we add this setting is to prevent monitor from displaying in 1920x1080 60Hz. Without this setting, the board always run in 1920x1080 60Hz (if supported by the monitor, because it will pick the highest resolution). In that case, system still work, but users will see many noise on the screen. Not all monitors support 30Hz at 1920x1080. You can use the command 'cvt 1920 1080' to see what refresh rates are supported.
Possible solutions are to change the mode line to:
mode=138.50 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync
or By just specifying 'mode=1920x1080' in weston.ini, which is the same as not specifying anything and letting the timings be auto negotiated.
Another option is to set mode to "current" and then set the resolution the kernel command line:
[output] name=HDMI-A-1 mode=current
Then in u-boot, change the boot args to specify the resolution you want:
=> setenv bootargs 'root=/dev/mmcblk0p2 rootwait video=HDMI-A-1:1280x720-32' => saveenv
NOTE: The GeChic 1002 portable touchscreen monitor (used by many Renesas people) has a native resolution of 1280x800, so you should use that instead of 720p.
=> setenv bootargs 'root=/dev/mmcblk0p2 rootwait video=HDMI-A-1:1280x800-32' => saveenv
u-boot Configuration Files
The u-boot for the RZ/G2 configures the HW (peripherals and drivers) in multiple locations.