Mostly just s/master/needlefish .
Little corrections where necessary.
Add a FIXME for the platform doc/Security Blueprint
Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Change-Id: Ia54ba1a46f0575689268ff5999a1c953a6f8a54c
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/documentation/+/27894
-# agl-docs (master)
+# agl-docs (needlefish)
Revamping and restructuring Automotive Grade Linux's documentation site under
GSoD'20.
The [documentation gerrit
repository](https://gerrit.automotivelinux.org/gerrit/admin/repos/AGL/documentation)
contains AGL documentation website template and content, rendering is visible at
-[https://docs.automotivelinux.org/en/master/](hhttps://docs.automotivelinux.org/en/master/).
+[https://docs.automotivelinux.org/en/needlefish/](hhttps://docs.automotivelinux.org/en/needlefish/).
The documentation site is hosted on
[readthedocs](https://readthedocs.org/projects/automotivegradelinux/) and
corresponding builds are mentioned
### 1. QEMU (Emulation)
-1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemux86-64/deploy/images/qemux86-64/agl-demo-platform-crosssdk-qemux86-64.ext4.xz).
+1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemux86-64/deploy/images/qemux86-64/agl-demo-platform-crosssdk-qemux86-64.ext4.xz).
-2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemux86-64/deploy/images/qemux86-64/bzImage).
+2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemux86-64/deploy/images/qemux86-64/bzImage).
3. Install [QEMU](https://www.qemu.org/download/) :
**NOTE :** Please note [https://www.virtualbox.org/ticket/19873](https://www.virtualbox.org/ticket/19873) as this affects the VMs resolution.
The AGL demo images do require 1920x1080. The instructions below have been adapted.
- 1. Download the [compressed vbox disk image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemux86-64/deploy/images/qemux86-64/agl-demo-platform-crosssdk-qemux86-64.wic.vmdk.xz).
+ 1. Download the [compressed vbox disk image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemux86-64/deploy/images/qemux86-64/agl-demo-platform-crosssdk-qemux86-64.wic.vmdk.xz).
2. Install and set up [Virtual Box](https://www.virtualbox.org/wiki/Linux_Downloads).
**NOTE :** UEFI enabled system is required.
- 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemux86-64/deploy/images/qemux86-64/agl-demo-platform-crosssdk-qemux86-64.wic.xz).
+ 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemux86-64/deploy/images/qemux86-64/agl-demo-platform-crosssdk-qemux86-64.wic.xz).
2. Extract the image into USB drive :
### 1. QEMU (Emulation)
-1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemuarm/deploy/images/qemuarm/agl-demo-platform-crosssdk-qemuarm.ext4.xz).
+1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemuarm/deploy/images/qemuarm/agl-demo-platform-crosssdk-qemuarm.ext4.xz).
-2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemuarm/deploy/images/qemuarm/zImage).
+2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemuarm/deploy/images/qemuarm/zImage).
3. Install [QEMU](https://www.qemu.org/download/) :
### 2. BeagleBone Enhanced (BBE)
- 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/bbe/deploy/images/bbe/agl-demo-platform-crosssdk-bbe.wic.xz).
+ 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/bbe/deploy/images/bbe/agl-demo-platform-crosssdk-bbe.wic.xz).
2. Extract the image into the SD card of BeagleBone Enhanced :
### 1. QEMU (Emulation)
-1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemuarm64/deploy/images/qemuarm64/agl-demo-platform-crosssdk-qemuarm64.ext4.xz).
+1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemuarm64/deploy/images/qemuarm64/agl-demo-platform-crosssdk-qemuarm64.ext4.xz).
-2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemuarm64/deploy/images/qemuarm64/Image).
+2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemuarm64/deploy/images/qemuarm64/Image).
3. Install [QEMU](https://www.qemu.org/download/) :
### 2. Raspberry Pi 4
- 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/raspberrypi4/deploy/images/raspberrypi4-64/agl-demo-platform-crosssdk-raspberrypi4-64.wic.xz).
+ 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/raspberrypi4/deploy/images/raspberrypi4-64/agl-demo-platform-crosssdk-raspberrypi4-64.wic.xz).
2. Extract the image into the SD card of Raspberry Pi 4 :
**NOTE :** The prebuilt image does support **non-accelerated** graphics mode (software rendering). For **accelerated** graphics support, a local build with the neccesary graphics driver is required.
- 1. Update the [firmware](https://elinux.org/R-Car/Boards/H3SK#Flashing_firmware) using files from [here](https://download.automotivelinux.org/AGL/snapshots/master/latest/h3ulcb-nogfx/deploy/images/h3ulcb/).
+ 1. Update the [firmware](https://elinux.org/R-Car/Boards/H3SK#Flashing_firmware) using files from [here](https://download.automotivelinux.org/AGL/release/needlefish/latest/h3ulcb-nogfx/deploy/images/h3ulcb/).
- 2. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/snapshots/master/latest/h3ulcb-nogfx/deploy/images/h3ulcb/agl-demo-platform-crosssdk-h3ulcb.wic.xz).
+ 2. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/needlefish/latest/h3ulcb-nogfx/deploy/images/h3ulcb/agl-demo-platform-crosssdk-h3ulcb.wic.xz).
3. Extract the image into the boot device :
**NOTE:** This entire section presumes you want to build an image.
You can skip the entire build process if you want to use a ready-made
development image.
-The [supported images](https://download.automotivelinux.org/AGL/snapshots/master/latest/) exist for several boards as
+The [supported images](https://download.automotivelinux.org/AGL/release/needlefish/latest/) exist for several boards as
well as for the Quick EMUlator (QEMU).
See the
"[Quickstart](../1_Quickstart/Using_Ready_Made_Images.md)"
Using the latest stable release gives you a solid snapshot of the
latest know release.
The release is static, tested, and known to work.
- To download the latest stable release branch (i.e. Jellyfish), use
+ To download the latest stable release branch (i.e. Needlefish), use
the following commands:
```sh
$ cd $AGL_TOP
$ mkdir koi
$ cd koi
- $ repo init -b koi -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
+ $ repo init -b needlefish -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
$ repo sync
```
├── bsp
├── external
├── meta-agl
- ├── meta-agl-cluster-demo
├── meta-agl-demo
├── meta-agl-devel
- ├── meta-agl-extra
- └── meta-agl-telematics-demo
```
You can find this script here:
```sh
-$AGL_TOP/master/meta-agl/scripts/aglsetup.sh
+$AGL_TOP/needlefish/meta-agl/scripts/aglsetup.sh
```
The script accepts many options that allow you to define build parameters such
Use the following commands to see the available options and script syntax:
```sh
-$ cd $AGL_TOP/master
+$ cd $AGL_TOP/needlefish
$ source meta-agl/scripts/aglsetup.sh -h
```
Running the script creates the Build Directory if it does not already exist.
The default Build Directory is `$AGL_TOP/<release-branch-name>/build`, and the nomenclature to be used throughout this doc is going to be `$AGL_TOP/<release-branch-name>/<build-dir>`
-For this example, the Build Directory is `$AGL_TOP/master/qemux86-64`.
+For this example, the Build Directory is `$AGL_TOP/needlefish/qemux86-64`.
The script's output also indicates the machine and AGL features selected for the build.
To use mirrors, add this line to your `local.conf` file in the Build directory:
```sh
-SSTATE_MIRRORS_append = " file://.* https://download.automotivelinux.org/sstate-mirror/master/${DEFAULTTUNE}/PATH \n "
+SSTATE_MIRRORS_append = " file://.* https://download.automotivelinux.org/sstate-mirror/${AGL_BRANCH}/${DEFAULTTUNE}/PATH \n "
```
You can learn more about shared state and how it is used in the
$ echo "# reuse download directories" >> $AGL_TOP/site.conf
$ echo "DL_DIR = \"$HOME/downloads/\"" >> $AGL_TOP/site.conf
$ echo "SSTATE_DIR = \"$AGL_TOP/sstate-cache/\"" >> $AGL_TOP/site.conf
-$ cd $AGL_TOP/master/qemux86-64/
+$ cd $AGL_TOP/needlefish/qemux86-64/
$ ln -sf $AGL_TOP/site.conf conf/
In General;
For this example :
```sh
-$ source $AGL_TOP/master/qemux86-64/agl-init-build-env
+$ source $AGL_TOP/needlefish/qemux86-64/agl-init-build-env
```
In general :
----
+---
title: Building for Supported Renesas Boards
---
| AGL Version | Renesas version |
|:-:|:-:|
- | AGL master | 5.9.0 |
+ | AGL needlefish | 5.9.0 |
3. **Download the Files:**
```
## 3. Download the AGL Source Files
-- **AGL Version:** Magic Marlin
+- **AGL Version:** Nifty Needlefish (tip op branch)
```bash
cd $AGL_TOP
-mkdir marlin
-export AGL_TOP=$HOME/AGL/marlin
+mkdir needlefish
+export AGL_TOP=$HOME/AGL/needlefish
cd $AGL_TOP
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
-repo init -b marlin -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
+repo init -b needlefish -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
repo sync
```
-- Optional: Specify the manifest file(marlin_13.0.0.xml) using -m option
+- Optional: Specify the manifest file of a point release (needlefish_14.0.1.xml) using -m option
```bash
-repo init -b marlin -m marlin_13.0.0.xml -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
+repo init -b needlefish -m needlefish_14.0.1.xml -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
```
- Optional: Specify the master branch
```bash
chmod a+rw $XDG_DOWNLOAD_DIR/*.zip
```
## 5. Define Your Board
-- Supporting Starter Kit Pro/M3 + kingfisher Board (For other supported boards, check [Define Your Board](https://docs.automotivelinux.org/en/master/#0_Getting_Started/2_Building_AGL_Image/5_3_RCar_Gen_3/))
+- Supporting Starter Kit Pro/M3 + kingfisher Board (For other supported boards, check [Define Your Board](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/2_Building_AGL_Image/5_3_RCar_Gen_3/))
```bash
export MACHINE=m3ulcb-kf
```
1. [eLinux](https://elinux.org/R-Car/AGL)
1. [Kingfisher Board](https://elinux.org/R-Car/Boards/Kingfisher)
1. [R-Car M3SK](https://elinux.org/R-Car/Boards/M3SK#Flashing_firmware)
- 1. [agl reference machines](https://docs.automotivelinux.org/en/master/#1_hardware_support/overview/)
+ 1. [agl reference machines](https://docs.automotivelinux.org/en/needlefish/#1_hardware_support/overview/)
1. [AGL Tech Day Presenation](https://static.sched.com/hosted_files/agltechday2022/3b/agl-techday-202204.pdf)
- 1. [Build AGL Image](https://docs.automotivelinux.org/en/master/#0_Getting_Started/2_Building_AGL_Image/0_Build_Process/)
- 1. [Building for Supported Renesas Boards](https://docs.automotivelinux.org/en/master/#0_Getting_Started/2_Building_AGL_Image/5_3_RCar_Gen_3/)
+ 1. [Build AGL Image](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/2_Building_AGL_Image/0_Build_Process/)
+ 1. [Building for Supported Renesas Boards](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/2_Building_AGL_Image/5_3_RCar_Gen_3/)
| BOARD | MACHINE | ARCHITECHTURE | QUICK START GUIDE|
|:---------------:|:--------------:|:-------------:|:----------------:|
-| QEMU | qemu-x86-64 | x86 |[QEMU Quick Start](https://docs.automotivelinux.org/en/master/#0_Getting_Started/1_Quickstart/Using_Ready_Made_Images/#_top)|
+| QEMU | qemu-x86-64 | x86 |[QEMU Quick Start](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/1_Quickstart/Using_Ready_Made_Images/#_top)|
| | qemu-arm | arm32 |
| | qemu-arm64 | arm64 |
| | | |
-| RCar Gen 3 | h3ulcb | arm64 |[RCar Gen 3 Quick Start](https://docs.automotivelinux.org/en/master/#0_Getting_Started/1_Quickstart/Using_Ready_Made_Images/#3-r-car-h3sk-h3ulcb-board)|
+| RCar Gen 3 | h3ulcb | arm64 |[RCar Gen 3 Quick Start](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/1_Quickstart/Using_Ready_Made_Images/#3-r-car-h3sk-h3ulcb-board)|
| | h3-salvator-x | arm64 |
| | h3-kf | arm64 |
| | m3ulcb | arm64 |
| | m3-kf | arm64 |
| | agl-refhw | arm64 |
| | | |
-| Raspberry Pi | raspberrypi4 | arm64 |[Raspberry Pi Quick Start](https://docs.automotivelinux.org/en/master/#0_Getting_Started/1_Quickstart/Using_Ready_Made_Images/#2-raspberry-pi-4)|
+| Raspberry Pi | raspberrypi4 | arm64 |[Raspberry Pi Quick Start](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/1_Quickstart/Using_Ready_Made_Images/#2-raspberry-pi-4)|
### Community Supported Boards
$ time bitbake agl-demo-platform-html5
```
+* Flutter-based Image:
+
+ * Setting up flags at `aglsetup` script :
+
+ ```sh
+ $ source meta-agl/scripts/aglsetup.sh -f -m $MACHINE -b build-$MACHINE agl-demo agl-flutter
+
+ # To enable Developer Options
+ $ source meta-agl/scripts/aglsetup.sh -f -m $MACHINE -b build-$MACHINE agl-demo agl-flutter agl-devel
+ ```
+
+ * Building target image :
+
+ ```sh
+ $ time bitbake agl-ivi-demo-platform-flutter
+ ```
+
+
#### 2. Instrument Cluster
title: Platform
---
+###### # # # # # ######
+# # # # ## ## #
+##### # ## # ## # #####
+# # ## # # #
+# # # # # # #
+# # # # # # ######
+
+This information is old and only kept for reference. The current implementation has evolved.
+
+
The Automotive Grade Linux platform is a Linux distribution with **AGL**
compliant applications and services. The platform includes the following
software:
1. Download the prebuilt SDK :
- - **x86** : [qemux86-64](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemux86-64/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-qemux86-64-toolchain-10.90.0+snapshot.sh)
+ - **x86** : [qemux86-64](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemux86-64/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-qemux86-64-toolchain-10.90.0+snapshot.sh)
- - **ARM 32 bit** : [qemuarm](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemuarm/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-armv7vet2hf-neon-vfpv4-qemuarm-toolchain-10.90.0+snapshot.sh)
+ - **ARM 32 bit** : [qemuarm](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemuarm/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-armv7vet2hf-neon-vfpv4-qemuarm-toolchain-10.90.0+snapshot.sh)
- - **AARCH64 - ARM 64bit** : [qemuarm64](https://download.automotivelinux.org/AGL/snapshots/master/latest/qemuarm64/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-aarch64-qemuarm64-toolchain-10.90.0+snapshot.sh)
+ - **AARCH64 - ARM 64bit** : [qemuarm64](https://download.automotivelinux.org/AGL/release/needlefish/latest/qemuarm64/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-aarch64-qemuarm64-toolchain-10.90.0+snapshot.sh)
*Henceforth,* **qemux86-64** *is used in these guides, unless specified
otherwise. We also use the 'agl-demo-platform-crosssdk' as example.*
- Yocto Project Release:
- URI: git://git.yoctoproject.org/poky
- - Branch: "thud"
+ - Branch: "kirkstone"
- Tested Revision: See the
[`default.xml`](https://github.com/leon-anavi/AGL-repo/blob/master/default.xml)
manifest file for the `AGL-repo` repository for revision information.
- OpenEmbedded `meta-openembedded` Layer:
- - Branch: "thud"
+ - Branch: "kirkstone"
- Tested Revision: See the
[`default.xml`](https://github.com/leon-anavi/AGL-repo/blob/master/default.xml)
manifest file for the `AGL-repo` repository for revision information.
Topic branches are temporary branches that you push to commit a set of
logically-grouped dependent commits:
-To push changes from ``REMOTE/master`` tree to Gerrit for being reviewed as a
+To push changes from ``REMOTE/needlefish`` tree to Gerrit for being reviewed as a
topic in **TopicName** use the following command as an example:
```sh
-$ git push REMOTE HEAD:refs/for/master/TopicName
+$ git push REMOTE HEAD:refs/for/needlefish/TopicName
```
The topic will show up in the review ``UI`` and in the ``Open Changes List``.
-Topic branches will disappear from the master tree when its content is merged.
+Topic branches will disappear from the needlefish tree when its content is merged.
## Finding Available Topics
```sh
-$ ssh -p 29418 <LFID>@gerrit.automotivelinux.org gerrit query \ status:open branch:master| grep topic: | sort -u
+$ ssh -p 29418 <LFID>@gerrit.automotivelinux.org gerrit query \ status:open branch:needlefish| grep topic: | sort -u
```
- [gerrit.automotivelinux.org](https://gerrit.automotivelinux.org) is the
```sh
-$ git log REMOTE/master..master
+$ git log REMOTE/needlefish..needlefish
c0
...
c7
-$ git push REMOTE HEAD:refs/for/master/SOMETOPIC
+$ git push REMOTE HEAD:refs/for/needlefish/SOMETOPIC
```
After you get reviewers' feedback, there are changes in **c3** and **c4** that
changes again:
```sh
-$ git push REMOTE HEAD:refs/for/master/SOMETOPIC
+$ git push REMOTE HEAD:refs/for/needlefish/SOMETOPIC
```
This new push creates a patches revision, your local history is then cleared.
- **reword:** changes the commit message.
- **edit:** changes the commit content.
- **reorder:** allows you to interchange the order of the commits.
-- **rebase:** stacks the commits on top of the master.
+- **rebase:** stacks the commits on top of the needlefish.
## Rebasing During a Pull
-Before pushing a rebase to your master, ensure that the history has a
+Before pushing a rebase to your needlefish, ensure that the history has a
consecutive order.
-For example, your ``REMOTE/master`` has the list of commits from **a0** to
+For example, your ``REMOTE/needlefish`` has the list of commits from **a0** to
**a4**; Then, your changes **c0...c7** are on top of **a4**; thus:
```sh
-$ git log --oneline REMOTE/master..master
+$ git log --oneline REMOTE/needlefish..needlefish
a0
a1
c7
```
-If ``REMOTE/master`` receives commits **a5**, **a6** and **a7**. Pull with a
+If ``REMOTE/needlefish`` receives commits **a5**, **a6** and **a7**. Pull with a
rebase as follows:
```sh
-$ git pull --rebase REMOTE master
+$ git pull --rebase REMOTE needlefish
```
This pulls **a5-a7** and re-apply **c0-c7** on top of them:
```sh
-$ git log --oneline REMOTE/master..master
+$ git log --oneline REMOTE/needlefish..needlefish
a0
...
a7