R-Car/Chromium/m92

From eLinux.org
Jump to: navigation, search


Introduction

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

See also:

Topic

The new version of R-Car Starter Kit Premier is now on sale !!

  • Equipped with R-Car H3e-2G
    (En) https://www.renesas.com/jp/en/about/press-room/renesas-launches-r-car-gen3e-20-percent-higher-cpu-speed-automotive-infotainment-cockpit-and-digital
    (Zh) https://www.renesas.com/jp/zh/about/press-room/renesas-launches-r-car-gen3e-20-percent-higher-cpu-speed-automotive-infotainment-cockpit-and-digital
    (Jp) https://www.renesas.com/jp/ja/about/press-room/renesas-launches-r-car-gen3e-20-percent-higher-cpu-speed-automotive-infotainment-cockpit-and-digital
  • CPU performance is increased 20% by supporting up to 2GHz frequency over past products.
  • You can buy from here.

SW Release Information

Board name SW name Release date Note
R-Car Starter Kit ( Premier / Pro ) Yocto v5.5.0 (latest) [New!!] 2021/10/01
Yocto v3.21.0 (stable) 2019/07/09 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.5.0 (latest) [New!!] 2021/10/01 To check for latest information, please refer to the meta-rcar/tree/v5.5.0.
Yocto v3.21.0 (stable) 2019/08/07 To check for latest information, please refer to the meta-rcar/tree/v3.21.0.
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.
R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) + Kingfisher is also supported from 2021/11/25.
Android P (stable) 2020/09/29 R-Car Starter Kit Premier(R-Car H3) + Kingfisher is supported.
R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) + Kingfisher is also supported from 2021/03/16.
CCPF-SK Board Yocto v5.1.0 (latest) [New!!] 2021/10/01 Prebuilt binary is availeble in Quick startup guide page.


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 Premier(H3-2G v3.0) Manufacturing Plan

  • 1st lot : Nov, 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 20.04/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.2.2(Poky-3.2.2)".
    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

    92.0.4515.107

    Layer information

    Layer Repo Branch Commit ID
    meta-browser git://github.com/OSSystems/meta-browser master 157c2dcc26304edc2543e5f45e74daf70ef2b7a6
    meta-clang git://github.com/kraj/meta-clang gatesgarth 04a1194c78563524659f27941304e564956792b1
    meta-python2 git://git.openembedded.org/meta-python2 gatesgarth 3fae17aece0e6d82f56965fe501bf7080c671df8

    Required packages

    Proprietary evaluation package

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

    Host PC required package

    1. Install required packages
      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_m91.sh
      `--proprietary
         |--R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston9-20210324.zip
         `--R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston9-20210324.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=gatesgarth-dev_v4.7.0.xml
      META_BROWSER_COMMIT=157c2dcc26304edc2543e5f45e74daf70ef2b7a6 # m92
      META_CLANG_COMMIT=04a1194c78563524659f27941304e564956792b1
      META_PYTHON2_COMMIT=3fae17aece0e6d82f56965fe501bf7080c671df8
      
      GFX_MMP_LIB=R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-weston9-20210324.zip
      GFX_MMP_DRIVER=R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-weston9-20210324.zip
      
      YOCTO_PROJECT_CODENAME=$(echo ${REPO_MANIFEST} | cut -d '-' -f1)
      
      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 ${YOCTO_PROJECT_CODENAME} &
      git clone git://git.openembedded.org/meta-python2 -b ${YOCTO_PROJECT_CODENAME} &
      
      # 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_m92.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>_m91/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'

    Known issues and limitations

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


    Q&A site

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

    FAQ site