Difference between revisions of "R-Car/Boards/CCPF-SK/Ubuntu"

From eLinux.org
Jump to: navigation, search
(How to setup: Update link)
(Fix some texts about network)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Template:R-Car-Gen3-Navbox}}
 
{{Template:R-Car-Gen3-Navbox}}
 
{{TOC right}}
 
{{TOC right}}
<!--
+
 
 
[[Category:R-Car]]
 
[[Category:R-Car]]
-->
+
[[Category:R-Car Gen3]]
  
 
== Introduction ==
 
== Introduction ==
Line 24: Line 24:
 
!Software !! Revision
 
!Software !! Revision
 
|-
 
|-
| Yocto BSP || [[R-Car/Boards/CCPF-SK/Yocto-Gen3/v5.5.0 | v5.5.0]]
+
| Yocto BSP || [[R-Car/Boards/CCPF-SK/Yocto-Gen3/v5.9.0 | v5.9.0]]
 
|-
 
|-
 
| Linux Kernel || v5.10.41
 
| Linux Kernel || v5.10.41
 
|-
 
|-
| Ubuntu base rootfs || [http://cdimage.ubuntu.com/ubuntu-base/releases/20.04/release/ Focal(20.04.3)]
+
| Ubuntu base rootfs || [http://cdimage.ubuntu.com/ubuntu-base/releases/20.04/release/ Focal(20.04.4)]
 
|}
 
|}
  
 
=== Host PC ===
 
=== Host PC ===
 
* if you want to build Yocto BSP, Linux host PC is required.(Prebuilt Yocto BSP bianry has been prepared.)
 
* if you want to build Yocto BSP, Linux host PC is required.(Prebuilt Yocto BSP bianry has been prepared.)
** Ubuntu 20.04/18.04 LTS (64bit) is recommended as OS. 32bit version is not supported.
+
** Ubuntu 20.04 LTS (64bit) is recommended as OS. 32bit version is not supported.
* DHCP Server
+
 
*: This instruction requires internet connection on evaluation board via DHCP Server.
+
=== Network ===
 +
* This instruction requires internet connection on evaluation board.
  
 
=== Confirmed Board ===
 
=== Confirmed Board ===
Line 43: Line 44:
 
!Board !! SoC !! Confirmed
 
!Board !! SoC !! Confirmed
 
|-
 
|-
| R-Car Starter Kit Premier || H3e-2G v3.0 || OK
+
| R-Car Starter Kit Premier || H3e-2G v3.0 || NT
 
|-
 
|-
 
| R-Car Starter Kit Premier || H3 v3.0 (1rank DDR) || OK
 
| R-Car Starter Kit Premier || H3 v3.0 (1rank DDR) || OK
Line 65: Line 66:
 
== How to setup ==
 
== How to setup ==
  
# Prepare Yocto BSP v5.5.0(core-image-minimal)
+
# Prepare Yocto BSP v5.9.0(core-image-minimal)
 
#: There are two ways to prepare Yocto BSP on the sdcard.
 
#: There are two ways to prepare Yocto BSP on the sdcard.
## How to build: [[R-Car/Boards/CCPF-SK/Yocto-Gen3/v5.5.0#BSP_case]]
+
## How to build: [[R-Car/Boards/CCPF-SK/Yocto-Gen3/v5.9.0#BSP_case]]
 
##: Write core-image-minimal-XXulcb-rootfs.tar.bz2 to sdcard.(XX is h3 or m3)
 
##: Write core-image-minimal-XXulcb-rootfs.tar.bz2 to sdcard.(XX is h3 or m3)
 
##: Copy kernel-module to /boot directory on SDcard.
 
##: Copy kernel-module to /boot directory on SDcard.
Line 73: Line 74:
 
##: Create 2nd partition for Ubuntu base rootfs and mount to /data
 
##: Create 2nd partition for Ubuntu base rootfs and mount to /data
 
