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

From Renesas.info
(remove old verions)
Β 
(86 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:RZ/G2 BSP Information Page}}
{{DISPLAYTITLE:RZ/G2 and RZ/V2 BSP Information Page}}
← [[RZ-G]]
Β 
= Overview =
[[File:VLP Diagram.png|right|500px|VLP Diagram]]
* The Renesas BSPs for MPUs are distributed as '''Yocto''' builds.
* Renesas specific portions (boot loader, kernel, etc..) are store in [https://github.com/renesas-rz github] which is where the Yocto recipes pull from.
* Additional Yocto patch files are included in the renesas.com download packages that you will '''not''' find on github.
* Some libraries (graphics and video codecs) are '''proprietary''' can only be downloaded from renesas.com after registering.
* For the structure of the BSPs, there are a common Yocto layers that are used to build most Renesas software for each MPU. However, additional 'optional' software components are distributed and downloaded as "Features". There is a '''meta-rz-features''' Yocto layer directory where individual Yocto recipes can be added to a build if needed.
* The '''diagram on the above''' shows the common Yocto build in blue, and the optional Feature Packages that can be added. (Click for full size)
<br>
[[File:VLP support version overview.png|right|500px]]
* The Linux kernel is based off the [https://www.cip-project.org Civil Infrastructure Platform (CIP)] which is based off the official stable kernel trees.
* The CIP project aims to backport bug fixes and security patches for 10 years.
* The '''diagram on the right''' shows the timeline for the kernel versions used in the Renesas BSPs.
<br>
<br>
<br>
<br>
<br>
<br>


= Downloads =
= Downloads =
* <font size=+2>'''RZ/G2E, RZ/G2N, RZ/G2M, RZ/G2H'''</font>
== Linux Kernel 5.10 BSP ==
* <font size=+1> [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-cortex-a-mpus/rzg-linux-platform/rzg-marketplace/verified-linux-package Official RZ/G2 BSP Download Page] </font>
* <font size=+2>'''RZ/G2 Series: <font color=blue>RZ/G2L, RZ/G2LC, RZ/G2UL,</font> <font color=green>RZ/G2E, RZ/G2N, RZ/G2M, RZ/G2H</font>'''</font>
* <font size=+2>'''RZ/V2 Series: <font color=orange>RZ/V2L</font>'''</font>
* <font size=+1>Verified Linux Package [5.10-CIP] Version 3.0.x</font>
* <font size=+1> ⭐ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-mpus/rzg-linux-platform/rzg-marketplace/verified-linux-package/rzg-verified-linux-package Official RZ/G2 BSP Download Page] </font>
* <font size=+1> ⭐ [https://www.renesas.com/jp/en/software-tool/rzv-verified-linux-package-510-cip Official RZ/V2 BSP Download Page] </font>
* Please Download the individual components required for your MPU.
* Please use the package '''versions''' listed table. You must '''match''' the correct component packages (Graphic, Codec) versions with the BSP version you are using.
{| class="wikitable"
{| class="wikitable"
|- style="vertical-align: top;"
|- style="vertical-align: top;" =="============================================"
|
| style="width:500px" |.
|'''VLP64 v1.0.6'''
|'''VLP v3.0.4'''
|'''VLP64 v1.0.7-RT'''
|'''VLP v3.0.5-update3'''
|'''VLP64 v1.0.8'''
|- style="vertical-align: top;" =="============================================"
|'''VLP64 v1.0.9-RT'''
|πŸ“¦ '''RZ/G2 Linux Package (Common for all MPU <font color="blue">β–²</font> <font color="green">β–²</font> <font color="orange">β–²</font>Β  Β  )''' <br> ZIP file containing Yocto BSP and all documentation
|- style="vertical-align: top;"
*'''Yocto Recipe''' <br> This is the actual BSP provided in a Yocto build package
|πŸ“¦ '''RZ/G2 Linux Package (Complete Download)''' <br> ZIP file containing Yocto BSP and all documentation
*'''Release Note for Linux Package''' <br>Β  Build instructions, start with this document
|
*'''Reference Boards Linux Start-up Guide''' <br>Β  How to program the boot loaders into SPI flash
*'''BSP Component list''' <br> List of each package and version included in the default BSP build
|'''RZ/G2'''<br>(works, not official)<br><br>'''RZ/V2MA, RZ/V2M'''<br> πŸ’Ύ [https://www.renesas.com/jp/en/software-tool/rzv-verified-linux-package-510-cip Download Page]
|'''RZ/G2'''<br>πŸ’Ύ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-mpus/rzg-linux-platform/rzg-marketplace/verified-linux-package/rzg-verified-linux-package Download Page] <br><br>'''RZ/V2L'''<br> πŸ’Ύ [https://www.renesas.com/us/en/software-tool/rzv-verified-linux-package Download Page]
|- style="vertical-align: top;" =="============================================"
|🎨 '''Graphics (PowerVR) and '''🎦''' Video Codec Libraries'''
*For devices '''<font color="green">RZ/G2H, RZ/G2M, RZ/G2N, RZ/G2E</font>'''
*The "Evaluation Version" can be downloaded immediately, but has a 2 hour timeout after every board boot.
*The "Unrestricted Version" request link is at the at the bottom of the download page (see '''Note1''' below)
|N/A
|πŸ’Ύ [https://www.renesas.com/products/microcontrollers-microprocessors/rz-mpus/rzg-linux-platform/rzg-marketplace/verified-linux-package/rz-mpu-multimedia-package-rzg2h-rzg2m-rzg2n-and-rzg2e Requires V1.0.2]
|- style="vertical-align: top;" =="============================================"
|🎨 '''Graphics (Mali) Libraries'''
*For devices <font color="blue">'''RZ/G2L, RZ/G2LC'''</font>, <font color="orange">'''RZ/V2L'''</font>
*The "Evaluation Version" can be downloaded immediately, but has a '''2 hour timeout''' after every board boot.
*The "Unrestricted Version" request link is at the at the bottom of the download page (see '''Note1''' below)
|'''RZ/G2L'''<br>(use V2L V1.1.0)<br><br>'''RZ/V2L'''<br>πŸ’Ύ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rz-mpu-graphics-library-evaluation-version-rzv2l Requires V1.1.0]
|'''RZ/G2L'''<br>πŸ’Ύ [https://www.renesas.com/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rzg2l-mali-graphic-library-evaluation-version Requires V1.1.2] <br><br>'''RZ/V2L'''<br>
|- style="vertical-align: top;" ==============================================
|🎦 '''Video Codec Libraries'''
*For devices <font color="blue">'''RZ/G2L'''</font> and '''<font color="orange">RZ/V2L</font>'''
|'''RZ/G2L'''<br>(use V2L V1.1.0)<br><br>'''RZ/V2L'''<br>πŸ’Ύ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rz-mpu-video-codec-library-evaluation-version-rzv2l Requires V1.1.0]
|'''RZ/G2L'''<br>πŸ’Ύ [https://www.renesas.com/software-tool/video-codec-library-evaluation-version-rzg2l-and-rzv2l Requires V1.1.0]<br><br>'''RZ/V2L'''<br>
|- style="vertical-align: top;" ==============================================
|🌐 '''HTML5 Browser (Gecko/Firefox)''' 
*For devices <font color="blue">'''RZ/G2L'''</font>Β  '''<font color="green">RZ/G2H, RZ/G2M, RZ/G2N, RZ/G2E</font>'''
|
|
|πŸ’Ύ [https://www.renesas.com/us/en/document/esw/rzg-verified-linux-package-64bit-kernel-v108-rtk0ef0045z0011azj-v108zip?r=1163891 (link)]
|πŸ—¨οΈ [https://www.renesas.com/us/en/software-tool/rz-mpu-html5-gecko-package-v10-verified-linux-packages-510-cip V2.0.3 (Gecko102)]
|πŸ’Ύ [https://www.renesas.com/us/en/document/swe/rzg-verified-linux-package-64bit-kernel-v109-rt-rtk0ef0045z0011azj-v109rtzip?r=1163946 (link)]
|- style="vertical-align: top;" ==============================================
|- style="vertical-align: top;"
|πŸ“„ '''BSP Manual Set''' <br> Detailed information about Device Drivers and Device Tree Settings
|πŸ“¦ '''Yocto Recipe''' <br> This is the actual BSP provided in a Yocto build package
| colspan="2" |πŸ“„ [https://www.renesas.com/eu/en/document/rzg2-group-bsp-manual-set?language=en RZ/G2H, RZ/G2M, RZ/G2N, and RZ/G2E (link)]
|πŸ’Ύ [https://www.renesas.com/document/esw/yocto-recipe-packages-vlp64-v106?language=en (link)]
πŸ“„ [https://www.renesas.com/document/oth/rzg2l-group-bsp-manual-set?language=en RZ/G2L,RZ/G2LC, RZ/G2UL, RZ/V2L (link)]
|πŸ’Ύ [https://www.renesas.com/document/esw/yocto-recipe-packages-vlp64-v107-rt-rzg2bspevav107rttargz?language=en (link)]
| <center>⬆</center>
| <center>⬆</center>
|- style="vertical-align: top;"
|πŸ“¦ '''Release Note for Linux Package''' <br>Β  Build instructions, start with this document
|πŸ“„ [https://www.renesas.com/us/en/document/rln/release-note-rzg-verified-linux-package-64bit-kernel-v106?language=en (link)]
|πŸ“„ [https://www.renesas.com/document/rln/release-note-rzg-verified-linux-package-64bit-kernel-v107-rt?language=en (link)]
| <center>⬆</center>
| <center>⬆</center>
|- style="vertical-align: top;"
|πŸ“¦ '''Reference Boards Linux Start-up Guide''' <br>Β  How to program the boot loaders into SPI flash
|πŸ“„ [https://www.renesas.com/eu/en/document/rln/rzg2-reference-boards-linux-start-guide-0?language=en (link)]
|πŸ“„ [https://www.renesas.com/document/rln/rzg2-reference-boards-start-guide-1?language=enΒ  (link)]
| <center>⬆</center>
| <center>⬆</center>
|- style="vertical-align: top;"
|πŸ“¦ '''Release Note for HTML5 Linux Package''' <br> Building the HTML5 browser using the BSP requires a different set of instructions
|πŸ“„ [https://www.renesas.com/eu/en/document/rln/rzg-verified-linux-package-64bit-kernel-v106-release-note-html5?language=en (link)]
|πŸ“„ [https://www.renesas.com/document/rln/rzg-verified-linux-package-64bit-kernel-v107-rt-release-note-html5?language=en (link)]
| <center>⬆</center>
| <center>⬆</center>
|- style="vertical-align: top;"
|πŸ“¦ '''BSP Component list''' <br> List of each package and version included in the default BSP build
|πŸ“„ [https://www.renesas.com/eu/en/document/rln/rzg-verified-linux-package-64bit-kernel-v106-component-list?language=en (link)]
|πŸ“„ [https://www.renesas.com/document/rln/rzg-verified-linux-package-64bit-kernel-v107-rt-component-list?language=en (link)]
| <center>⬆</center>
| <center>⬆</center>
|- style="vertical-align: top;"
|πŸ“¦ '''RZ/G2 Group BSP Manual Set''' <br> Detailed information about Device Drivers and Device Tree Settings
|πŸ“„ [https://www.renesas.com/eu/en/document/rzg2-group-bsp-manual-set?language=en (link)]
|πŸ“„ [https://www.renesas.com/eu/en/document/rzg2-group-bsp-manual-set?language=en (link)]
|πŸ“„ [https://www.renesas.com/eu/en/document/rzg2-group-bsp-manual-set?language=en (link)]
|πŸ“„ [https://www.renesas.com/eu/en/document/rzg2-group-bsp-manual-set?language=en (link)]
|}
|}
*'''Note1 - Unrestricted Versions:''' When requesting the "Unrestricted Version", additional information about your product might be required. Additionally, but please allow '''up to 2 weeks''' for the request to complete due to internal license processing. When you submit a request, you will instantly get an email confirmation, but you will not get another email until the request has been completed.


<br>
<br>


* <font size=+2>'''RZ/G2L'''</font>
== Linux Kernel 4.19 BSP==
* <font size=+1> [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rzg2l-board-support-package-419-cip Official RZ/G2L BSP Download Page] </font>
*<font size="+2">'''RZ/G2E, RZ/G2N, RZ/G2M, RZ/G2H'''</font>
{| class="wikitable"
*<font size="+1"> ⭐ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-cortex-a-mpus/rzg-linux-platform/rzg-marketplace/verified-linux-package Official RZ/G2 BSP Download Page] </font>  
|- style="vertical-align: top;"
** Refer to '''Linux Package for 64-bit RZ/G2 (Kernel 4.19)'''
|
*Links to '''Old BSP Releases''' can be found on the last page of the '''Easy Download Guide'''
|'''BSP v1.0'''
**https://www.renesas.com/us/en/document/gde/rzg2h-m-n-e-easy-download-guide
|'''BSP v1.1'''
*The '''Evaluation Version''' can be downloaded immediately, but there is a '''timeout''' on the proprietary graphics and video codec libraries.
|- style="vertical-align: top;"
*The '''Product Version''' is available at the bottom of the page, and the timeout is removed, but due to license processing, it requires '''1 to 2 weeks''' before download.
|πŸ“¦ '''RZ/G2L Linux Package''' <br> ● '''Yocto BSP''' <br> ● '''Release Note''' <br> &emsp; β—‹ Build instructions, start with this document <br> ● '''RZ/G2L Reference Board Start-up Guide''' <br> &emsp; β—‹ How to program the boot loaders into SPI flash <br> ● '''BSP Component list''' <br> &emsp; β—‹ List of each package and version included in the default BSP build
*πŸ“¦ '''RZ/G2 Group Multimedia Package'''
|πŸ’Ύ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rzg2l-board-support-package-419-cip (link)]
**Separate Download for Graphics and Multimedia Libraries. Here you will find a link to request the '''Product Version''' (no timeout)
|πŸ’Ύ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rzg2l-board-support-package-419-cip (link)]
**https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-cortex-a-mpus/rzg-linux-platform/rzg-marketplace/verified-linux-package/rzg2-mlp-eva
|- style="vertical-align: top;"
*πŸ“¦ '''RZ/G2 Group BSP Manual Set'''
|πŸ“¦ '''RZ/G2L Mali Graphic Library''' <br> ● Files to be added to the Yocto BSP to enable Graphics
**Detailed information about Device Drivers and Device Tree Settings
|
**https://www.renesas.com/eu/en/document/rzg2-group-bsp-manual-set?language=en
|πŸ’Ύ [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-arm-based-high-end-32-64-bit-mpus/rzg2l-mali-graphic-library-evaluation-version (link)]
Β 
|- style="vertical-align: top;"
|πŸ“¦ '''RZ/G2L Group BSP Manual Set''' <br> ● Detailed information about Device Drivers and Device Tree Settings
|
|πŸ“„ [https://www.renesas.com/document/oth/rzg2l-group-bsp-manual-set-rev101?language=en (link)]
|}


This page discusses topics specific to the content and code released in the BSP.
<br>
Information on using the BSP is found on other pages such as [[RZ-G/RZG_yocto]].


= BSP Differences Between renesas.com Download and Github Version =
= BSP Differences Between renesas.com Download and Github Version=


Below are the differences between BSP you download from renesas.com and what is available on public repositories.
Below are the differences between BSP you download from renesas.com and what is available on public repositories.


'''Public Repository Clones'''<br>
'''Public Repository Clones'''<br>
* meta-gplv2/
* The only directories created by Renesas are the meta-renesas (for Linux-5.10 BSP) meta-rzg2 (for Linux-4.19 BSP).
* meta-linaro/
* When you download the BSP from Renesas, there are multiple Yocto (meta-xxx) directories. However, these directories are direct clones (no modifications) from public repositories. The repository URLs and commit IDs that were used are documented in the README.md README.md file in the meta-renesas or meta-rzg2 directory in the BSP.
* meta-openembedded/
* meta-qt5/
* meta-rzg2/
* meta-virtualization/
* poky/
These directories are direct clones (no modifications) from public repositories. The repository URLs and commit IDs that were used are documented in the [https://github.com/renesas-rz/meta-rzg2/blob/master/README.md README.md] file in the meta-rzg2 directory in the BSP.
Β 
Β 
'''Example Layers'''<br>
* meta-hmi-custom/
* meta-userboard/
These directories do not have any functionally. They are simple example templates you can use to make your own customer layers. They are only included in the renesas.com package.
Β 
Β 
'''The RZ/G2 BSP'''<br>
* meta-rzg2/
Basically, all the customizations and patches are located in the directory 'meta-rzg2'.<br>
This directory is a clone of the public repository is located here: https://github.com/renesas-rz/meta-rzg2.<br>
There are git tags for BSP version that was release.<br>
The only difference is that in the renesas.com version, the following lines were added to the local.conf files under docs/sample/conf
: DL_DIR = "${TOPDIR}/oss_packages"
: BB_NO_NETWORK = "0"
Additionally, other configuration files such as bblayers_gecko.conf and local_gecko.con are added to the renesas.com download that are not in the github version.
Β 


'''Non-public Patches'''<br>
'''Non-public Patches'''<br>
* extra/
*extra/
This directory is only in the package downloaded from renesas.com<br>
This directory is only in the package downloaded from renesas.com<br>
It contains patches that are not included in the public the meta-rzg2 repository on github. For example, the patches to enable HDMI on the boards were not posted to github because of potential license issues.
It contains patches that are not included in the public the meta-renesas or meta-rzg2 repository on github. For example, the patches to enable HDMI on the boards were not posted to github because of potential license issues.


'''Example Layers (Linux 4.19 BSP only)'''<br>
*meta-hmi-custom/
*meta-userboard/
These directories do not have any functionally. They are simple example templates you can use to make your own customer layers. They are only included in the renesas.com package.


'''Video and Multi-media Drivers'''<br>
'''Video and Multi-media Drivers (Linux 4.19 BSP only)'''<br>
* proprietary/
*proprietary/
This directory is only in the package downloaded from renesas.com<br>
This directory is only in the package downloaded from renesas.com<br>
This directory contains .zip files which are essentially the propriety closed source video and multimedia drivers. They used to be downloaded separately, but are now included when downloaded the BSP from renesas.com. When following the instructions in the "Renesas Note" that comes with the BSP, users will run the script copy_proprietary_softwares.sh which will unpack these zip files into various directories under meta-rzg2.
This directory contains .zip files which are essentially the propriety closed source video and multimedia drivers. They used to be downloaded separately, but are now included when downloaded the BSP from renesas.com. When following the instructions in the "Renesas Note" that comes with the BSP, users will run the script copy_proprietary_softwares.sh which will unpack these zip files into various directories under meta-rzg2.
'''This is only for the 4.19 BSP. For newer BSPs, the meta-rz-features directory is used.'''


= Fix the VLP64 v1.0.5-RT SDK Toolchain =
= Changes to Github Break BSP Builds=
Β 
'''The Issue:'''
When the V1.0.5-RT BSP was released, there was a bug when creating the SDK toolchain.
*Please be aware that changes to github.com effect older Yocto Recipes.
When using the SDK toolchain created by the v1.0.5-RT BSP to build a user application, you may get warning and error messages that the linker cannot find library files that you know exits.
*In summary, Yocto recipes that use git:// for the SRC URL will no longer work.
For example:
*More details from Github [https://github.blog/2021-09-01-improving-git-protocol-security-github can be found here].
<pre>
*Yocto has been updating the recipes to use https:// instead. For example, [https://git.yoctoproject.org/poky/commit/?h=dunfell&id=0810ac6b926cd901f0619e95f367efc79d4c3159 see this patch] for Dunfell.
real-ld: warning: libm.so.6, needed by /opt/poky/2.4.3/sysroots/aarch64-poky-linux/usr/lib64/libwayland-client.so, not found (try using -rpath or -rpath-link)
</pre>
Β 
This bug came as the result of using the binutils version that we import from the Debian Buster repository as part of the CIP core.
There were 2 patches that were added to teh Debian repository that do not work well with ARM64 builds under Yocto.
The fix is to simply remove the code that was added by those those 2 Debian patches.
You can read more about it here: https://github.com/renesas-rz/meta-rzg2/commit/2a6153c80d59
Β 
The Renesas VLP64 v1.0.6 BSP has this fix, but the v1.0.5-RT BSP does not.
Β 
Below are the instructions to fix your existing v1.0.5-RT BSP.
Β 
1. Open a terminal in your v1.05-RT Yocto directory and change into the meta-rzg2 directory.
<pre>
$ cd /x/x/x/rzg2_bsp_eva_v105rt
$ cd meta-rzg2
</pre>
Β 
2. Download the specific commit (as a patch file) from the meta-rzg2 repository that was added to fix this issue for the v1.0.6 BSP release.
<pre>
$ wget https://github.com/renesas-rz/meta-rzg2/commit/2a6153c80d59.patch
</pre>
Β 
3. Apply the patch. Between the v1.0.5-RT and v1.0.6 BSP, the directory "meta-rzg2/cip-core-buster/cip-core-buster-limited/binutils" was moved into "meta-rzg2/recipes-cip-core/buster-limited/binutils".
Therefore when we apply the patch, we need to change into the subdirecotry and then strip down the path from the patch file (-p3).
Also, we can ignore the whitespace warnings because we are applying a patch that creates new patch files (that will have trailing white spaces), which is a little confusing for 'git apply'.
<pre>
$ cd cip-core-buster/cip-core-buster-limited
$ git apply -p3 --whitespace=nowarn ../../2a6153c80d59.patch
$ cd ../..
</pre>
Β 
4. Do a complete rebuild of the binutils that is used in the SDK (binutils-cross-canadian-aarch64) and then recreate SDK itself.
<pre>
$ bitbake binutils-cross-canadian-aarch64 -c clean
$ bitbake binutils-cross-canadian-aarch64 -c cleansstate
$ bitbake binutils-cross-canadian-aarch64
$ bitbake core-image-qt-sdk -c populate_sdk
</pre>
Β 
5. Finally, reinstall the SDK. As always, your SDK is located in build/tmp/deploy/sdk/
<pre>
$ sudo ./poky-glibc-x86_64-core-image-qt-sdk-aarch64-toolchain-2.4.3.sh
</pre>
Β 
= Fix RZ/G2H eMMC boot for VLP64 v1.0.5-RT and v1.0.6 =
Β 
For the BSP releases of v1.0.5-RT and v1.0.6, a patch in the arm-trusted-firmware code was missing for RZ/G2H that prevented it from booting from eMMC.
While RZ/G2H eMMC boot support exists in v1.0.4, for the v1.0.5 code release, the base software repository changed from the R-Car repository to the official ARM repository and new "rzg" subdirectory were created. With all these changes, this eMMC boot patch was unfortunately missed.
Β 
Please apply the patch below to your arm-trusted-firmware code base if you are using a RZ/G2H and require booting from eMMC.
Β 
Note: The same patch file can be used for all variations of v1.0.5 and v1.0.6 releases
<pre>
$ wget https://raw.githubusercontent.com/seebe/rzg_stuff/master/build_scripts/vlp64_patches/BSP-1.0.5-RT/arm-trusted-firmware/fix-G2H-eMMC-boot_patch/0001-hihope-rzg2h-pfc-update.patch
</pre>
Β 
= Fix broken links to video files for VLP64 v1.0.5-RT and v1.0.6 =
Β 
The Renesas.com website was recently changed, and now the links for the sample video movies for the Yocto recipes-demos have become broken.
Β 
A patch to the meta-rzg2 Yocto layer is required to fix the URL.
Β 
Note: The same patch file can be used for all variations of v1.0.5 and v1.0.6 releases.


'''The Workaround'''
*For building a BSP that contain recipes that still use git://, you use the command below.
*Since this command uses --global, you only have to run it once on your PC.
<pre>
<pre>
$ rzg2_bsp_eva_v106/meta-rzg2
$ git config --global url.https://github.com/.insteadOf git://github.com/
$ wget https://raw.githubusercontent.com/seebe/rzg_stuff/master/build_scripts/vlp64_patches/BSP-1.0.6/meta-rzg2/fix-URL-change-of-video-files/0001-recipes-demos-hmi-demo-videos-update-URLs-of-video-f.patch
$ patch -p1 -i 0001-recipes-demos*.patch
</pre>
</pre>


= SPI Flash Driver for BSP 1.0.6 =
=SPI Flash Driver for BSP 1.0.6=


SPI flash write from Linux is not officially supported in V1.0.6 BSP. If you want SPI write enabled for BSP 1.0.6. Please follow the below steps:
SPI flash write from Linux is not officially supported in V1.0.6 BSP. If you want SPI write enabled for BSP 1.0.6. Please follow the below steps:

Latest revision as of 11:35, 1 March 2024


Overview

VLP Diagram
  • The Renesas BSPs for MPUs are distributed as Yocto builds.
  • Renesas specific portions (boot loader, kernel, etc..) are store in github which is where the Yocto recipes pull from.
  • Additional Yocto patch files are included in the renesas.com download packages that you will not find on github.
  • Some libraries (graphics and video codecs) are proprietary can only be downloaded from renesas.com after registering.
  • For the structure of the BSPs, there are a common Yocto layers that are used to build most Renesas software for each MPU. However, additional 'optional' software components are distributed and downloaded as "Features". There is a meta-rz-features Yocto layer directory where individual Yocto recipes can be added to a build if needed.
  • The diagram on the above shows the common Yocto build in blue, and the optional Feature Packages that can be added. (Click for full size)


VLP support version overview.png
  • The Linux kernel is based off the Civil Infrastructure Platform (CIP) which is based off the official stable kernel trees.
  • The CIP project aims to backport bug fixes and security patches for 10 years.
  • The diagram on the right shows the timeline for the kernel versions used in the Renesas BSPs.







Downloads

Linux Kernel 5.10 BSP

  • RZ/G2 Series: RZ/G2L, RZ/G2LC, RZ/G2UL, RZ/G2E, RZ/G2N, RZ/G2M, RZ/G2H
  • RZ/V2 Series: RZ/V2L
  • Verified Linux Package [5.10-CIP] Version 3.0.x
  • ⭐ Official RZ/G2 BSP Download Page
  • ⭐ Official RZ/V2 BSP Download Page
  • Please Download the individual components required for your MPU.
  • Please use the package versions listed table. You must match the correct component packages (Graphic, Codec) versions with the BSP version you are using.
. VLP v3.0.4 VLP v3.0.5-update3
πŸ“¦ RZ/G2 Linux Package (Common for all MPU β–² β–² β–² )
ZIP file containing Yocto BSP and all documentation
  • Yocto Recipe
    This is the actual BSP provided in a Yocto build package
  • Release Note for Linux Package
    Build instructions, start with this document
  • Reference Boards Linux Start-up Guide
    How to program the boot loaders into SPI flash
  • BSP Component list
    List of each package and version included in the default BSP build
RZ/G2
(works, not official)

RZ/V2MA, RZ/V2M
πŸ’Ύ Download Page
RZ/G2
πŸ’Ύ Download Page

RZ/V2L
πŸ’Ύ Download Page
🎨 Graphics (PowerVR) and 🎦 Video Codec Libraries
  • For devices RZ/G2H, RZ/G2M, RZ/G2N, RZ/G2E
  • The "Evaluation Version" can be downloaded immediately, but has a 2 hour timeout after every board boot.
  • The "Unrestricted Version" request link is at the at the bottom of the download page (see Note1 below)
N/A πŸ’Ύ Requires V1.0.2
🎨 Graphics (Mali) Libraries
  • For devices RZ/G2L, RZ/G2LC, RZ/V2L
  • The "Evaluation Version" can be downloaded immediately, but has a 2 hour timeout after every board boot.
  • The "Unrestricted Version" request link is at the at the bottom of the download page (see Note1 below)
RZ/G2L
(use V2L V1.1.0)

RZ/V2L
πŸ’Ύ Requires V1.1.0
RZ/G2L
πŸ’Ύ Requires V1.1.2

RZ/V2L
🎦 Video Codec Libraries
  • For devices RZ/G2L and RZ/V2L
RZ/G2L
(use V2L V1.1.0)

RZ/V2L
πŸ’Ύ Requires V1.1.0
RZ/G2L
πŸ’Ύ Requires V1.1.0

RZ/V2L
🌐 HTML5 Browser (Gecko/Firefox)
  • For devices RZ/G2L RZ/G2H, RZ/G2M, RZ/G2N, RZ/G2E
πŸ—¨οΈ V2.0.3 (Gecko102)
πŸ“„ BSP Manual Set
Detailed information about Device Drivers and Device Tree Settings
πŸ“„ RZ/G2H, RZ/G2M, RZ/G2N, and RZ/G2E (link)

πŸ“„ RZ/G2L,RZ/G2LC, RZ/G2UL, RZ/V2L (link)

  • Note1 - Unrestricted Versions: When requesting the "Unrestricted Version", additional information about your product might be required. Additionally, but please allow up to 2 weeks for the request to complete due to internal license processing. When you submit a request, you will instantly get an email confirmation, but you will not get another email until the request has been completed.


Linux Kernel 4.19 BSP



BSP Differences Between renesas.com Download and Github Version

Below are the differences between BSP you download from renesas.com and what is available on public repositories.

Public Repository Clones

  • The only directories created by Renesas are the meta-renesas (for Linux-5.10 BSP) meta-rzg2 (for Linux-4.19 BSP).
  • When you download the BSP from Renesas, there are multiple Yocto (meta-xxx) directories. However, these directories are direct clones (no modifications) from public repositories. The repository URLs and commit IDs that were used are documented in the README.md README.md file in the meta-renesas or meta-rzg2 directory in the BSP.

Non-public Patches

  • extra/

This directory is only in the package downloaded from renesas.com
It contains patches that are not included in the public the meta-renesas or meta-rzg2 repository on github. For example, the patches to enable HDMI on the boards were not posted to github because of potential license issues.

Example Layers (Linux 4.19 BSP only)

  • meta-hmi-custom/
  • meta-userboard/

These directories do not have any functionally. They are simple example templates you can use to make your own customer layers. They are only included in the renesas.com package.

Video and Multi-media Drivers (Linux 4.19 BSP only)

  • proprietary/

This directory is only in the package downloaded from renesas.com
This directory contains .zip files which are essentially the propriety closed source video and multimedia drivers. They used to be downloaded separately, but are now included when downloaded the BSP from renesas.com. When following the instructions in the "Renesas Note" that comes with the BSP, users will run the script copy_proprietary_softwares.sh which will unpack these zip files into various directories under meta-rzg2. This is only for the 4.19 BSP. For newer BSPs, the meta-rz-features directory is used.

Changes to Github Break BSP Builds

The Issue:

  • Please be aware that changes to github.com effect older Yocto Recipes.
  • In summary, Yocto recipes that use git:// for the SRC URL will no longer work.
  • More details from Github can be found here.
  • Yocto has been updating the recipes to use https:// instead. For example, see this patch for Dunfell.

The Workaround

  • For building a BSP that contain recipes that still use git://, you use the command below.
  • Since this command uses --global, you only have to run it once on your PC.
$ git config --global url.https://github.com/.insteadOf git://github.com/

SPI Flash Driver for BSP 1.0.6

SPI flash write from Linux is not officially supported in V1.0.6 BSP. If you want SPI write enabled for BSP 1.0.6. Please follow the below steps:

1. Add kernel patches to BSP

1.a) Please get required patch files from https://github.com/seebe/rzg_stuff/tree/master/build_scripts/vlp64_patches/BSP-1.0.6-SPI-write/kernel

$ rzg2_bsp_eva_v106/recipes-kernel/linux/linux-renesas/patches
$ mkdir v1.0.6_spi_patch
$ cd v1.0.6_spi_patch #copy patch files here

1.b) Update patches.scc file:

Yocto uses .scc file to apply patches located in ~/rzg2_bsp_eva_v106/meta-rzg2/recipes-kernel/linux/linux-renesas/patches.scc. Get updated .scc file from https://github.com/seebe/rzg_stuff/tree/master/build_scripts/vlp64_patches/BSP-1.0.6-SPI-write/

$ cd ~/rzg2_bsp_eva_v106/meta-rzg2/recipes-kernel/linux/linux-renesas/
$ wget https://raw.githubusercontent.com/seebe/rzg_stuff/master/build_scripts/vlp64_patches/BSP-1.0.6-SPI-write/patches.scc

2. Configuring kernel using menuconfig

Configure the kernel to enable Renesas SPI driver and SPI memory. The following commands initialize the BitBake environment, run the do_kernel_configme task, and launch menuconfig. These commands assume the Source Directory's top-level folder is ~/rzg2_bsp_eva_v106:

$ cd rzg2_bsp_eva_v106
$ source poky/oe-init-build-env
$ bitbake linux-renesas -c kernel_configme -f
$ bitbake linux-renesas -c menuconfig

Once menuconfig comes up, configure below kernel configuration parameters.

2.a)Enable Renesa RPC-IF driver:

.config - Linux/arm64 4.19.140 Kernel Configuration
 > Device Drivers > Memory Controller drivers

2.b)Enable SPI memory (M25P80 ):

.config - Linux/arm64 4.19.140 Kernel Configuration
 > Device Drivers > Memory Technology Device (MTD) support > Self-contained MTD device drivers 

After making your changes, simply exit the tool and save your changes to create an updated version of the .config configuration file

3. Build the image using updated BSP