Difference between revisions of "R-Car/Chromium/m89"

From eLinux.org
Jump to: navigation, search
(Fix some issues)
(Revert a change)
 
Line 202: Line 202:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
#:: '''Image''' is a Kernel image, '''*.dtb''' is a blob file,  '''core-image-<image_type>-<board_name>.tar.bz2''' is the rootfs, '''modules-<board_name>.tgz''' are kernel modules.
 
#:: '''Image''' is a Kernel image, '''*.dtb''' is a blob file,  '''core-image-<image_type>-<board_name>.tar.bz2''' is the rootfs, '''modules-<board_name>.tgz''' are kernel modules.
# You can now proceed with [[R-Car/Boards/Yocto-Gen3#Running_Yocto_images|Running Yocto images]]
+
# You can now proceed with [[{{PAGENAME}}#Running_Yocto_images|Running Yocto images]]
  
 
== Running Yocto images ==
 
== Running Yocto images ==

Latest revision as of 01:42, 31 March 2021


Introduction

This page contains information how to run chromium on R-Car Gen3 devices.

See also:

Topic

SW Release Information

Board name SW name Release date Note
R-Car Starter Kit ( Premier / Pro ) Yocto v5.1.0 (latest) [New!!] 2021/06/03
Yocto v3.21.0 (stable) 2019/07/09 New R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) is supported from 2020/07/10.
meta-renesas was updated on 2021/08/03.
Kingfisher Infotainment Board Yocto v5.1.0 (latest) [New!!] 2021/06/09 To check for latest information, please refer to the meta-rcar/tree/v5.1.0.
Yocto v3.21.0 (stable) 2019/08/07 To check for latest information, please refer to the meta-rcar/tree/v3.21.0.
New R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) is supported from 2020/08/02.
meta-renesas was updated on 2021/08/03.
Android 10 (stable) [New!!] 2021/07/26 R-Car Starter Kit Premier(R-Car H3) + Kingfisher is supported.
Android P (stable) 2020/09/29 R-Car Starter Kit Premier(R-Car H3) + Kingfisher is supported.
New R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) + Kingfisher is also supported from 2021/03/16.

[Note]:
The URL for downloading "Multimedia and Graphics library and related Linux drivers" has changed.
[OLD] https://www.renesas.com/us/en/solutions/automotive/rcar-download/rcar-demoboard.html
[NEW] https://www.renesas.com/us/en/application/automotive/r-car-h3-m3-h2-m2-e2-documents-software


R-Car Starter Kit is available

R-Car Starter Kit information
Board Name SoC version Hardware information Where to buy
R-Car Starter Kit Premier (H3) v3.0 Click here Click here
R-Car Starter Kit Pro (M3) v3.0 Click here Click here