##:: <syntaxhighlight lang=bash>
 
##:: <syntaxhighlight lang=bash>
mount /dev/mmcblk0p2 /data
+
mount /dev/mmcblk1p2 /data
 
</syntaxhighlight>
 
</syntaxhighlight>
 
## Prebuilt binary
 
## Prebuilt binary
 
##: Download prebuilt binary
 
##: Download prebuilt binary
##:* Binary: Under preparing
+
##:* Binary: [https://www.renesas.com/node/1596736 Download for H3], [https://www.renesas.com/node/1596751 Download for M3]
##:* (Optional) Source code: Under preparing
+
<!-- ##:* Binary: In preparation -->
 +
##:* (Optional) Source code: [https://www.renesas.com/node/1596746 Download for H3], [https://www.renesas.com/node/1596756 Download for M3]
 +
<!-- ##:* (Optional) Source code: In preparation -->
 
##: Write binary/rootfs/core-image-minimal-release-XXulcb.wic.xz to sdcard.
 
##: Write binary/rootfs/core-image-minimal-release-XXulcb.wic.xz to sdcard.
 
##:: How to setup sdcard: [[R-Car/Boards/CCPF-SK/GettingStarted#Prepare_SD_card]]
 
##:: How to setup sdcard: [[R-Car/Boards/CCPF-SK/GettingStarted#Prepare_SD_card]]
Line 90: Line 93:
 
#: Run following command on the board.
 
#: Run following command on the board.
 
#:: <syntaxhighlight lang=bash>
 
#:: <syntaxhighlight lang=bash>
wget https://elinux.org/images/8/8d/Setup-focal-rootfs.zip
+
wget https://elinux.org/images/3/38/Setup-rootfs.zip
unzip Setup-focal-rootfs.zip
+
unzip Setup-rootfs.zip
./setup-focal-rootfs.sh
+
./setup-rootfs.sh 20.04.4
 
</syntaxhighlight>
 
</syntaxhighlight>
#: setup-focal-rootfs.sh([[File:Setup-focal-rootfs.zip]])
+
#:: If you cannot download the script, please check that the board has network connection.
 +
#: setup-rootfs.sh([[File:Setup-rootfs.zip]])
 
#:<syntaxhighlight lang=bash>
 
#:<syntaxhighlight lang=bash>
#!/bin/bash
+
#!/bin/bash -eu
set -eu
+
 
 +
UBUNTU_ROOTFS_NAME=ubuntu-base-20.04.4-base-arm64.tar.gz
 +
