diff options
2 files changed, 133 insertions, 0 deletions
diff --git a/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/01_Building_the_AGL_Image.md b/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/01_Building_the_AGL_Image.md index 9fec8cc..c307ea3 100644 --- a/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/01_Building_the_AGL_Image.md +++ b/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/01_Building_the_AGL_Image.md @@ -18,5 +18,6 @@ EMUlator (QEMU) or VirtualBox: * [x86 (Emulation and Hardware)](./02_Building_for_x86_(Emulation_and_Hardware).md) * [Raspberry Pi 4](./03_Building_for_Raspberry_Pi_4.md) * [R Car Gen 3](./04_Building_for_Supported_Renesas_Boards.md) +* [Rockchip/NanoPC T6](./05_Building_for_Supported_Rockchip_Boards.md) * [Virtio](./06_Building_for_Virtio.md) * [AWS EC2 (arm64 or x86-64)](./07_Building_for_EC2_arm64_and_x86-64.md) diff --git a/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/05_Building_for_Supported_Rockchip_Boards.md b/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/05_Building_for_Supported_Rockchip_Boards.md new file mode 100644 index 0000000..4a63a29 --- /dev/null +++ b/docs/01_Getting_Started/02_Building_AGL_Image/06_Building_the_AGL_Image/05_Building_for_Supported_Rockchip_Boards.md @@ -0,0 +1,132 @@ +--- +title: Building for Rockchip boards +--- + +AGL supported some Rockchip [RK3588](https://www.rock-chips.com/a/en/products/RK35_Series/2022/0926/1660.html) boards. +[NanoPC T6](https://wiki.friendlyelec.com/wiki/index.php/NanoPC-T6) board is one of the RK3588 based board. That is manifactured by [friendlyelec](https://www.friendlyelec.com). + +This section describes the steps you need to take to build the +AGL demo image for the NanoPC T6 board. + +## 1. Making Sure Your Build Environment is Correct + +The +"[Initializing Your Build Environment](../04_Initializing_Your_Build_Environment.md)" +section presented generic information for setting up your build environment +using the `aglsetup.sh` script. +If you are building the AGL demo image for a NanoPC T6 board, you need to specify some +specific options when you run the script : + +**Basic IVI demo :** + + ```sh + $ source meta-agl/scripts/aglsetup.sh -f -m nanopc-t6 -b build-nanopc-t6 agl-demo + $ 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 + $ ln -sf $AGL_TOP/site.conf conf/ + ``` + +In each case, the "-m" option specifies the machine and the list of AGL features used with script are appropriate for development of +the AGL demo image suited for NanoPC T6. + +## 2. Configuring the Build + +Before launching the build, it is good to be sure your build +configuration is set up correctly (`/build/conf/local.conf` file). +The "[Customizing Your Build](../05_Customizing_Your_Build.md)" +section highlights some common configurations that are useful when +building any AGL image. + +## 3. Using BitBake + +This section shows the `bitbake` command used to build the AGL image. + +Start the build using the `bitbake` command. + +**NOTE:** An initial build can take many hours depending on your +CPU and and Internet connection speeds. +The build also takes approximately 200G-bytes of free disk space. + +**Flutter Based IVI demo :** +The target is `agl-ivi-demo-flutter`. + +```sh +$ time bitbake agl-ivi-demo-flutter +``` + +By default, the build process puts the resulting image in the Build Directory and further exporting that as `$IMAGE_NAME`. +Here is example for the NanoPC T6 board for Flutter Based demo: + +```sh +<build_dir>/tmp/deploy/images/rockchip-rk3588-nanopc-t6/agl-ivi-demo-flutter-rockchip-rk3588-nanopc-t6.rootfs.wic.xz + +$ export IMAGE_NAME=agl-ivi-demo-flutter-rockchip-rk3588-nanopc-t6.rootfs.wic.xz +``` + +**Qt Based IVI demo :** +The target is `agl-ivi-demo-qt`. + +```sh +$ time bitbake agl-ivi-demo-qt +``` + +By default, the build process puts the resulting image in the Build Directory and further exporting that as `$IMAGE_NAME`. +Here is example for the NanoPC T6 board for Qt Based demo: + +```sh +<build_dir>/tmp/deploy/images/rockchip-rk3588-nanopc-t6/agl-ivi-demo-flutter-rockchip-rk3588-nanopc-t6.rootfs.wic.xz + +$ export IMAGE_NAME=agl-ivi-demo-flutter-rockchip-rk3588-nanopc-t6.rootfs.wic.xz +``` + +## 4. Deploying the AGL Demo Image + +Deploying the AGL demo image consists of copying the image on a MicroSD card, +plugging the card into the NanoPC T6 board, and then booting the board. + +Follow these steps to copy the image to a MicroSD card and boot +the image on the NanoPC T6 board: + + 1. Plug your MicroSD card into your Build Host (i.e. the system that has your build output). + + 2. Extract the image into the SD card of NanoPC T6 : + + **NOTE:** For NanoPC T6, the image is at `<build-dir>/tmp/deploy/images/rockchip-rk3588-nanopc-t6/${IMAGE_NAME}`. + + Be sure you are root, provide the actual device name for *sdcard_device_name*, and the actual image name for *image_name*. + + ```sh + $ lsblk + $ sudo umount <sdcard_device_name> + $ xzcat ${IMAGE_NAME} | sudo dd of=<sdcard_device_name> bs=4M + $ sync + ``` + + **IMPORTANT NOTE:** Before re-writing any device on your Build Host, you need to + be sure you are actually writing to the removable MicroSD card and not some other + device. + Each computer is different and removable devices can change from time to time. + Consequently, you should repeat the previous operation with the MicroSD card to + confirm the device name every time you write to the card. + + To summarize this example so far, we have the following: + The first SATA drive is `/dev/sda` and `/dev/sdc` corresponds to the MicroSD card, and is also marked as a removable device.You can see this in the output of the `lsblk` command where "1" appears in the "RM" column for that device. + + +## Appendix. + +### Serial Debugging + +Initially, please refer to [friendlyelec NanoPC-T6 wiki page](https://wiki.friendlyelec.com/wiki/index.php/NanoPC-T6) at "3 Diagram, Layout and Dimension". The debug UART connector stay between audio out and 12V DC connector. + +The UART speed of NanoPC T6 is 1500000bps, not a 115200bps. That speed supports by FT234X, CH340G, and etc. + +Pin assign. + +| Pin# | Assignment | Description | +|---|---|---| +| 1 | GND | 0V | +| 2 | UART2_TX_M0_DEBUG | output | +| 3 | UART2_RX_M0_DEBUG | intput | + |