bs=4M
+ sync
+ ```
-### Booting the Board
+2. Booting the Board
-Follow these steps to boot the board:
+ Follow these steps to boot the board:
-1. Use the board's power switch to turn off the board.
+ 1. Use the board's power switch to turn off the board.
-2. Insert the MicroSD card into the board.
+ 2. Insert the MicroSD card into the board.
-3. Verify that you have plugged in the following:
+ 3. Verify that you have plugged in the following:
- * An external monitor into the board's HDMI port
+ * An external monitor into the board's HDMI port
- * An input device (e.g. keyboard, mouse, touchscreen, and so forth) into the board's USB ports.
+ * An input device (e.g. keyboard, mouse, touchscreen, and so forth) into the board's USB ports.
-4. Use the board's power switch to turn on the board.
+ 4. Use the board's power switch to turn on the board.
-After a few seconds, you will see the AGL splash screen on the display and you
-will be able to log in at the console's terminal or using the graphic screen.
+ After a few seconds, you will see the AGL splash screen on the display and you
+ will be able to log in at the console's terminal or using the graphic screen.
-## 8. Setting Up the Serial Console
+### 3.2. Setting Up the Serial Console
Setting up the Serial Console involves the following:
@@ -494,191 +376,131 @@ Setting up the Serial Console involves the following:
* Logging into the console
* Determining the board's IP address
-### Installing a Serial Client on Your Build Host
+1. Installing a Serial Client on Your Build Host
-You need to install a serial client on your build host.
-Some examples are
-[GNU Screen](https://en.wikipedia.org/wiki/GNU_Screen),
-[picocom](https://linux.die.net/man/8/picocom),
-and
-[Minicom](https://en.wikipedia.org/wiki/Minicom).
+ You need to install a serial client on your build host.
+ Some examples are:
-Of these three, "picocom" has less dependencies and is therefore
-considered the "lightest" solution.
+ * [GNU Screen](https://en.wikipedia.org/wiki/GNU_Screen)
+ * [picocom](https://linux.die.net/man/8/picocom)
+ * [Minicom](https://en.wikipedia.org/wiki/Minicom)
-### Connecting Your Build Host to Your Renesas Board's Serial Port
+ Of these three, "picocom" has the least dependencies and is therefore
+ considered the "lightest" solution.
-You need to physically connect your build host to the Renesas board using
-a USB cable from the host to the serial CP2102 USP port (i.e. Micro USB-A port)
-on the Renesas board.
+2. Connecting Your Build Host to Your Renesas Board's Serial Port
+
+ You need to physically connect your build host to the Renesas board using
+ a USB cable from the host to the serial CP2102 USP port (i.e. Micro USB-A port)
+ on the Renesas board.
-
-
Once you connect the board, determine the device created for the serial link.
Use the ``dmesg`` command on your build host.
Here is an example:
-
-
-
-dmesg | tail 9
-[2097783.287091] usb 2-1.5.3: new full-speed USB device number 24 using ehci-pci
-[2097783.385857] usb 2-1.5.3: New USB device found, idVendor=0403, idProduct=6001
-[2097783.385862] usb 2-1.5.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
-[2097783.385864] usb 2-1.5.3: Product: FT232R USB UART
-[2097783.385866] usb 2-1.5.3: Manufacturer: FTDI
-[2097783.385867] usb 2-1.5.3: SerialNumber: AK04WWCE
-[2097783.388288] ftdi_sio 2-1.5.3:1.0: FTDI USB Serial Device converter detected
-[2097783.388330] usb 2-1.5.3: Detected FT232RL
-[2097783.388658] usb 2-1.5.3: FTDI USB Serial Device converter now attached to ttyUSB0
-
-
-
-
-The device created is usually "/dev/ttyUSB0".
-However, the number might vary depending on other USB serial ports connected to the host.
-
-To use the link, you need to launch the client.
-Here are three commands, which vary based on the serial client, that show
-how to launch the client:
+ ```sh
+ dmesg | tail 9
+ [2097783.287091] usb 2-1.5.3: new full-speed USB device number 24 using ehci-pci
+ [2097783.385857] usb 2-1.5.3: New USB device found, idVendor=0403, idProduct=6001
+ [2097783.385862] usb 2-1.5.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
+ [2097783.385864] usb 2-1.5.3: Product: FT232R USB UART
+ [2097783.385866] usb 2-1.5.3: Manufacturer: FTDI
+ [2097783.385867] usb 2-1.5.3: SerialNumber: AK04WWCE
+ [2097783.388288] ftdi_sio 2-1.5.3:1.0: FTDI USB Serial Device converter detected
+ [2097783.388330] usb 2-1.5.3: Detected FT232RL
+ [2097783.388658] usb 2-1.5.3: FTDI USB Serial Device converter now attached to ttyUSB0
+ ```
-```sh
-$ picocom -b 115200 /dev/ttyUSB0
-```
+ The device created is usually "/dev/ttyUSB0".
+ However, the number might vary depending on other USB serial ports connected to the host.
-or
+ To use the link, you need to launch the client.
+ Here are three commands, which vary based on the serial client, that show
+ how to launch the client:
-```sh
-$ minicom -b 115200 -D /dev/ttyUSB0
-```
+ ```sh
+ picocom -b 115200 /dev/ttyUSB0
+ ```
-or
+ or
-```sh
-$ screen /dev/ttyUSB0 115200
-```
+ ```sh
+ minicom -b 115200 -D /dev/ttyUSB0
+ ```
+
+ or
+
+ ```sh
+ screen /dev/ttyUSB0 115200
+ ```
+
+3. Powering on the Board to Get a Shell at the Console
+
+ Both the Pro and Premier kits (e.g.
+ [m3ulcb](https://elinux.org/R-Car/Boards/M3SK) and
+ [h3ulcb](https://elinux.org/R-Car/Boards/H3SK#Hardware)) have nine
+ switches (SW1 through SW9).
+ To power on the board, "short-press" SW8, which is the power switch.
+
+ Following, is console output for the power on process for each kit:
+
+ **h3ulcb**:
+
+ ```text
+ NOTICE: BL2: R-Car Gen3 Initial Program Loader(CA57) Rev.1.0.7
+ NOTICE: BL2: PRR is R-Car H3 ES1.1
+ NOTICE: BL2: LCM state is CM
+ NOTICE: BL2: DDR1600(rev.0.15)
+ NOTICE: BL2: DRAM Split is 4ch
+ NOTICE: BL2: QoS is Gfx Oriented(rev.0.30)
+ NOTICE: BL2: AVS setting succeeded. DVFS_SetVID=0x52
+ NOTICE: BL2: Lossy Decomp areas
+ NOTICE: Entry 0: DCMPAREACRAx:0x80000540 DCMPAREACRBx:0x570
+ NOTICE: Entry 1: DCMPAREACRAx:0x40000000 DCMPAREACRBx:0x0
+ NOTICE: Entry 2: DCMPAREACRAx:0x20000000 DCMPAREACRBx:0x0
+ NOTICE: BL2: v1.1(release):41099f4
+ NOTICE: BL2: Built : 19:20:52, Jun 9 2016
+ NOTICE: BL2: Normal boot
+ NOTICE: BL2: dst=0xe63150c8 src=0x8180000 len=36(0x24)
+ NOTICE: BL2: dst=0x43f00000 src=0x8180400 len=3072(0xc00)
+ NOTICE: BL2: dst=0x44000000 src=0x81c0000 len=65536(0x10000)
+ NOTICE: BL2: dst=0x44100000 src=0x8200000 len=524288(0x80000)
+ NOTICE: BL2: dst=0x49000000 src=0x8640000 len=1048576(0x100000)
+
+
+ U-Boot 2015.04 (Jun 09 2016 - 19:21:52)
+
+ CPU: Renesas Electronics R8A7795 rev 1.1
+ Board: H3ULCB
+ I2C: ready
+ DRAM: 3.9 GiB
+ MMC: sh-sdhi: 0, sh-sdhi: 1
+ In: serial
+ Out: serial
+ Err: serial
+ Net: Board Net Initialization Failed
+ No ethernet found.
+ Hit any key to stop autoboot: 0
+ =>
+ ```
+
+### 3.3. Setting-up U-boot
-### Powering on the Board to Get a Shell at the Console
-
-Both the Pro and Premier kits (e.g.
-[m3ulcb](https://elinux.org/R-Car/Boards/M3SK) and
-[h3ulcb](https://elinux.org/R-Car/Boards/H3SK#Hardware)) have nine
-switches (SW1 through SW9).
-To power on the board, "short-press" SW8, which is the power switch.
-
-Following, is console output for the power on process for each kit:
-
-
-
- h3ulcb:
-
-
-
-
-NOTICE: BL2: R-Car Gen3 Initial Program Loader(CA57) Rev.1.0.7
-NOTICE: BL2: PRR is R-Car H3 ES1.1
-NOTICE: BL2: LCM state is CM
-NOTICE: BL2: DDR1600(rev.0.15)
-NOTICE: BL2: DRAM Split is 4ch
-NOTICE: BL2: QoS is Gfx Oriented(rev.0.30)
-NOTICE: BL2: AVS setting succeeded. DVFS_SetVID=0x52
-NOTICE: BL2: Lossy Decomp areas
-NOTICE: Entry 0: DCMPAREACRAx:0x80000540 DCMPAREACRBx:0x570
-NOTICE: Entry 1: DCMPAREACRAx:0x40000000 DCMPAREACRBx:0x0
-NOTICE: Entry 2: DCMPAREACRAx:0x20000000 DCMPAREACRBx:0x0
-NOTICE: BL2: v1.1(release):41099f4
-NOTICE: BL2: Built : 19:20:52, Jun 9 2016
-NOTICE: BL2: Normal boot
-NOTICE: BL2: dst=0xe63150c8 src=0x8180000 len=36(0x24)
-NOTICE: BL2: dst=0x43f00000 src=0x8180400 len=3072(0xc00)
-NOTICE: BL2: dst=0x44000000 src=0x81c0000 len=65536(0x10000)
-NOTICE: BL2: dst=0x44100000 src=0x8200000 len=524288(0x80000)
-NOTICE: BL2: dst=0x49000000 src=0x8640000 len=1048576(0x100000)
-
-
-U-Boot 2015.04 (Jun 09 2016 - 19:21:52)
-
-CPU: Renesas Electronics R8A7795 rev 1.1
-Board: H3ULCB
-I2C: ready
-DRAM: 3.9 GiB
-MMC: sh-sdhi: 0, sh-sdhi: 1
-In: serial
-Out: serial
-Err: serial
-Net: Board Net Initialization Failed
-No ethernet found.
-Hit any key to stop autoboot: 0
-=>
-
-
-
-
-
-
- m3ulcb:
-
-
-
-NOTICE: BL2: R-Car Gen3 Initial Program Loader(CA57) Rev.1.0.14
-NOTICE: BL2: PRR is R-Car M3 Ver1.0
-NOTICE: BL2: Board is Starter Kit Rev1.0
-NOTICE: BL2: Boot device is HyperFlash(80MHz)
-NOTICE: BL2: LCM state is CM
-NOTICE: BL2: AVS setting succeeded. DVFS_SetVID=0x52
-NOTICE: BL2: DDR1600(rev.0.22)NOTICE: [COLD_BOOT]NOTICE: ..0
-NOTICE: BL2: DRAM Split is 2ch
-NOTICE: BL2: QoS is default setting(rev.0.17)
-NOTICE: BL2: Lossy Decomp areas
-NOTICE: Entry 0: DCMPAREACRAx:0x80000540 DCMPAREACRBx:0x570
-NOTICE: Entry 1: DCMPAREACRAx:0x40000000 DCMPAREACRBx:0x0
-NOTICE: Entry 2: DCMPAREACRAx:0x20000000 DCMPAREACRBx:0x0
-NOTICE: BL2: v1.3(release):4eef9a2
-NOTICE: BL2: Built : 00:25:19, Aug 25 2017
-NOTICE: BL2: Normal boot
-NOTICE: BL2: dst=0xe631e188 src=0x8180000 len=512(0x200)
-NOTICE: BL2: dst=0x43f00000 src=0x8180400 len=6144(0x1800)
-NOTICE: BL2: dst=0x44000000 src=0x81c0000 len=65536(0x10000)
-NOTICE: BL2: dst=0x44100000 src=0x8200000 len=524288(0x80000)
-NOTICE: BL2: dst=0x50000000 src=0x8640000 len=1048576(0x100000)
-
-
-U-Boot 2015.04-dirty (Aug 25 2017 - 10:55:49)
-
-CPU: Renesas Electronics R8A7796 rev 1.0
-Board: M3ULCB
-I2C: ready
-DRAM: 1.9 GiB
-MMC: sh-sdhi: 0, sh-sdhi: 1
-In: serial
-Out: serial
-Err: serial
-Net: ravb
-Hit any key to stop autoboot: 0
-=>
-
-
-
-
-## 9. Setting-up U-boot
-### Configuring U-Boot Parameters
+Configuring U-Boot Parameters
Follow these steps to configure the board to use the MicroSD card as the
boot device and also to set the screen resolution:
1. As the board is powering up, press any key to stop the autoboot process.
- You need to press a key quickly as you have just a few seconds in which to
- press a key.
+You need to press a key quickly as you have just a few seconds in which to
+press a key.
2. Once the autoboot process is interrupted, use the board's serial console to
- enter printenv to check if you have correct parameters for booting your board:
-
-
- Here is an example using the h3ulcb board:
-
-
-
+enter `printenv` to check if you have correct parameters for booting your board:
+ Here is an example using the **h3ulcb** board:
+
+ ```sh
=> printenv
baudrate=115200
bootargs=console=ttySC0,115200 root=/dev/mmcblk1p1 rootwait ro rootfstype=ext4
@@ -694,161 +516,278 @@ boot device and also to set the screen resolution:
ver=U-Boot 2015.04 (Jun 09 2016 - 19:21:52)
Environment size: 648/131068 bytes
-
-
-
-
-
- Here is a second example using the m3ulcb board:
-
-
-
- => printenv
- baudrate=115200
- bootargs=console=ttySC0,115200 root=/dev/mmcblk1p1 rootwait ro rootfstype=ext4
- bootcmd=run load_ker; run load_dtb; booti 0x48080000 - 0x48000000
- bootdelay=3
- fdt_high=0xffffffffffffffff
- filesize=cdeb
- initrd_high=0xffffffffffffffff
- load_dtb=ext4load mmc 0:1 0x48000000 /boot/r8a7796-m3ulcb.dtb
- load_ker=ext4load mmc 0:1 0x48080000 /boot/Image
- stderr=serial
- stdin=serial
- stdout=serial
- ver=U-Boot 2015.04 (Nov 30 2016 - 18:25:18)
+ ```
- Environment size: 557/131068 bytes
-
-
-
+3. To boot your board using the MicroSD card, be sure your environment is set up
+as follows:
- 3. To boot your board using the MicroSD card, be sure your environment is set up
- as follows:
+ ```sh
+ setenv bootargs console=ttySC0,115200 ignore_loglevel vmalloc=384M video=HDMI-A-1:1920x1080-32@60 root=/dev/mmcblk1p1 rw rootfstype=ext4 rootwait rootdelay=2
+ setenv bootcmd run load_ker\; run load_dtb\; booti 0x48080000 - 0x48000000
+ setenv load_ker ext4load mmc 0:1 0x48080000 /boot/Image
+ ```
- ```shell
- setenv bootargs console=ttySC0,115200 ignore_loglevel vmalloc=384M video=HDMI-A-1:1920x1080-32@60 root=/dev/mmcblk1p1 rw rootfstype=ext4 rootwait rootdelay=2
- setenv bootcmd run load_ker\; run load_dtb\; booti 0x48080000 - 0x48000000
- setenv load_ker ext4load mmc 0:1 0x48080000 /boot/Image
- ```
+4. Loading dtb :
- 4. Loading dtb :
+ **NOTE** : Refer [here](https://elinux.org/R-Car/Boards/Yocto-Gen3-CommonFAQ/Which_dtb_file_is_required_to_boot_linux_on_the_R-Car_Starter_Kit_board_%3F) for more information.
- **NOTE** : Refer [here](https://elinux.org/R-Car/Boards/Yocto-Gen3-CommonFAQ/Which_dtb_file_is_required_to_boot_linux_on_the_R-Car_Starter_Kit_board_%3F) for more information.
+ Make sure your ``load_dtb`` is set as follows :
- Make sure your ``load_dtb`` is set as follows :
+ | Renesas Boards | DTB Name |
+ |:-:|:-:|
+ | **H3SK v2.0(DDR 4GB)** | r8a7795-h3ulcb.dtb |
+ | **H3SK v2.0(DDR 8GB)/v3.0(DDR 8GB)** | r8a7795-h3ulcb-4x2g.dtb |
+ | **M3SK v1.0** | r8a7796-m3ulcb.dtb |
+ | **M3SK v3.0** | r8a7796-m3ulcb-2x4g.dtb |
+ | **H3SK with a Kingfisher board** | r8a7795-h3ulcb-kf.dtb |
+ | **M3SK with a Kingfisher board** | r8a7796-m3ulcb-kf.dtb |
+ | **AGL Reference Hardware board** | r8a7795-agl-refhw.dtb |
- * **H3SK v2.0(DDR 4GB)** : `$ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7795-h3ulcb.dtb`
+ ```sh
+ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7795-h3ulcb-kf.dtb
+ ```
- * **H3SK v2.0(DDR 8GB)/v3.0(DDR 8GB)** : `$ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7795-h3ulcb-4x2g.dtb`
+5. Save the boot environment:
- * **M3SK v1.0** : `$ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7796-m3ulcb.dtb`
+ ```sh
+ saveenv
+ ```
- * **M3SK v3.0** : `$ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7796-m3ulcb-2x4g.dtb`
+6. Boot the board:
- * **H3SK with a Kingfisher board** : `$ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7795-h3ulcb-kf.dtb`
+ ```sh
+ run bootcmd
+ ```
- * **M3SK with a Kingfisher board** : `$ setenv load_dtb ext4load mmc 0:1 0x48000000 /boot/r8a7796-m3ulcb-kf.dtb`
+## 4. Troubleshooting
- 5. Save the boot environment:
+### 4.1. Checking Your Configuration
- ```shell
- saveenv
- ```
+Aside from environment variables and parameters you establish through
+running the `aglsetup.sh` script, you can ensure your build's configuration
+is just how you want it by examining the `local.conf` configuration file.
- 6. Boot the board:
- ```sh
- run bootcmd
- ```
+You can find this configuration file in the Build Directory (e.g.
+`$TOP_DIR/build/conf/local.conf`).
+In general, the defaults along with the configuration fragments the
+`aglsetup.sh` script applies in the `local.conf` file are good enough.
+However, you can customize aspects by editing the `local.conf` file.
+See the
+"[Customizing Your Build](4_Customizing_Your_Build.md)"
+section for common configurations you might want to consider.
+**NOTE:** For detailed explanations of the configurations you can make
+in the ``local.conf`` file, consult the
+[Yocto Project Documentation](https://www.yoctoproject.org/docs/).
-## 10. Troubleshooting
-### Logging Into the Console
+A quick way to see if you have the `$MACHINE` variable set correctly
+is to use the following command:
-Once the board boots, you should see the
-[Wayland display](https://en.wikipedia.org/wiki/Wayland_(display_server_protocol))
-on the external monitor.
-A login prompt should appear as follows depending on your board:
+```sh
+grep -w -e "^MACHINE =" $AGL_TOP/build/conf/local.conf
+```
-**h3ulcb**:
+Depending on the Renesas board you are using, you should see output
+as follows:
```sh
-Automotive Grade Linux ${AGL_VERSION} h3ulcb ttySC0
+MACHINE = "h3ulcb"
+```
-h3ulcb login: root
+or
+
+```sh
+MACHINE = "m3ulcb"
```
-**m3ulcb**:
+or
```sh
-Automotive Grade Linux ${AGL_VERSION} m3ulcb ttySC0
+MACHINE = "h3-salvator-x"
+```
+
+If you ran the `aglsetup.sh` script as described in the
+"[Making Sure Your Build Environment is Correct](./5_3_RCar_Gen_3.md#4-making-sure-your-build-environment-is-correct)"
+section earlier, the "agl-devel", "agl-demo", "agl-netboot", "agl-appfw-smack", and
+"agl-localdev" AGL features will be in effect.
+These features provide the following:
+
+* A debugger (gdb)
+* Some tweaks, including a disabled root password
+* A SFTP server
+* The TCF Agent for easier application deployment and remote debugging
+* Some extra system tools such as USB and bluetooth
+* Support for the AGL demo platform
+* Network boot support through TFTP and NBD protocols
+* [IoT.bzh](https://iot.bzh/en/) Application Framework plus
+[SMACK](https://en.wikipedia.org/wiki/Smack_(software)) and
+[Cynara](https://wiki.tizen.org/Security:Cynara)
+* Support for local development including `localdev.inc` when present
+
+### 4.2. Check the Script's Log:
+
+Running the `aglsetup.sh` script creates the `setup.log` file, which is in
+the `build/conf` folder.
+You can examine this log to see the results of the script.
+For example, suppose the graphics drivers were missing or could not be extracted
+when you ran the script.
+In case of missing graphics drivers, you could notice an error message
+similar to the following:
+
+```text
+[snip]
+--- fragment /home/working/workspace_agl_master/meta-agl/templates/machine/h3ulcb/50_setup.sh
+/home/working/workspace_agl_master /home/working/workspace_agl_master/build_gen3
+The graphics and multimedia acceleration packages for
+the R-Car Gen3 board can be downloaded from:
+https://www.renesas.com/en-us/solutions/automotive/rcar-demoboard-2.html
+
+These 2 files from there should be store in your'/home/devel/Downloads' directory.
+ R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston8-20200923.zip
+ R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston8-20200923.zip
+/home/working/workspace_agl_master/build_gen3
+--- fragment /home/working/workspace_agl_master/meta-agl/templates/base/99_setup_EULAconf.sh
+--- end of setup script
+OK
+Generating setup file: /home/working/workspace_agl_master/build_gen3/agl-init-build-env ... OK
+------------ aglsetup.sh: Done
+[snip]
+```
+
+If you encounter this issue, or any other unwanted behavior, you can fix the error
+mentioned, remove the `$AGL_TOP/build` directory, and then re-launch the
+`aglsetup.sh` again.
+
+Here is another example that indicates the driver files could not be extracted from the downloads directory:
-m3ulcb login: root
+```text
+~/workspace_agl/build/conf $ cat setup.log
+--- beginning of setup script
+--- fragment /home/working/workspace_agl/meta-agl/templates/base/01_setup_EULAfunc.sh
+--- fragment /home/working/workspace_agl/meta-agl/templates/machine/h3ulcb/50_setup.sh
+~/workspace_agl ~/workspace_agl/build
+ERROR: FILES "+/home/working/Downloads/R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston8-20200923.zip+" NOT EXTRACTING CORRECTLY
+ERROR: FILES "+/home/working/Downloads/R-car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston8-20200923.zip+" NOT EXTRACTING CORRECTLY
+The graphics and multimedia acceleration packages for
+the R-Car Gen3 board BSP can be downloaded from:
+
+
+These 2 files from there should be stored in your
+'/home/working/Downloads' directory.
+ R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston8-20200923.zip
+ R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston8-20200923.zip
+ERROR: Script /home/working/workspace_agl/build/conf/setup.sh failed
+[snip]
+```
+
+### 4.3. Updating the Board's Firmware
+
+Follow these steps to update the firmware:
+
+1. **Update the Sample Loader and MiniMonitor:**
+
+ You only need to make these updates one time per device.
+
+ Follow the procedure found on the
+ eLinux.org wiki to update to at least version 3.02,
+ which is mandatory to run the AGL image
+ ([R-car loader update](https://elinux.org/R-Car/Boards/Kingfisher#How_to_update_of_Sample_Loader_and_MiniMonitor)).
+
+2. **Update the Firmware Stack:**
+
+ You only need to update the firmware stack if you are
+ using the Eel or later (5.0) version of AGL software.
+
+ M3 and H3 Renesas board are AArch64 platforms.
+ As such, they have a firmware stack that is divided across: **ARM Trusted Firmware**, **OP-Tee** and **U-Boot**.
+
+ If you are using the Eel (5.0) version or later of the AGL software, you must update
+ the firmware using the **[h3ulcb] [R-car h3ulcb firmware update](http://elinux.org/R-Car/Boards/H3SK#Flashing_firmware)**
+ or **[m3ulcb] [R-car m3ulcb firmware update](https://elinux.org/R-Car/Boards/M3SK#Flashing_firmware)** links from the
+ [Embedded Linux Wiki](https://www.elinux.org/Main_Page) (i.e. `elinux.org`).
+
+ The table in the wiki lists the files you need to flash the firmware.
+ You can find these files in the following directory:
+
+ ```sh
+ $AGL_TOP/build/tmp/deploy/images/$MACHINE
+ ```
+
+ **NOTE:** The Salvator-X firmware update process is not documented on eLinux.
+ **NOTE:** The AGL Reference Hardware board generally should not require a
+ firmware update to be usable, and has a slightly different update procedure.
+ If you do need to update the firmware, the procedure is documented
+ [here](https://git.automotivelinux.org/AGL/meta-agl-refhw/tree/meta-agl-refhw-gen3/docs/ReferenceHW_Rcar_gen3.md).
+
+### 4.4. Logging Into the Console
+
+Once the board boots, you should see the
+[Wayland display](https://en.wikipedia.org/wiki/Wayland_(display_server_protocol))
+on the external monitor.
+A login prompt should appear as follows depending on your board:
+
+**h3ulcb** or **AGL Reference Hardware**:
+
+```text
+Automotive Grade Linux ${AGL_VERSION} h3ulcb ttySC0
+
+h3ulcb login: root
```
At the prompt, login by using `root` as the login.
The password is "empty" so you should not be prompted for the password.
-### Determining the Board's IP Address
+### 4.5. Determining the Board's IP Address
If your board is connected to a local network using Ethernet and
if a DHCP server is able to distribute IP addresses,
you can determine the board's IP address and log in using `ssh`.
-
-
- Here is an example for the m3ulcb board:
-
-
-
- m3ulcb login: root
- Last login: Tue Dec 6 09:55:15 UTC 2016 on tty2
- root@m3ulcb:~# ip -4 a
- 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default
- inet 127.0.0.1/8 scope host lo
- valid_lft forever preferred_lft forever
- 3: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
- inet 10.0.0.27/24 brd 10.0.0.255 scope global eth0
- valid_lft forever preferred_lft forever
- root@m3ulcb:~#
-
-
-
-
-
-
- In the previous example, IP address is 10.0.0.27.
- Once you know the address, you can use `ssh` to login.
- Following is an example that shows logging into SSH and then
- displaying the contents of the `/etc/os-release` file:
-
-
-
- $ ssh root@10.0.0.27
- Last login: Tue Dec 6 10:01:11 2016 from 10.0.0.13
- root@m3ulcb:~# cat /etc/os-release
- ID="poky-agl"
- NAME="Automotive Grade Linux"
- VERSION="3.0.0+snapshot-20161202 (chinook)"
- VERSION_ID="3.0.0-snapshot-20161202"
- PRETTY_NAME="Automotive Grade Linux 3.0.0+snapshot-20161202 (chinook)"
-
-
-
-
-## 11. Supplementary Information
-
-* R-Car Generation 3 Information
-
-Refer to the following for more information from [eLinux website](https://elinux.org/R-Car).
-
-* Proprietary libraries for meta-rcar-gen3
-
-The meta-rcar-gen3 layer of meta-renesas is supported Graphic GLES(GSX)
-libraries, proprietary library of multimedia, and ICCOM software.
-
-1. Build with Renesas multimedia libraries
+Here is an example for the **h3ulcb** board:
+
+```sh
+h3ulcb login: root
+Last login: Tue Dec 6 09:55:15 UTC 2016 on tty2
+root@h3ulcb:~# ip -4 a
+1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default
+ inet 127.0.0.1/8 scope host lo
+ valid_lft forever preferred_lft forever
+3: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
+ inet 10.0.0.27/24 brd 10.0.0.255 scope global eth0
+ valid_lft forever preferred_lft forever
+root@h3ulcb:~#
+```
+
+In the previous example, IP address is 10.0.0.27.
+Once you know the address, you can use `ssh` to login.
+Following is an example that shows logging into SSH and then
+displaying the contents of the `/etc/os-release` file:
+
+```sh
+$ ssh root@10.0.0.27
+Last login: Tue Dec 6 10:01:11 2016 from 10.0.0.13
+root@h3ulcb:~# cat /etc/os-release
+ID="poky-agl"
+NAME="Automotive Grade Linux"
+VERSION="11.0.0+snapshot-20210128 (koi)"
+VERSION_ID="11.0.0-snapshot-20210128"
+PRETTY_NAME="Automotive Grade Linux 11.0.0+snapshot-20210128 (koi)"
+```
+
+## 5. Supplementary Information
+
+### 5.1. R-Car Generation 3 Information
+
+Refer to the [R-Car](https://elinux.org/R-Car) page on the
+[elinux.org](https://elinux.org) website for more information.
+
+### 5.2. Proprietary libraries for meta-rcar-gen3
+
+The meta-rcar-gen3 layer of meta-renesas supports Graphic GLES(GSX)
+libraries, proprietary multimedia libraries, and ICCOM software.
+
+### 5.3. Build with Renesas multimedia libraries
Multimedia portions depend on GLES portions.
@@ -857,89 +796,84 @@ Multimedia portions depend on GLES portions.
* Please copy proprietary libraries to the directory of recipes.
* Please set local.conf the following.
- **Enable multimedia features. This provides package group of plug-ins of the GStreamer, multimedia libraries and kernel drivers.**
- ```sh
- MACHINE_FEATURES_append = " multimedia"
- ```
+ **Enable multimedia features. This provides package group of plug-ins of the GStreamer, multimedia libraries and kernel drivers.**
+
+ ```sh
+ MACHINE_FEATURES:append = " multimedia"
+ ```
* B. Configuration for optional codecs and middleware
* Please copy proprietary libraries to the directory of recipes.
- * Add features to DISTRO_FEATURES_append to local.conf
-
-
-
- **Additional configuration in OMX module**
-
-
-
- " h263dec_lib" - for OMX Media Component H263 Decoder Library
- " h264dec_lib" - for OMX Media Component H264 Decoder Library
- " h264enc_lib" - for OMX Media Component H.264 Encoder Library
- " h265dec_lib" - for OMX Media Component H265 Decoder Library
- " mpeg2dec_lib" - for OMX Media Component MPEG2 Decoder Library
- " mpeg4dec_lib" - for OMX Media Component MPEG4 Decoder Library
- " vc1dec_lib" - for OMX Media Component VC-1 Decoder Library
- " divxdec_lib" - for OMX Media Component DivX Decoder Library
- " rvdec_lib" - for OMX Media Component RealVideo Decoder Library
- " alacdec_lib" - for OMX Media Component ALAC Decoder Library
- " flacdec_lib" - for OMX Media Component FLAC Decoder Library
- " aaclcdec_lib" - for OMX Media Component AAC-LC Decoder Library
- " aaclcdec_mdw" - for AAC-LC 2ch Decoder Middleware for Linux
- " aacpv2dec_lib" - for OMX Media Component aacPlus V2 Decoder Library
- " aacpv2dec_mdw" - for aacPlus V2 Decoder Middleware for Linux
- " mp3dec_lib" - for OMX Media Component MP3 Decoder Library
- " mp3dec_mdw" - for MP3 Decoder Middleware for Linux
- " wmadec_lib" - for OMX Media Component WMA Standard Decoder Library
- " wmadec_mdw" - for WMA Standard Decoder Middleware for Linux
- " dddec_lib" - for OMX Media Component Dolby(R) Digital Decoder Library
- " dddec_mdw" - for Dolby(R) Digital Decoder Middleware for Linux
- " aaclcenc_lib" - for OMX Media Component AAC-LC Encoder Library
- " vp8dec_lib" - for OMX Media Component VP8 Decoder Library for Linux
- " vp8enc_lib" - for OMX Media Component VP8 Encoder Library for Linux
- " vp9dec_lib" - for OMX Media Component VP9 Decoder Library for Linux
- " aaclcenc_mdw" - for AAC-LC Encoder Middleware for Linux
- " cmsbcm" - for CMS Basic Color Management Middleware for Linux
- " cmsblc" - for CMS CMM3 Backlight Control Middleware for Linux
- " cmsdgc" - for CMS VSP2 Dynamic Gamma Correction Middleware for Linux
- " dtv" - for ISDB-T DTV Software Package for Linux
- " dvd" - for DVD Core-Middleware for Linux
- " adsp" - for ADSP driver, ADSP interface and ADSP framework for Linux
- " avb" - for AVB Software Package for Linux
-
-
-
-
-
- Ex:
-
- ```sh
- DISTRO_FEATURES_append = " h264dec_lib h265dec_lib mpeg2dec_lib aaclcdec_lib aaclcdec_mdw"
- ```
+ * Add features to `DISTRO_FEATURES:append` to local.conf
+
+ **Additional configuration in OMX module**:
+
+ ```text
+ " h263dec_lib" - for OMX Media Component H263 Decoder Library
+ " h264dec_lib" - for OMX Media Component H264 Decoder Library
+ " h264enc_lib" - for OMX Media Component H.264 Encoder Library
+ " h265dec_lib" - for OMX Media Component H265 Decoder Library
+ " mpeg2dec_lib" - for OMX Media Component MPEG2 Decoder Library
+ " mpeg4dec_lib" - for OMX Media Component MPEG4 Decoder Library
+ " vc1dec_lib" - for OMX Media Component VC-1 Decoder Library
+ " divxdec_lib" - for OMX Media Component DivX Decoder Library
+ " rvdec_lib" - for OMX Media Component RealVideo Decoder Library
+ " alacdec_lib" - for OMX Media Component ALAC Decoder Library
+ " flacdec_lib" - for OMX Media Component FLAC Decoder Library
+ " aaclcdec_lib" - for OMX Media Component AAC-LC Decoder Library
+ " aaclcdec_mdw" - for AAC-LC 2ch Decoder Middleware for Linux
+ " aacpv2dec_lib" - for OMX Media Component aacPlus V2 Decoder Library
+ " aacpv2dec_mdw" - for aacPlus V2 Decoder Middleware for Linux
+ " mp3dec_lib" - for OMX Media Component MP3 Decoder Library
+ " mp3dec_mdw" - for MP3 Decoder Middleware for Linux
+ " wmadec_lib" - for OMX Media Component WMA Standard Decoder Library
+ " wmadec_mdw" - for WMA Standard Decoder Middleware for Linux
+ " dddec_lib" - for OMX Media Component Dolby(R) Digital Decoder Library
+ " dddec_mdw" - for Dolby(R) Digital Decoder Middleware for Linux
+ " aaclcenc_lib" - for OMX Media Component AAC-LC Encoder Library
+ " vp8dec_lib" - for OMX Media Component VP8 Decoder Library for Linux
+ " vp8enc_lib" - for OMX Media Component VP8 Encoder Library for Linux
+ " vp9dec_lib" - for OMX Media Component VP9 Decoder Library for Linux
+ " aaclcenc_mdw" - for AAC-LC Encoder Middleware for Linux
+ " cmsbcm" - for CMS Basic Color Management Middleware for Linux
+ " cmsblc" - for CMS CMM3 Backlight Control Middleware for Linux
+ " cmsdgc" - for CMS VSP2 Dynamic Gamma Correction Middleware for Linux
+ " dtv" - for ISDB-T DTV Software Package for Linux
+ " dvd" - for DVD Core-Middleware for Linux
+ " adsp" - for ADSP driver, ADSP interface and ADSP framework for Linux
+ " avb" - for AVB Software Package for Linux
+ ```
+
+ Example:
+
+ ```sh
+ DISTRO_FEATURES:append = " h264dec_lib h265dec_lib mpeg2dec_lib aaclcdec_lib aaclcdec_mdw"
+ ```
* C. Configuration for test packages
- Must ensure that Multimedia features have been enabled.
- (Please refer to III/A to enable Multimedia.)
+ Must ensure that Multimedia features have been enabled.
+ (Please refer to III/A to enable Multimedia.)
- * Please add feature to DISTRO_FEATURES_append to local.conf.
+ * Please add feature to `DISTRO_FEATURES:append` to local.conf.
- **Configuration for multimedia test package**
- ```sh
- DISTRO_FEATURES_append = "mm-test"
- ```
+ **Configuration for multimedia test package**
-2. Enable Linux ICCOM driver and Linux ICCOM library
+ ```sh
+ DISTRO_FEATURES:append = " mm-test"
+ ```
+### 5.4. Enable Linux ICCOM driver and Linux ICCOM library
- For Linux ICCOM driver and Linux ICCOM library
+For Linux ICCOM driver and Linux ICCOM library
- * Please copy proprietary libraries to the directory of recipes.
+* Please copy proprietary libraries to the directory of recipes.
- * Please set local.conf the following.
+* Please set the following in local.conf:
```sh
- DISTRO_FEATURES_append = "iccom"
+ DISTRO_FEATURES:append = "iccom"
```