if [ $# -eq 1 ]; then
 +
    UBUNTU_ROOTFS_NAME=ubuntu-base-$1-base-arm64.tar.gz
 +
fi
  
 
MODULES_FILEPATH="$(ls /boot/modules-*.tgz)"
 
MODULES_FILEPATH="$(ls /boot/modules-*.tgz)"
 
UBUNTU_ROOT="/data"
 
UBUNTU_ROOT="/data"
UBUNTU_VER=20.04
+
UBUNTU_VER=$(echo $UBUNTU_ROOTFS_NAME | cut -d 3 | cut -d. -f-2)
UBUNTU_ROOTFS_NAME=ubuntu-base-20.04.3-base-arm64.tar.gz
 
 
UBUNTU_ROOTFS_URL=http://cdimage.ubuntu.com/ubuntu-base/releases/${UBUNTU_VER}/release/${UBUNTU_ROOTFS_NAME}
 
UBUNTU_ROOTFS_URL=http://cdimage.ubuntu.com/ubuntu-base/releases/${UBUNTU_VER}/release/${UBUNTU_ROOTFS_NAME}
 
USERNAME="ubuntu"
 
USERNAME="ubuntu"
Line 108: Line 115:
 
if [ -e ${UBUNTU_ROOT}/etc/os-release ]; then
 
if [ -e ${UBUNTU_ROOT}/etc/os-release ]; then
 
     echo "Ubuntu has been already installed." > /dev/kmsg
 
     echo "Ubuntu has been already installed." > /dev/kmsg
 +
    exit 0
 +
fi
 +
if [ "`df | grep $UBUNTU_ROOT`" == "" ]; then
 +
    echo "$UBUNTU_ROOT is not mounted."
 
     exit 0
 
     exit 0
 
fi
 
fi
Line 157: Line 168:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
#:: Note: If there is no dhcp server, please edit above script.
 
#:: Note: If there is no dhcp server, please edit above script.
 +
#::: Example:
 +
#::: <syntaxhighlight lang=bash>
 +
DHCP_CONF="
 +
[Match]
 +
Name=eth0
 +
 +
[Network]
 +
Address=192.168.1.10/24
 +
Gateway=192.168.1.1
 +
DNS=8.8.8.8
 +
"
 +
</syntaxhighlight>
 
# Setup U-boot
 
# Setup U-boot
#: After executing script, reboot and edit bootargs to use mmcblk0p2 instead of mmcblk0p1.
+
#: After executing script, reboot and edit bootargs to use mmcblk1p2 instead of mmcblk1p1.
 
# Boot
 
# Boot
 
#: Login to Ubuntu.
 
#: Login to Ubuntu.

Latest revision as of 04:13, 14 April 2022


Introduction

This page contains information about booting ubuntu rootfs on:

This page is based on R-Car/Ubuntu page.
For more information, please refer to the R-Car/Ubuntu.

Topic

EOL Notification of the M3SK

Production of M3SK is discontinued.
See M3SK page for detail.

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.9.4 (stable) [New!!] 2024/03/28
Kingfisher Infotainment Board Yocto v5.9.0 (stable) 2022/02/14 To check for latest information, please refer to the meta-rcar/tree/v5.9.0.
Android 10 (stable) 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.9.0 (stable) 2022/02/08 Prebuilt binary is available in Quick startup guide page. (Updated on 2022/03/18)


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



Environment

Software revision

Software Revision
Yocto BSP v5.9.0
Linux Kernel v5.10.41
Ubuntu base rootfs Focal(20.04.4)

Host PC

  • if you want to build Yocto BSP, Linux host PC is required.(Prebuilt Yocto BSP bianry has been prepared.)
    • Ubuntu 20.04 LTS (64bit) is recommended as OS. 32bit version is not supported.

Network

  • This instruction requires internet connection on evaluation board.

Confirmed Board

Board SoC Confirmed
R-Car Starter Kit Premier H3e-2G v3.0 NT
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

18px <translate> Note:</translate> NT='Not Tested'

See also:

How to setup

  1. Prepare Yocto BSP v5.9.0(core-image-minimal)
    There are two ways to prepare Yocto BSP on the sdcard.
    1. How to build: R-Car/Boards/CCPF-SK/Yocto-Gen3/v5.9.0#BSP_case
      Write core-image-minimal-XXulcb-rootfs.tar.bz2 to sdcard.(XX is h3 or m3)
      Copy kernel-module to /boot directory on SDcard.
      ex.) /boot/modules-h3ulcb.tgz
      Create 2nd partition for Ubuntu base rootfs and mount to /data
      mount /dev/mmcblk1p2 /data
      
    2. Prebuilt binary
      Download prebuilt binary
      Write binary/rootfs/core-image-minimal-release-XXulcb.wic.xz to sdcard.
      How to setup sdcard: R-Car/Boards/CCPF-SK/GettingStarted#Prepare_SD_card
    Create SD card and boot Yocto BSP.
    For more detail information to boot Yocto,
    please refer to the following pages:
  2. Run rootfs setup script
    Run following command on the board.
    wget https://elinux.org/images/3/38/Setup-rootfs.zip
    unzip Setup-rootfs.zip
    ./setup-rootfs.sh 20.04.4
    
    If you cannot download the script, please check that the board has network connection.
    setup-rootfs.sh(File:Setup-rootfs.zip)
    #!/bin/bash -eu
    
    UBUNTU_ROOTFS_NAME=ubuntu-base-20.04.4-base-arm64.tar.gz
    if [ $# -eq 1 ]; then
        UBUNTU_ROOTFS_NAME=ubuntu-base-$1-base-arm64.tar.gz
    fi
    
    MODULES_FILEPATH="$(ls /boot/modules-*.tgz)"
    UBUNTU_ROOT="/data"
    UBUNTU_VER=$(echo $UBUNTU_ROOTFS_NAME | cut -d 3 | cut -d. -f-2)
    UBUNTU_ROOTFS_URL=http://cdimage.ubuntu.com/ubuntu-base/releases/${UBUNTU_VER}/release/${UBUNTU_ROOTFS_NAME}
    USERNAME="ubuntu"
    
    if [ -e ${UBUNTU_ROOT}/etc/os-release ]; then
        echo "Ubuntu has been already installed." > /dev/kmsg
        exit 0
    fi
    if [ "`df | grep $UBUNTU_ROOT`" == "" ]; then
        echo "$UBUNTU_ROOT is not mounted."
        exit 0
    fi
    
    wget ${UBUNTU_ROOTFS_URL} -O /tmp/ubuntu.tar.gz
    tar -xf /tmp/ubuntu.tar.gz -C ${UBUNTU_ROOT}
    tar -xf ${MODULES_FILEPATH} -C ${UBUNTU_ROOT}
    
    cd /lib/modules/$(uname -r)/ && depmod -a
    
    mount -t proc none ${UBUNTU_ROOT}/proc
    mount -t sysfs none ${UBUNTU_ROOT}/sys
    mount -t devtmpfs none ${UBUNTU_ROOT}/dev
    
    NAMESERVER=$(cat /etc/resolv.conf | grep nameserver | head -n 1 | awk '{print $2}')
    
    DHCP_CONF="
    [Match]
    Name=eth0
    
    [Network]
    DHCP=ipv4
    "
    
    chroot "${UBUNTU_ROOT}" sh -c " \
        export DEBIAN_FRONTEND=noninteractive \
        && echo nameserver ${NAMESERVER} >/etc/resolv.conf \
        && apt update \
        && apt install -y apt-utils perl-modules \
        && apt install -y ubuntu-standard \
        && apt install -y vim net-tools ssh sudo tzdata rsyslog udev iputils-ping \
        && apt upgrade -y \
        && echo \"${DHCP_CONF}\" > /etc/systemd/network/01-eth0.network \
        && useradd -m -s /bin/bash -G sudo ${USERNAME} \
        && echo ${USERNAME}:${USERNAME} | chpasswd \
        && echo \"${USERNAME}   ALL=(ALL) NOPASSWD:ALL\" >> /etc/sudoers \
        && systemctl enable systemd-networkd \
        && cp /usr/share/systemd/tmp.mount /etc/systemd/system/tmp.mount \
        && systemctl enable tmp.mount \
        && systemctl enable systemd-resolved \
        && rm /etc/resolv.conf \
        && ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf \
        && echo 127.0.1.1 localhost.localdomain > /etc/hosts \
        && apt update \
        && exit \
    "
    
    echo "Ubuntu base rootfs has been installed."
    
    Note: If there is no dhcp server, please edit above script.
    Example:
    DHCP_CONF="
    [Match]
    Name=eth0
    
    [Network]
    Address=192.168.1.10/24
    Gateway=192.168.1.1
    DNS=8.8.8.8
    "
    
  3. Setup U-boot
    After executing script, reboot and edit bootargs to use mmcblk1p2 instead of mmcblk1p1.
  4. Boot
    Login to Ubuntu.
    • username: ubuntu
    • password: ubuntu

Known issues and limitations

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


Q&A site

https://community.renesas.com/automotive/r-car-h3-m3-cockpit/

FAQ site