R-Car Starter Kit Premier(H3 v3.0) Manufacturing Plan

  • 1st lot : Jul, 2020 (Sold Out)
  • 2nd lot : Oct, 2020 (Sold Out)
  • 3rd lot : Dec, 2020 (Sold Out)
  • 4th lot : Mar, 2021 (On Sale)

    R-Car Starter Kit Pro(M3 v3.0) Manufacturing Plan

  • 1st lot : Jul, 2020 (Sold out)
  • 2nd lot : Sep, 2020 (Sold out)
  • 3rd lot : Dec, 2020 (On Sale)

    Environment

    Host PC

    Ubuntu 18.04 LTS (64bit) is recommended as OS. 32bit version is not supported.
    Ubuntu 16.04 is not supported !!

    See also:

    Yocto BSP

    Community Yocto BSP "Yocto v4.7.0 + Yocto Project 3.1.4(Poky-3.1.4)".
    For more information, see R-Car Gen3 Community Yocto BSP Release Note.

    Confirmed Board

    Board SoC Confirmed
    R-Car Starter Kit Premier H3 v3.0 (1rank DDR) OK
    R-Car Starter Kit Premier H3 v3.0 (2rank DDR) NT
    R-Car Starter Kit Premier H3 v2.0 with 8GB DDR NT
    R-Car Starter Kit Premier H3 v2.0 with 4GB DDR NT
    R-Car Starter Kit Pro M3 v3.0 OK
    R-Car Starter Kit Pro M3 v1.0 NT

    Note Note: NT='Not Tested'

    See also:

    Chromium Version

    89.0.4389.90

    Layer information

    Layer Repo Branch Commit ID
    meta-browser git://github.com/OSSystems/meta-browser master 0d7073186806f98ba470257edb8a04f9856c46fd
    meta-clang git://github.com/kraj/meta-clang dunfell e63d6f9abba5348e2183089d6ef5ea384d7ae8d8
    meta-python2 git://git.openembedded.org/meta-python2 dunfell ed4876c1a2f0808073fa7dfb32ef1ccb907ad5de

    Required packages

    Proprietary evaluation package

    1. Download evaluation version of proprietary graphics package from Renesas.
      To download Graphics library and related Linux drivers, please use the following link:
      Download two files:
      • R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston8-20210121.zip
      • R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston8-20210121.zip

    Host PC required package

    1. Install required packages
      Ubuntu and Debian
      sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
           build-essential chrpath socat libsdl1.2-dev xterm python-crypto cpio python python3 \
           python3-pip python3-pexpect xz-utils debianutils iputils-ping libssl-dev
      
      Refer to Yocto Project Quick Start for more information.


    Building the BSP with Chromium browser

    Build using script

    1. Directory Structure
      |--build_m89.sh
      `--proprietary
         |--R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston8-20210121.zip
         `--R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston8-20210121.zip
      
    2. build script
      #!/bin/bash
      
      BOARD_LIST=("h3ulcb" "m3ulcb")
      TARGET_BOARD=$1
      PROPRIETARY_DIR=`pwd`/proprietary
      MILESTONE=$(basename ${0%.*} |cut -d'_' -f2)
      WORK=`pwd`/${TARGET_BOARD}_${MILESTONE}
      
      REPO_MANIFEST=dunfell-dev_v4.7.0.xml
      META_BROWSER_COMMIT=0d7073186806f98ba470257edb8a04f9856c46fd # 89.0.4389.90
      META_CLANG_COMMIT=e63d6f9abba5348e2183089d6ef5ea384d7ae8d8
      META_PYTHON2_COMMIT=ed4876c1a2f0808073fa7dfb32ef1ccb907ad5de
      
      GFX_MMP_LIB=R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston8-20210121.zip
      GFX_MMP_DRIVER=R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston8-20210121.zip
      
      Usage () {
          echo "Usage: $0 \${TARGET_BOARD_NAME}"
          echo "BOARD_NAME list: "
          for i in ${BOARD_LIST[@]}; do echo "  - $i"; done
          exit
      }
      
      # Check Param.
      if ! `IFS=$'\n'; echo "${BOARD_LIST[*]}" | grep -qx "${TARGET_BOARD}"`; then
          Usage
      fi
      
      mkdir -p ${WORK}
      cd ${WORK}
      
      # Clone basic Yocto layers and switch to proper branches/commits
      curl https://storage.googleapis.com/git-repo-downloads/repo > ./repo
      chmod a+x ./repo
      ./repo init -b master -m ${REPO_MANIFEST} -u https://github.com/renesas-rcar/rcar-manifest.git
      ./repo sync
      ./repo forall -c git reset --hard
      ./repo forall -c git clean -df
      
      # Clone layers in parallel
      cd ${WORK}
      git clone git://github.com/OSSystems/meta-browser &
      git clone git://github.com/kraj/meta-clang -b dunfell &
      git clone git://git.openembedded.org/meta-python2 -b dunfell &
      
      # Wait for all clone operations
      wait
      
      # Switch to proper branches/commits
      cd ${WORK}/meta-browser
      git pull; git checkout -B tmp ${META_BROWSER_COMMIT}; git clean -fd
      cd ${WORK}/meta-clang
      git pull; git checkout -B tmp ${META_CLANG_COMMIT}; git clean -fd
      cd ${WORK}/meta-python2
      git pull; git checkout -B tmp ${META_PYTHON2_COMMIT}; git clean -fd
      
      # Populate meta-renesas with proprietary software packages
      PROP_DIR=${WORK}/proprietary
      mkdir -p ${PROP_DIR}
      unzip -qo ${PROPRIETARY_DIR}/${GFX_MMP_LIB} -d ${PROP_DIR}
      unzip -qo ${PROPRIETARY_DIR}/${GFX_MMP_DRIVER} -d ${PROP_DIR}
      cd $WORK/meta-renesas
      sh meta-rcar-gen3/docs/sample/copyscript/copy_proprietary_softwares.sh -f ${PROP_DIR}
      
      cd ${WORK}
      source poky/oe-init-build-env ${WORK}/build
      
      cd ${WORK}/build
      cp ${WORK}/meta-renesas/meta-rcar-gen3/docs/sample/conf/${TARGET_BOARD}/poky-gcc/mmp/*.conf ./conf/
      cp conf/local-wayland.conf conf/local.conf
      
      cat << 'EOS' >> conf/local.conf
      DISTRO_FEATURES_append = " h264enc_lib"
      PACKAGECONFIG_pn-chromium-ozone-wayland =" proprietary-codecs"
      IMAGE_INSTALL_append = " chromium-ozone-wayland"
      IMAGE_INSTALL_append = " ntp"
      EOS
      
      # Setting for building Chromium
      ulimit -n 8192
      
      # Add layers
      bitbake-layers add-layer ../meta-python2
      bitbake-layers add-layer ../meta-clang
      bitbake-layers add-layer ../meta-browser/meta-chromium
      bitbake-layers add-layer ../meta-openembedded/meta-networking # for ntp
      
      bitbake core-image-weston
      
    3. build
      ./build_m89.sh <target_board_name>
      
      Note Note: target_board_name is "h3ulcb" or "m3ulcb"
      If the build completes successfully, all the necessary files are generated in a following directory:
      ./<target_board_name>_m89/build/tmp/deploy/images/<target_board_name>
      
      Image is a Kernel image, *.dtb is a blob file, core-image-<image_type>-<board_name>.tar.bz2 is the rootfs, modules-<board_name>.tgz are kernel modules.
    4. You can now proceed with Running Yocto images

    Running Yocto images

    Linux kernel can be booted from microSD/USB memory/eMMC/TFTP.
    Root FS can be mounted from microSD/USB memory/eMMC/NFS.
    See also R-Car/Boards/Yocto-Gen3#Running_Yocto_images.

    How to run Chromium

    chromium --no-sandbox
    

    How to test

    Test H3 v3.0(1rank DDR) M3 v3.0
    Launch Chromium OK OK
    Maximize window of Chromium OK OK
    Show "About Chromium" OK OK
    Search youtube using google OK OK
    Play video/audio on youtube OK OK
    Run webgl sample(Aquarium) OK OK

    Note Note: NT='Not Tested'

    Q&A site

    http://renesasrulz.com/r-car-h3-m3-cockpit/

    FAQ page

    https://elinux.org/R-Car/Boards/Yocto-Gen3-CommonFAQ

    Known issues and limitations

    See also R-Car/Boards/Yocto-Gen3#Known_issues_and_limitations.