|
|
(203 intermediate revisions by 18 users not shown) |
Line 1: |
Line 1: |
| + | |
| {{DISPLAYTITLE:Linux BSP}} | | {{DISPLAYTITLE:Linux BSP}} |
| | | |
− | == i.MX6 == | + | = '''i.MX6''' = |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Technical_Specification|Technical Specification]] === | + | === '''RISC Image Naming Rule''' === |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/OS_Support_List|OS Support List(based on Yocto 1.5~Yocto 2.0)]] ===
| + | *[[RISC_Image_Naming_Rule|<span style="color:#336699">RISC Image Naming Rule</span>]] |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/OS_Support_List_new|OS Support List(based on Yocto 2.1 and later)]] === | + | === '''Technical Specification''' === |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/DDR_Support_List|DDR Support List]] ===
| + | *[[IoTGateway/BSP/Linux/iMX6/Technical_Specification|Technical Specification]] |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Yocto_LBV3_User_Guide|Version 3 (based on Yocto 1.5) User Guide]] === | + | === '''OS support list (Get BSP & image)''' === |
| | | |
− | *[[IoTGateway/BSP/Linux/iMX6/Eclipse_Plug-in|Eclipse Plug-in]] | + | *[[IoTGateway/BSP/Linux/iMX6/OS_Support_List|OS Support List(based on Yocto 1.5~Yocto 2.0)]] |
− | *[[IoTGateway/BSP/Linux/iMX6/QtCreator|QtCreator]] | + | *[[IoTGateway/BSP/Linux/iMX6/OS_Support_List_new|OS Support List(based on Yocto 2.1 and later)]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/OS_Support_List_Yocto_2.5|OS Support List(based on Yocto 2.5)]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/OS_Support_List_Yocto_3.3_release|OS Support List release(based on Yocto 3.3)]] |
| + | *[http://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/NXP/Linux_Yocto_OS_Release_note/Yocto4.0/Internal OS Support List release(based on Yocto 4.0)] |
| + | *[[IoTGateway/BSP/Linux/iMX6/DDR_Support_List|DDR Support List]] |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Yocto_LBV5_User_Guide|Version 5 (based on Yocto 1.7) User Guide]] === | + | === '''User Guide''' === |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Yocto_LBV6_User_Guide|Version 6 (based on Yocto 1.8) User Guide]] ===
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV3_User_Guide|Version 3 (based on Yocto 1.5) User Guide]] |
| + | **[[IoTGateway/BSP/Linux/iMX6/Eclipse_Plug-in|Eclipse Plug-in]] |
| + | **[[IoTGateway/BSP/Linux/iMX6/QtCreator|QtCreator]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV5_User_Guide|Version 5 (based on Yocto 1.7) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV6_User_Guide|Version 6 (based on Yocto 1.8) User Guide]] |
| + | **[[IoTGateway/BSP/Linux/iMX6/Bluetooth_Testing_Guide|Bluetooth Testing Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV7_User_Guide|Version 7 (based on Yocto 2.0) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV8_User_Guide|Version 8 (based on Yocto 2.1) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBVB_User_Guide|Version B (based on Yocto 3.3) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBVC_User_Guide|Version C (based on Yocto 4.0) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Yocto_LBVD_User_Guide|Version D (based on Yocto 4.2) User Guide]] |
| + | **[[IoTGateway/BSP/Linux/iMX6/InstallDocker|How to install Docker on i.MX6 Debian]] |
| + | *[[IoTGateway/BSP/Linux/iMX6/Mfgtool|Mfgtool]] |
| | | |
− | *[[IoTGateway/BSP/Linux/iMX6/Bluetooth_Testing_Guide|Bluetooth Testing Guide]]
| + | === FAQ === |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Yocto_LBV7_User_Guide|Version 7 (based on Yocto 2.0) User Guide]] ===
| + | *[[IoTGateway/BSP/Linux/iMX6/FAQ|FAQ]] |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Yocto_LBV8_User_Guide|Version 8 (based on Yocto 2.1) User Guide]] ===
| + | *[[IoTGateway/BSP/Linux/iMX6/2038y|2038y_issue_on_imx6_solution]] |
| | | |
− | *[[IoTGateway/BSP/Linux/iMX6/BuildingUbuntuRootfs|Building Ubuntu Rootfs for i.MX6]]
| + | = i.MX7 = |
− | *[[IoTGateway/BSP/Linux/iMX6/How_To_Update_Ubuntu/Debian_Rootfs|How_To_Update_Ubuntu/Debian_Rootfs on i.MX6 platform]]
| |
− | *[[IoTGateway/BSP/Linux/iMX6/InstallDocker|How to install Docker on i.MX6 Debian]]
| |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/Mfgtool|Mfgtool]] === | + | === [[IoTGateway/BSP/Linux/iMX7/OS_Support_List_new|OS Support List(based on Yocto 2.1 and later)]] === |
| | | |
− | === [[IoTGateway/BSP/Linux/iMX6/FAQ|FAQ]] === | + | === [[IoTGateway/BSP/Linux/iMX7/Yocto_LBV8_User_Guide|Version 8 (based on Yocto 2.1) User Guide]] === |
| | | |
− | == i.MX7 == | + | = '''i.MX8''' = |
| | | |
− | {{DISPLAYTITLE:Yocto Linux BSP Ver.8 User Guide for iMX7 series}} <!--
| + | === '''OS support (get BSP & image)''' === |
− | {| align="right"
| |
− | | <span class="fck_mw_magic" _fck_mw_customtag="true" _fck_mw_tagname="TOC" _fck_mw_tagtype="c">_</span>
| |
− | |}
| |
− | -->
| |
| | | |
− | = Getting Started =
| + | *[[IoTGateway/BSP/Linux/iMX8/OS_Support_List|OS Support List(based on Yocto 2.5 and later)]] |
| + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/OS_Support_List_3.0 OS Support List(based on Yocto 3.0)] |
| + | *[[IoTGateway/BSP/Linux/iMX8/OS_Support_List_3.3_release|OS Support List release(based on Yocto 3.3)]] |
| | | |
− | == <span style="color:#0070c0">Conventions</span> ==
| + | *[http://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/NXP/Linux_Yocto_OS_Release_note/Yocto2.5/Internal New OS Support List(based on Yocto 2.5)] |
| + | *[http://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/NXP/Linux_Yocto_OS_Release_note/Yocto3.0/Internal New OS Support List(based on Yocto 3.0)] |
| + | *[http://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/NXP/Linux_Yocto_OS_Release_note/Yocto4.0/Internal New OS Support List(based on Yocto 4.0] |
| + | *[http://ess-wiki.advantech.com.tw/view/AIM-Linux/BSP/NXP/Linux_Yocto_OS_Release_note/Yocto4.2/Internal New OS Support List(based on Yocto 4.2)] |
| | | |
− | <span style="color:purple">'''${PREBUILT_IMAGE}'''</span> : compressed prebuilt image (*.img.gz)
| + | === '''User Guide''' === |
| | | |
− | <span style="color:purple">'''${CONTAINER_NAME}'''</span> : container name (e.g. imx6LBV8040)
| + | *[[IoTGateway/BSP/Linux/iMX8/Yocto_LBV9_User_Guide|Version 9 (based on Yocto 2.5) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX8/Qt5Creator|Qt5Creator]] |
| + | *[[IoTGateway/BSP/Linux/iMX8/Yocto_LBVA_User_Guide|Version A (based on Yocto 3.0) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX8/Yocto_LBVB_User_Guide|Version B (based on Yocto 3.3) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX8/Yocto_LBVC_User_Guide|Version C (based on Yocto 4.0) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX8/Yocto_LBVD_User_Guide|Version D (based on Yocto 4.2) User Guide]] |
| + | *[[IoTGateway/BSP/Linux/iMX8/Build_Instructions|Build Instructions]] |
| + | *Debian |
| + | **[[IoTGateway/BSP/Linux/Debian/How_to_Create_Debian10_Rootfs_Base|How to create Debian 10 rootfs base]] |
| + | **[[IoTGateway/BSP/Linux/Debian/How_to_create_Debian10_SDcard_image|How to create Debian 10 SD card image]] |
| | | |
− | <span style="color:purple">'''${BSP_TARBALL}'''</span> : BSP tarball (*.tgz)
| + | === [[IoTGateway/BSP/Linux/iMX8/FAQ|FAQ]] === |
| | | |
− | <span style="color:purple">'''${BSP_HOME}'''</span> : home directory of the BSP
| + | = '''NXP i.MX eIQ Machine Learning''' = |
| | | |
− | <span style="color:purple">'''${BDIR}'''</span> : build directory (e.g. build_x11)
| + | *[[NXP eIQ|NXP eIQ]] |
| | | |
− | <span style="color:purple">'''${MX7PROC}'''</span> : i.MX7 Processor
| + | = Quark = |
| | | |
− | :mx7d for iMX7 Dual Core
| + | === '''OS support list''' === |
| | | |
− | <span style="color:purple">'''${IMX7PROC}'''</span> : i.MX7 Processor
| + | *[[IoTGateway/BSP/Linux/Quark/OS_Support_List|OS Support List]] |
| | | |
− | :imx7d
| + | === '''User Guide''' === |
| | | |
− | <span style="color:purple">'''${BOARD}'''</span> : available target boards list below
| + | *[[IoTGateway/BSP/Linux/Quark/Yocto_LBV1_User_Guide|Version 1 User Guide]] |
| | | |
− | :ebcrm01 | + | :This version is based on Intel Quark BSP v1.0.4 (Yocto 1.4.2). |
| | | |
− | <span style="color:purple">'''${BOARD_REV}'''</span> : board revision
| + | *[[IoTGateway/BSP/Linux/Quark/Yocto_LBV2_User_Guide|Version 2 User Guide]] |
| | | |
− | :a1 | + | :This version is based on Intel Quark BSP v1.2.0 (Yocto 1.7.2). |
| + | <ul style="margin-left: 40px;"> |
| + | <li>[[IoTGateway/BSP/Linux/Quark/Bluetooth_Testing_Guide|Bluetooth Testing Guide]]</li> |
| + | <li>[[IoTGateway/BSP/Linux/Quark/Getting_BSP_from_GitHub|Getting the BSP from GitHub]]</li> |
| + | </ul> |
| | | |
− | <span style="color:purple">'''${MC}'''</span> : machine code combined with <span style="color:purple">'''${IMX6PROC}${BOARD}${BOARD_REV}'''</span>
| + | : |
| + | ::There is a [[IoTGateway/BSP/Linux/Quark/Getting_BSP_from_GitHub#Supported_version|newer version]] which is based on Intel Quark BSP v1.2.1.1 (Yocto 1.7.2). |
| | | |
− | :for example,
| + | *[[IoTGateway/BSP/Linux/Quark/BuildingDebianJessieRootfs|Building Debian (Jessie) Rootfs for Quark]] |
| | | |
− | ::<tt>imx7debcrm01a1 for EBC-RM01 A1</tt>
| + | === '''FAQ''' === |
| | | |
− | <span style="color:purple">'''${MEM_SIZE}'''</span> : memory size
| + | *[[IoTGateway/BSP/Linux/Quark/FAQ|FAQ]] |
| | | |
− | :2G
| + | = APQ8016 = |
| | | |
− | <span style="color:purple">'''${SD_DEVICE}'''</span> : device name of SD card in Linux (e.g. /dev/sdf)
| + | === [[IoTGateway/BSP/Linux/APQ8016/OS_Support_List|OS Support List]] === |
| | | |
− | <span style="color:purple">'''${SDCARD_IMAGE}'''</span> : sdcard image built by bitbake (*.sdcard)
| + | === Linux BSP User Guide === |
| | | |
− | <span style="color:purple">'''${WORKSPACE}'''</span> : host workspace folders
| + | *[[IoTGateway/BSP/Linux/APQ8016/BSP_User_Guide_V1|Version 1 (Yocto 2.1 & Debian 9)]] |
| | | |
− | <span style="color:purple">'''${UBOOT}'''</span> :u-boot version(e.g. 2016.03)
| + | === [[IoTGateway/BSP/Linux/APQ8016/FAQ|FAQ]] === |
| | | |
− | <span style="color:purple">'''${KERNEL}'''</span> : linux kernel version(e.g. 4.1.15)
| + | = '''AM335x''' = |
| | | |
− | <span style="color:purple">'''${TOOLCHAIN}'''</span> : toolchain installed directory(e.g. /opt/fsl-imx-x11/4.1.15-2.0.0)
| + | === '''Support List (Get BSP & image)''' === |
| | | |
− | debug console / serial console
| + | *[[IoTGateway/BSP/Linux/AM335x/OS_Support_List|<font color="#0066cc">OS Support List(base on ti-skd-am335x-evm-06.00.00.00 and ti-sdk-am335x-evm-02.00.00.00.00)</font>]] |
| + | *[[OS_Support_List(based_on_Yocto_2.1)_am335x|<font color="#0066cc">OS Support List(based on Yocto 2.1)</font>]] |
| | | |
− | :serial terminal program (e.g. minicom, putty, teraterm ...) that serial port is configured to 115200 8N1
| + | === '''User Guide''' === |
| | | |
− | terminal console
| + | *[[IoTGateway/BSP/Linux/AM335x/AM335x_LBV6_User_Guide|<font color="#0066cc">Version 1 (based on ti-sdk-am335x-evm-06.00.00.00 ) User Guide</font>]] |
| + | *[[IoTGateway/BSP/Linux/AM335x/AM335x_LBV2_User_Guide|<span class="mw-headline" id="version_1_.28based_on_ti-sdk-am335x-evm-06.00.00.00_.29"><font color="#0066cc">Version 2 (based on ti-sdk-am335x-evm-02.00.00.00.00 ) User Guide</font></span>]] |
| + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM57xx/AM57xx_User_Guide <span class="mw-headline" id="version_1_.28based_on_ti-sdk-am335x-evm-06.00.00.00_.29"><font color="#0066cc">Version 3 (based on Yocto 2.1) User Guide</font></span>] |
| + | **[[Function_Test|Function Test]] |
| + | *[[Yocto_Linux_BSP_Ver.4_User_Guide_for_AM57xx/AM335x_series|<span class="mw-headline" id="version_1_.28based_on_ti-sdk-am335x-evm-06.00.00.00_.29"><font color="#0066cc">Version 4 (based on Yocto 2.4) User Guide</font></span>]] |
| + | **<font color="#0066cc">Function Test</font> |
| | | |
− | :terminal program (e.g. gnome-terminal, xfce4-terminal ...)
| + | === '''FAQ''' === |
| | | |
− | == <font color="#0070c0">Docker install and setting</font> ==
| + | *[[IoTGateway/BSP/Linux/AM335x/FAQ|FAQ]] |
| | | |
− | <span style="font-size:larger;">'''<span style="color:#0070c0">If you don't have docker in your system, then you can follow the below steps to install docker and run it first.</span>'''</span>
| + | = '''AM57xx''' = |
| | | |
− | === <span style="color:#0070c0">To install Docker Engine on your platform</span> === | + | === '''OS Support list (Get BSP & Image)''' === |
| | | |
− | :Please refer to [https://docs.docker.com/engine/installation/ Docker Installation Guide] for details
| + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM57xx/OS_Support_List <font color="#0066cc">OS Support List(base on Yocto 2.1)</font>] |
| | | |
− | === <span style="color:#0070c0">To pull [https://hub.docker.com/r/advrisc/u12.04-imx6lbv3/ ubuntu 12.04 image from Docker Hub] </span> === | + | === '''User Guide''' === |
| | | |
− | :<code>$ docker pull advrisc/u12.04-imx6lbv3</code><br/> | + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM57xx/AM57xx_User_Guide <font color="#0066cc">Version 1 (based on Yocto 2.1) User Guide</font>] |
− | :<code>$ docker run --name imx6LBV8xxx -it advrisc/u12.04-imx6lbv3 /bin/bash</code><br/>
| + | *[[Getting_Started|Function Test]] |
| | | |
− | === To copy BSP from local filesystem to the container === | + | = '''AM62xx''' = |
| | | |
− | :<code>$ docker cp '''${BSP_PACK}''' imx6LBV8xxx:/home/adv/ </code>
| + | === '''OS Support list (Get Image)''' === |
| | | |
− | === <span style="color:#0070c0">To create container</span> ===
| + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM62xx/OS_Support_List <font color="#0066cc">OS Support List(base on Yocto 3.1)</font>] |
| | | |
− | :<code>$ docker run --privileged -it --name '''${CONTAINER_NAME}''' -v '''${WORKSPACE}''':/home/adv/adv-release-bsp -v /dev:/dev advrisc/u12.04-imx6lbv3 /bin/bash</code><br/>
| + | === '''User Guide(Get SDK )''' === |
| | | |
− | == <span style="color:#0070c0">Get BSP</span> ==
| + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM62xx/AM62xx_User_Guide <font color="#0066cc">Version 1 (based on Yocto 3.1) User Guide</font>] |
| | | |
− | :You have two methods to put BSP into container created above
| + | = '''RK3288''' = |
| | | |
− | === <span style="color:#0070c0">Download BSP From GitHub</span> === | + | === '''OS Support list''' === |
| | | |
− | :The following example shows how to download the Advantech Yocto BSP from GitHub.
| + | *[[RK3288_OS_Support_List_(Base_On_Debian9)|OS Support List Debian9]] |
| + | *[[OS_Support_List_Debian10|OS_Support_List_Debian10]] |
| | | |
− | :For this example, a directory called '''adv-release-bsp''' is created for the project.
| + | === '''User Guide''' === |
| | | |
− | :Refer to [[IoTGateway/BSP/Linux/iMX7/OS_Support_List_new|IoTGateway/BSP/Linux/iMX7/OS Support List new]] , Official version "'''imx6LBV8xxx" '''is taken as an example :
| + | *[[Linux_BSP_User_Guide_for_rk3288_series_Debian9|Linux BSP build and update images. ]] |
| + | *[[Environment_set_up.|Environment_set_up.]] |
| + | *[[How_to_do.|How_to_do.]] |
| + | *[http://ess-wiki.advantech.com.tw/view/RK3288_qt5Creator RK3288_qt5Creator] |
| + | *[[Qt5Creator_toolchain_Qt_5.11.3|qt5Creator_toolchain_Qt_5.11.3]] |
| + | *[[How_to_flash_the_Debian_image_into_RSB-4680|How_to_flash_the_Debian_image_into_RSB-4680]] |
| | | |
− | $ git config --global user.name "Your Name"
| + | === '''FQA''' === |
− | $ git config --global user.email you@example.com
| |
− | $ mkdir adv-release-bsp
| |
− | $ sudo chown adv:adv adv-release-bsp
| |
− | $ cd adv-release-bsp
| |
− | $ repo init -u [git://github.com/ADVANTECH-Corp/adv-arm-yocto-bsp.git git://github.com/ADVANTECH-Corp/adv-arm-yocto-bsp.git] -b '''refs/tags/imx6LBV8xxx''' -m '''imx6LBV8xxx'''.xml
| |
− | $ repo sync
| |
| | | |
− | :If you want to get latest bsp
| + | = '''RK3399''' = |
| | | |
− | $ repo init -u [git://github.com/ADVANTECH-Corp/adv-arm-yocto-bsp.git git://github.com/ADVANTECH-Corp/adv-arm-yocto-bsp.git] -b imx-4.1-krogoth
| + | === '''OS Support List''' === |
− | $ repo sync
| |
| | | |
− | === <span style="color:#0070c0">Copy BSP tarball to Container</span> ===
| + | *[[RISC_series_(RSB-3710/RSB-4710/ROM-5780)_Debian9|RISC_series_(RSB-3710/RSB-4710/ROM-5780)_Debian9]] |
| + | *[[RISC_series_(RSB-3710/RSB-4710/ROM-5780)_Debian10|RISC_series_(RSB-3710/RSB-4710/ROM-5780)_Debian10]] |
| + | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/RK3399/OS_Support_List DS series (DS-100/DS-100Lite/EIS-D620) Debian9] |
| | | |
− | :If you have BSP tarball (eg. imx6LBV8xxx_2018-xx-xx.tgz), then you have to copy it into container.
| + | === '''User Guide''' === |
| | | |
− | Follow the steps below:
| + | RISC series(RSB-3710/RSB-4710/ROM-5780) |
| | | |
− | 1.Exit container and back to local machine
| + | *[http://ess-wiki.advantech.com.tw/view/Debian_BSP_User_Guide_for_rk3399_series_risc(RSB4710). Linux BSP User Guide for rk3399 series Debian9/Debian10] |
| + | *[http://ess-wiki.advantech.com.tw/view/Getting_Start_(RSB4710). Getting Start] |
| + | *[http://ess-wiki.advantech.com.tw/view/MAC_Address MAC_Address] |
| + | *[http://ess-wiki.advantech.com.tw/view/Qt5Creator <font color="#0066cc">Qt5Creator</font>] |
| + | *[[Qt5Creator_toolchain_Qt_5.11.3|<font color="#0066cc">Qt5Creator_toolchain_Qt_5.11.3</font>]] |
| | | |
− | $ exit
| + | DS-100 |
| | | |
− | 2.Copy BSP tarball to ${WORKSPACE} , and change owner
| + | *[[IoTGateway/BSP/Linux/Linux_BSP_User_Guide_Debian9_for_rk|Linux BSP User Guide for rk3399 series Debian9]] |
| + | *[[IoTGateway/BSP/Linux/Linux_BSP_User_Guide_DeviceOn|Linux BSP User Guide for rk3399 series DeviceOn]] |
| + | *[[IoTGateway/BSP/Linux/Linux_BSP_User_Guide_SGI|Linux BSP User Guide for SGI [DMS-SA53]]] |
| | | |
− | $ cp imx6LBV8xxx_2018-xx-xx.tgz '''${WORKSPACE}'''
| + | === '''FQA''' === |
− | $ sudo chown adv:adv ${WORKSPACE}/imx6LBV8xxx_2018-xx-xx.tgz
| |
| | | |
− | 3.Back to container
| + | = '''RK3568''' = |
| | | |
− | $ docker start '''${CONTAINER_NAME}'''
| + | === '''OS Support List''' === |
− | $ docker attach '''${CONTAINER_NAME}'''
| |
| | | |
− | 4.Unpack BSP tarball
| + | [[RISC_series_RK3568_Linux|RISC_series (RSB-4810) Debian10]] |
| | | |
− | $ tar zxvf imx6LBV8xxx_2018-xx-xx.tgz
| + | === '''User Guide''' === |
| | | |
− | == <span style="color:#0070c0">Downloads tarball</span> ==
| + | RISC series(RSB-4810 ROM-5880 AFE-E630) |
| | | |
− | :Not necessarily step
| + | *[[Linux_BSP_User_Guide_for_rk3568_series_Debian10|Linux_BSP_User_Guide_for_rk3568_series_Debian10]] |
| + | *[[Linux_BSP_User_Guide_for_rk3568_series_Debian11|Linux_BSP_User_Guide_for_rk3568_series_Debian11]] |
| + | *[[Getting_Start_RK3568|Getting Start]] |
| + | *MAC_Address |
| + | *Qt5Creator |
| + | *Qt5Creator_toolchain_Qt_5.11.3 |
| | | |
− | :During building Yocto image , it will generate downloads folder which includes all packages we need , but it usually can't fetch normally, so we keep this downloads folder. Then we can reduce some fetch failed issue.
| + | |
| | | |
− | :You can get Downloads tarball (downloads-2.1.tar.gz) from following URL:
| + | = '''RK3588''' = |
| | | |
− | :<code>[https://pan.baidu.com/s/1nvqgx2T#list/path=/ELAA/imx6_yocto_bsp_2.1_2.0.0/downloads&parentPath=/ELAA https://pan.baidu.com/s/1nvqgx2T#list/path=%2FELAA%2Fimx6_yocto_bsp_2.1_2.0.0%2Fdownloads&parentPath=%2FELAA]</code>
| + | === '''OS Support List''' === |
| | | |
− | :If you get downloads tarball, you can copy to your '''${WORKSPACE}'''
| + | [[RISC_series_RK3588_Linux|RISC_series (ROM-6881) Debian11]] |
| | | |
− | Follow the steps below:
| |
| | | |
− | 1.Exit container and back to local machine
| + | === '''User Guide''' === |
| | | |
− | $ exit
| + | RISC series(ROM-6881) |
| | | |
− | 2.Copy Downloads tarball to ${WORKSPACE} , and change owner
| + | *[[Linux_BSP_User_Guide_for_rk3588_series_Debian11|Linux_BSP_User_Guide_for_rk3588_series_Debian11]] |
| + | *[[Getting_Start_RK3588|Getting Start]] |
| + | *[[RK3588/Linux/Main_Manual|Manual (Building...)]] |
| + | *MAC_Address |
| + | *Qt5Creator |
| + | *Qt5Creator_toolchain_Qt_5.11.3 |
| | | |
− | $ cp downloads-2.1.tar.gz '''${WORKSPACE}'''
| + | |
− | $ sudo chown adv:adv ${WORKSPACE}/downloads-2.1.tar.gz
| |
| | | |
− | 3.Back to container
| + | = '''RK_ALL''' = |
| | | |
− | $ docker start '''${CONTAINER_NAME}'''
| + | === '''User Guide''' === |
− | $ docker attach '''${CONTAINER_NAME}'''
| |
| | | |
− | 4.Unpack Downloads tarball
| + | All rockchip platforms (RK3288、RK3399、RK3568、RK3588 etc) have similar funtions. |
| | | |
− | $ tar zxvf downloads-2.1.tar.gz
| + | Here are the summary FAQs : |
| | | |
− | 5.make link to downloads folder
| + | *[[RK_PLatform_Quick_Start|Quick Start]] |
| + | *[[RK_ALL_Qt_Toolchain|QT ToolChain]] |
| + | *[[RK_ALL_NPU|NPU]] |
| + | *[[RK_ALL_RF_Test|RF Test]] |
| | | |
− | $ cd adv-release-bsp
| + | = '''nVidia''' = |
− | $ ln -s ${WORKSPACE}/downloads_2.1 downloads
| |
| | | |
− | == <span style="color:#0070c0">Introducing BSP</span> == | + | === '''OS Support List''' === |
| | | |
− | :The BSP is based on Yocto Project with Freescale enhanced features for i.MX6, plus specific target board features from Advantech Inc..
| + | *[[IoTGateway/BSP/Linux/nVidia_Jetson_OS_Support_List|nVidia Jetson OS Support List]] |
− | :The Advantech Yocto Project BSP Release directory contains a "sources" directory, which contains the recipes used to build,
| |
| | | |
− | one or more build directories, and a set of scripts used to set up the environment.
| + | === '''User Guide''' === |
| | | |
− | :The recipes used to build the project come from both the community and Advantech. The Yocto Project layers are downloaded
| + | *[[Linux_BSP_User_Guide_for_jetson_series|Linux BSP build for jetson series]] |
| | | |
− | to the sources directory. This sets up the recipes that are used to build the project.
| + | === '''Jetbot''' === |
| | | |
− | === <span style="color:#0070c0">Naming Rule</span> ===
| + | *[[Jetbot_ROS|Jetbot ROS]] |
| | | |
− | :The tarball/prebuilt image name is consist of the model name followed by "LB" or "LI" plus version number and released date.
| + | === '''Jetson AI''' === |
| | | |
− | :For example, '''BSP file name: imx6LBV8040_2017-01-16.tgz'''<br/>
| + | *[[Deploying_Deep_Learning|Deploying Deep Learning]] |
− | :which , "LB" is acronym of <span style="color:#ff0000">'''L'''</span>inux <span style="color:#ff0000">'''B'''</span>SP,<br/>
| |
− | : "V8040" stands for <span style="color:#ff0000">'''V'''</span>ersion <font color="#ff0000">'''8'''</font>.<span style="color:#ff0000">'''040'''</span><nowiki>.</nowiki>
| |
| | | |
| + | === '''DevcieOn''' === |
| | | |
| + | *[[DeviceOn|DevinOn]] |
| | | |
| + | === '''FQA''' === |
| | | |
| + | = '''LS1046''' = |
| | | |
| + | === '''OS Support List''' === |
| | | |
| + | *[[OS_Support_List_(based_on_Ubutu_18.04)|OS Support List (based on Ubuntu 18.04)]] |
| | | |
| + | === '''User Guide''' === |
| | | |
| + | *[[Linux_BSP_build_User_Guide_(LSDK20.12)|Linux BSP build User Guide (LSDK20.12)]] |
| + | *[[Security_fuse_processor_(SFP)|Security fuse processor (SFP)]] |
| + | *[[LS1046A_-_Data_Path_Acceleration_Architecture_(DPAA)|Data Path Acceleration Architecture (DPAA)]] |
| | | |
| + | === '''Product ''' === |
| | | |
− | :For example, '''Yocto image name: 7421A1LIV8040_DualPlus_2017-01-16.img.gz'''<br/>
| + | '''NXP LS1046A Cortex®-A72 COM Express Type 7 Computer-on-Module ''' |
− | :which "7421A1" stands for <span style="color:#ff0000">'''ROM-7421 A1'''</span><br/>
| |
− | : "LI" is acronym for prebuilt <span style="color:#ff0000">'''L'''</span>inux <span style="color:#ff0000">'''I'''</span>mage,<br/>
| |
− | : "DualPlus" means this image is fit for Dual Plus Core/Quad Plus Core.
| |
| | | |
− | :For example, '''Yocto image name: 3420A1LIV8050_DualQuad_2017-01-17.img.gz'''<br/> | + | *[http://ess-wiki.advantech.com.tw/view/ROM-8720_user_guide ROM-8720 user guide] |
− | :which "3420A1" stands for <span style="color:#ff0000">'''ROM-3420 A1'''</span><br/>
| |
− | : "LI" is acronym for prebuilt <span style="color:#ff0000">'''L'''</span>inux <span style="color:#ff0000">'''I'''</span>mage,<br/>
| |
− | : "DualQuad" means this image is fit for Dual Core/Quad Core.
| |
| | | |
− | :For example, '''Yocto image name: U220A1LIV8080_DualLiteSolo_2017-02-08.img.gz'''<br/>
| + | === '''FAQ''' === |
− | :which "U220A1" stands for <span style="color:#ff0000">'''UBC-220 A1'''</span><br/>
| |
− | : "LI" is acronym for prebuilt <span style="color:#ff0000">'''L'''</span>inux <span style="color:#ff0000">'''I'''</span>mage,<br/>
| |
− | : "DualLiteSolo" means this image is fit for Dual Lite Core/Solo Core.
| |
| | | |
− | === <span style="color:#0070c0">BSP Content</span> === | + | = '''Phytium''' = |
− | <div style="margin-left:0.499cm; margin-right:0cm">The description of some important folders list below:</div><div style="margin-left:1.499cm; margin-right:0cm">'''sources/'''</div><div style="margin-left:1.998cm; margin-right:0cm">'''meta-advantech/''' : meta layer by Advantech</div><div style="margin-left:1.998cm; margin-right:0cm">'''meta-fsl-*/''' : meta layer by Freescale</div><div style="margin-left:1.499cm; margin-right:0cm">'''fsl-setup-release.sh''' : to create one new build environment</div><div style="margin-left:1.499cm; margin-right:0cm">'''setup-environment''' : to continue an exist build environment</div>
| |
− | == <span style="color:#0070c0">Build Instructions</span> ==
| |
| | | |
− | === <span style="color:#0070c0">To create one new build environment</span> === | + | === '''Kylin OS''' === |
| + | *[[Phytium_Kylin_Qt_Toolchain|QT ToolChain]] |
| | | |
− | :Perform the following commands in terminal console
| |
− | ::<code>$ cd <span style="color:#7030a0">'''${BSP_HOME}'''</span></code>
| |
− | ::<code>$ MACHINE=<span style="color:#7030a0">'''${MC}'''</span> source fsl-setup-release.sh -b <span style="color:#7030a0">'''${BDIR}'''</span> -e x11</code>
| |
− | :You need to read and accept the EULA.
| |
− | :[[File:Accept EULA.png|RTENOTITLE]]
| |
| | | |
− | === <span style="color:#0070c0">To continue an exist build environment</span> === | + | = '''ELAA''' = |
| | | |
− | :Perform the following commands in terminal console
| + | *[[IoTGateway/BSP/Linux/ELAA/Document|Document]] |
− | ::<code>$ cd <span style="color:#7030a0">'''${BSP_HOME}'''</span></code> | + | *[http://forum.elaa-platform.org/ ELAA Developer Forum] |
− | ::<code>$ source setup-environment <span style="color:#7030a0">'''${BDIR}'''</span></code>
| |
| | | |
− | === <span style="color:#0070c0">To build sdcard image</span> === | + | == Add on value == |
− | | |
− | :To create/continue a build environment
| |
− | :Perform the following command in terminal console
| |
− | ::<code>$ bitbake fsl-image-qt5</code>
| |
− | :The file, fsl-image-qt5-<span style="color:#7030a0">'''${MC}'''</span>.sdcard, will be located in directory, ./tmp/deploy/images/<span style="color:#7030a0">'''${MC}'''</span>, while building process finished successfully.
| |
− | | |
− | === <span style="color:#0070c0">To build toolchain installer</span> ===
| |
− | | |
− | :To create/continue a build environment
| |
− | :Perform the following command in terminal console
| |
− | ::<code>$ bitbake meta-toolchain-qt5</code><br/>
| |
− | :The below installer will be located in the directory "./tmp/deploy/sdk".
| |
− | ::<tt>fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-<span style="color:#7030a0">'''${KERNEL}'''</span>-1.1.0.sh</tt><br/>
| |
− | | |
− | === <span style="color:#0070c0">To build u-boot</span> ===
| |
− | | |
− | :To create/continue a build environment
| |
− | :Perform the following command in terminal console
| |
− | ::<code>$ bitbake u-boot-imx</code>
| |
− | :The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in the directory, ./tmp/deploy/images/<span style="color:#7030a0">'''${MC}'''</span>.
| |
− | | |
− | === <span style="color:#0070c0">To modify source code and rebuild u-boot</span> ===
| |
− | | |
− | :To create/continue a build environment
| |
− | :Perform the following command in terminal console
| |
− | ::to modify source code and created a patch file
| |
− | :::<code>$ git diff > test.patch</code>
| |
− | ::to create "u-boot-imx" directory and copy the "test.patch" file in following path
| |
− | :::<code>sources/meta-advantech/meta-fsl-imx6/recipes-bsp/u-boot$</code>
| |
− | ::to open "u-boot-imx_2016.03.bbappend" file in following path
| |
− | :::<code>sources/meta-advantech/meta-fsl-imx6/recipes-kernel$vi u-boot-imx_2016.03.bbappend</code>
| |
− | :::<code>FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"</code>
| |
− | :::<code>SRCBRANCH = "imx_v2016.03_4.1.15_2.0.0_ga"</code>
| |
− | :::<code>UBOOT_SRC = "..."</code>
| |
− | :::<code>SRCREV = "${AUTOREV}"</code>
| |
− | ::to add path information of patch file to u-boot-imx_2016.03.bbappend file
| |
− | :::<code>SRC_URI += "file://test.patch</code>
| |
− | ::to clean u-boot image and code if you modify content of "mx6*.defconfig" file or "Makefile" file in the patch file
| |
− | :::<code>$ bitbake u-boot-imx -c cleansstate</code>
| |
− | ::to build u-boot image
| |
− | :::<code>$ bitbake u-boot-imx</code>
| |
− | | |
− | === <span style="color:#0070c0">To build linux kernel</span> ===
| |
− | | |
− | :To create/continue a build environment
| |
− | :If you operate on docker images, please install tmux application before running this command
| |
− | :::<code>$ sudo apt-get install tmux</code>
| |
− | :Type following command to enter tmux
| |
− | :::<code>$ tmux</code>
| |
− | :Perform the following command in terminal console to show up menuconfig
| |
− | :::<code>$ bitbake linux-imx -c menuconfig</code>
| |
− | :After edit menuconfig, type following command to exit tmux windows
| |
− | :::<code>$ exit</code>
| |
− | :to build kernel image
| |
− | :::<code>$ bitbake linux-imx</code>
| |
− | :The two files, zImage & zImage-<span style="color:#7030a0">'''${IMX6PROC}'''</span>-<span style="color:#7030a0">'''${BOARD}'''</span>-<span style="color:#7030a0">'''${BOARD'''</span>'''<span style="color:#7030a0">_REV</span><span style="color:#7030a0">}</span>'''.dtb, will be located in the directory, ./tmp/deploy/images/<span style="color:#7030a0">'''${MC}'''</span>.
| |
− | | |
− | === <span style="color:#0070c0">To modify source code and rebuild linux kernel</span> ===
| |
− | | |
− | :To create/continue a build environment
| |
− | :Perform the following command in terminal console
| |
− | ::to modify source code and created a patch file
| |
− | :::<code>$ git diff > test.patch</code>
| |
− | ::to create "linux-imx" directory and copy the "test.patch" file in following path
| |
− | :::<code>sources/meta-advantech/meta-fsl-imx6/recipes-kernel/linux/linux-imx$</code>
| |
− | ::to open "linux-imx_4.1.15.bbappend" file in following path (<code><span style="color:#FF0000;">linux-imx</span>_4.1.15.bbappend will check <span style="color:#FF0000;">linux-imx</span> folder </code>)
| |
− | :::<code>sources/meta-advantech/meta-fsl-imx6/recipes-kernel/linux/$vi linux-imx_4.1.15.bbappend</code>
| |
− | :::<code>FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"</code>
| |
− | :::<code>SRCBRANCH = "imx_4.1.15_2.0.0_ga"</code>
| |
− | :::<code>KERNEL_SRC = "..."</code>
| |
− | :::<code>SRCREV = "${AUTOREV}"</code>
| |
− | ::to add path information of patch file to linux-imx_4.1.15.bbappend file
| |
− | :::<span style="color:#FF0000;"><code>SRC_URI += "file://test.patch</code></span>
| |
− | ::to clean kernel image and code if you modify content of "imx_v7_adv_defconfig" file or "Makefile" file in the patch file
| |
− | :::<code>$ bitbake linux-imx -c cleansstate</code>
| |
− | ::to build kernel image
| |
− | :::<code>$ bitbake linux-imx</code>
| |
− | | |
− | == <span style="color:#0070c0">Creating boot-up on-board flash from prebuilt image</span> ==
| |
− | | |
− | === <span style="color:#0070c0">To create one boot-up SD card</span> ===
| |
− | | |
− | :Perform the following command in terminal console
| |
− | ::<code>$ gunzip -c '''<span style="color:#7030a0">${PREBUILT_IMAGE</span>''' | dd of=<span style="color:#7030a0">'''${SD_DEVICE}'''</span> bs=1M</code>
| |
− | ::<code># sync</code>
| |
− | | |
− | === <span style="color:#0070c0">To transfer whole system to on-board flash</span> ===
| |
− | | |
− | :Boot up from SD card
| |
− | :Perform the following commands in debug console
| |
− | ::<code># cd /mk_inand</code>
| |
− | ::<code># ./mksd-linux.sh /dev/mmcblk0</code>
| |
− | :press y followed by Enter, if following message shows up:
| |
− | ::[[File:All data will be destroyed.png|RTENOTITLE]]
| |
− | :While "[Done]" shows up means the transferring is finished.
| |
− | | |
− | == <span style="color:#0070c0">Creating boot-up on-board flash from built sdcard image</span> ==
| |
− | | |
− | === <span style="color:#0070c0">To create one boot-up SD card</span> ===
| |
− | | |
− | :Perform the following commands in terminal console
| |
− | ::<code>$ pushd <span style="color:#7030a0">'''${BSP_HOME}'''</span>/<span style="color:#7030a0">'''${BDIR}'''</span>/tmp/deploy/images/<span style="color:#7030a0">'''${MC}'''</span></code>
| |
− | ::<code>$ dd if=<span style="color:#7030a0">'''${SDCARD_IMAGE}'''</span> of=<span style="color:#7030a0">'''${SD_DEVICE}'''</span> bs=1M</code>
| |
− | ::<code>$ sync</code>
| |
− | ::<code>$ popd</code>
| |
− | | |
− | === <span style="color:#0070c0">To transfer whole system to on-board flash</span> ===
| |
− | | |
− | :Boot up from SD card
| |
− | :Insert USB stick that contains <span style="color:#7030a0">'''${SDCARD_IMAGE}'''</span>, USB stick will be auto mounted to /run/media/sda1.
| |
− | :Perform the following commands in debug console
| |
− | ::<code># umount /dev/mmcblk0p?</code>
| |
− | ::<code># cd /run/media/sda1</code>
| |
− | ::<code># dd if=<span style="color:#7030a0">'''${SDCARD_IMAGE}'''</span> of=/dev/mmcblk0 bs=4M conv=fsync</code>
| |
− | ::<code># P2START=$(fdisk -lu | grep mmcblk0p2 | awk '{print $2}')</code>
| |
− | ::<code># echo -e "d\n2\nn\np\n2\n<span style="color:#7030a0">'''${P2START}'''</span>\n\nw\n" | fdisk -u /dev/mmcblk0</code>
| |
− | ::<code># umount /dev/mmcblk0p2</code>
| |
− | ::<code># e2fsck -f -y /dev/mmcblk0p2</code>
| |
− | ::<code># resize2fs /dev/mmcblk0p2</code>
| |
− | ::<code># poweroff</code>
| |
− | | |
− | == <span style="color:#0070c0">Debug console information</span> ==
| |
− | | |
− | If you want to see debug message from device, you need to prepare for hardware device and software tool.
| |
− | | |
− | === <span style="color:#0070c0">Preparing for hardware device</span> ===
| |
− | | |
− | *The following URL provides information about the debug port slot and the debug port line for each device
| |
− | | |
− | [[Debug_Port_Information#i.MX6|Debug Port Information]]
| |
− | | |
− | === <span style="color:#0070c0">Preparing for software tool</span> ===
| |
− | | |
− | *You need to prepare the debug console tool. For example: "minicom" tool or "putty" tool.
| |
− | *Baud rate: 115200
| |
− | | |
− | = Customization =
| |
− | | |
− | == <span style="color:#0070c0">Package addition</span> ==
| |
− | | |
− | === <span style="color:#0070c0">To add tcf-agent & openssh-sftp-server</span> ===
| |
− | | |
− | :Navigate to the directory where fsl-image-adv.inc located
| |
− | ::<code>$ cd <span style="color:#7030a0">'''${BSP_HOME}'''</span>/sources/meta-advantech/recipes-fsl/images</code>
| |
− | :Add following line to fsl-image-adv.inc
| |
− | ::<code>IMAGE_INSTALL += " tcf-agent openssh-sftp-server "</code>
| |
− | :[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV5_User_Guide#To_continue_an_exist_build_environment|Continue an exist build environment]] and [[IoTGateway/BSP/Linux/iMX6/Yocto_LBV5_User_Guide#To_build_sdcard_image|build sdcard image]]
| |
− | | |
− | === <span style="color:#0070c0">To add chromium browser</span> ===
| |
− | | |
− | :Navigate to the directory where local.conf located
| |
− | ::<code>$ cd <span style="color:#7030a0">'''${BSP_HOME}'''</span>/<span style="color:#7030a0">'''${BDIR'''</span>'''<span style="color:#7030a0">}</span>'''/conf</code>
| |
− | :Add following two lines to local.conf
| |
− | ::<code>CORE_IMAGE_EXTRA_INSTALL += "chromium"</code>
| |
− | ::<code>LICENSE_FLAGS_WHITELIST="commercial"</code>
| |
− | :[[#To_continue_an_exist_build_environment|Continue an exist build environment]] and [[#To_build_sdcard_image|build sdcard image]]
| |
− | | |
− | == <span style="color:#0070c0">Setting up SDK</span> ==
| |
− | | |
− | :Please follow the section,[[IoTGateway/BSP/Linux/iMX6/Yocto_LBV5_User_Guide#To_build_toolchain_installer|<span style="color:#FF0000;">To build toolchain installer</span>]], to build one toolchain installer
| |
− | :Perform the following command in terminal console
| |
− | ::<code>$ cd <span style="color:#7030a0">'''${BSP_HOME}'''</span>/<span style="color:#7030a0">'''${BDIR}'''</span>/tmp/deploy/sdk</code>
| |
− | ::<code>$ sudo ./fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-<span style="color:#7030a0">'''${KERNEL}'''</span>-1.1.0.sh</code><br/>
| |
− | :Enter new installed directory or just press <code>Enter</code> to use default directory.
| |
− | :While <code>Proceed[y/n]?</code> shows up, please enter the correct one.
| |
− | :Waiting for the SDK installed (while the following messages show up completely)
| |
− | ::[[File:Setting up sdk 3.png|RTENOTITLE]]
| |
− | | |
− | == <span style="color:#0070c0">Setting up cross compiling environment</span> ==
| |
− | | |
− | :SDK has been set up (ref.[[#Setting_up_SDK|<span style="color:#FF0000;">Setting up SDK</span>]])
| |
− | :Perform the following command in terminal console
| |
− | ::<code>$ source <span style="color:#7030a0">'''${TOOLCHAIN}'''</span>/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi</code>
| |
− | | |
− | == <span style="color:#0070c0">Building & updating u-boot manually</span> ==
| |
− | | |
− | :The cross compiling environment has been set up. (ref. [[#Setting_up_cross_compiling_environment|Setting up cross compiling environment]])
| |
− | | |
− | === <span style="color:#0070c0">Copy BSP tarball to Container</span> ===
| |
− | | |
− | Refer to [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX6/Yocto_LBV8_User_Guide#Copy_BSP_tarball_to_Container <span style="color:#FF0000;">Copy_BSP_tarball_to_Container</span>] , copy u-boot tarball to ${WORKSPACE} and back to container change owner & unpack tarball
| |
− | | |
− | $ sudo chown adv:adv imx6LBV8210_2017-02-20_uboot-imx6.tgz
| |
− | $ tar zxvf imx6LBV8210_2017-02-20_uboot-imx6.tgz
| |
− | | |
− | === <span style="color:#0070c0">Config u-boot</span> ===
| |
− | | |
− | $make '''${MX6PROC}${BOARD}${BOARD_REV}'''_'''${MEM_SIZE}'''_defconfig
| |
− | | |
− | eg.
| |
− | | |
− | $make mx6qrsb4411a1_1G_defconfig
| |
− | | |
− | === <span style="color:#0070c0">Build u-boot</span> ===
| |
− | | |
− | $make -j4
| |
− | | |
− | === <span style="color:#0070c0">Replace u-boot</span> ===
| |
− | | |
− | :Perform the following command to transfer to exist boot-up SD card
| |
− | | |
− | $ dd if=u-boot_crc.bin.crc of='''${SD_DEVICE}''' bs=512 seek=2 conv=fsync
| |
− | $ dd if=u-boot_crc.bin of='''${SD_DEVICE}''' bs=512 seek=3 conv=fsync
| |
− | | |
− | :Perform the following command to transfer to on-board flash
| |
− | | |
− | $ dd if=u-boot_crc.bin.crc of=/dev/mmcblk0 bs=512 seek=2 conv=fsync
| |
− | $ dd if=u-boot-crc.bin of=/dev/mmcblk0 bs=512 seek=3 conv=fsync
| |
− | | |
− | == <span style="color:#0070c0">Building & updating kernel/modules/dtb manually</span> ==
| |
− | | |
− | :The cross compiling environment has been set up. (ref. [[#Setting_up_cross_compiling_environment|Setting up cross compiling environment]])
| |
− | | |
− | === <span style="color:#0070c0">Copy BSP tarball to Container</span> ===
| |
− | | |
− | Refer to [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX6/Yocto_LBV8_User_Guide#Copy_BSP_tarball_to_Container Copy_BSP_tarball_to_Container] , <span style="color:#FF0000;">copy kernel tarball </span>to ${WORKSPACE} and back to container
| |
− | | |
− | change owner & unpack tarball
| |
− | | |
− | $ sudo chown adv:adv imx6LBV8210_2017-02-20_linux-imx6.tgz
| |
− | $ tar zxvf imx6LBV8210_2017-02-20_linux-imx6.tgz
| |
− | | |
− | === <span style="color:#0070c0">Config kernel</span> ===
| |
− | | |
− | :Configure linux kernel
| |
− | | |
− | $cd linux-imx6
| |
− | $make distclean
| |
− | $make imx_v7_adv_defconfig
| |
− | $make menuconfig
| |
− | | |
− | If you get error ,when you "make imx_v7_adv_defconfig" , you need to insatall "libncurses*"
| |
− | | |
− | $apt-get install libncurses*
| |
− | | |
− | [[File:Error.JPG|imx_v7_adv_defconfig_error]]
| |
− | | |
− | === <span style="color:#0070c0">Build kernel</span> ===
| |
− | | |
− | :Start building linux kernel
| |
− | | |
− | $ make -j4 zImage
| |
− | | |
− | :The kernel image file, zImage, is located in the directory "./arch/arm/boot/".
| |
− | | |
− | :Start building kernel modules
| |
− | | |
− | $ make -j4 modules
| |
− | | |
− | :Copy all modules to a temporary rootfs directory, "~/temp/rootfs"
| |
− | | |
− | $ make modules_install INSTALL_MOD_PATH=~/temp/rootfs
| |
− | | |
− | :Building device tree blob
| |
− | | |
− | $ make -j4 <span style="color:#7030a0">'''${IMX6PROC}'''</span>-<span style="color:#7030a0">'''${BOARD}'''</span>-<span style="color:#7030a0">'''${BOARD_REV}'''</span>.dtb
| |
− | | |
− | :The device tree blob, <span style="color:#7030a0">'''${IMX6PROC}'''</span>-<span style="color:#7030a0">'''${BOARD}'''</span>-<span style="color:#7030a0">'''${BOARD_REV}'''</span>.dtb, is located in the directory "./arch/arm/boot/dts/".
| |
− | | |
− | === <span style="color:#0070c0">Replace kernel & dts</span> ===
| |
− | | |
− | :Replace kernel
| |
− | ::copy zImage to SDcard or emmc
| |
− | :Replace dtb file
| |
− | ::copy dtb file to SDcard or emmc
| |
− | | |
− | == <span style="color:#0070c0">Improve boot speed</span> ==
| |
− | | |
− | *Bootloader
| |
− | | |
− | 1.bootdelay time
| |
− | | |
− | :We can cancel the bootdelay time by setting bootloader environment value.
| |
− | | |
− | setenv bootdelay 0
| |
− | env save
| |
− | reset
| |
− | | |
− | 2.Disable console
| |
− | | |
− | :Disable debug message output can also improve boot speed
| |
− | | |
− | Disable kernel message
| |
− | | |
− | setenv mmcargs setenv bootargs console=${console},${baudrate} ${smp} root=${mmcroot} ${bootargs} '''quiet'''
| |
− | env save
| |
− | reset
| |
− | | |
− | Or
| |
− | | |
− | :Disable debug port
| |
− | | |
− | setenv console
| |
− | env save
| |
− | reset
| |
− | | |
− | *Rootfs
| |
− | | |
− | 1.Use smaller rootfs
| |
− | | |
− | :We can speed up boot times by using a smaller rootfs instead of fsl-image-qt5 image
| |
− | | |
− | eg. core-image-full-cmdline, core-image-minimal
| |
− | | |
− | bitbake core-image-full-cmdline
| |
− | | |
− | It's a console-only image with more full-featured Linux system functionality installed.
| |
− | | |
− | And replace the original fsl-image-qt5 rootfs.
| |
− | | |
− | *Services
| |
− | | |
− | 1. Using '''update-rc.d''' remove ,we can remove unnecessary services.
| |
− | | |
− | update-rc.d -f <basename> remove
| |
− | | |
− | = System Recovery =
| |
− | | |
− | Please refer to [[#Creating_boot-up_on-board_flash_from_prebuilt_image|Creating boot-up on-board flash from prebuilt image]] / [[#Creating_boot-up_on-board_flash_from_built_sdcard_image|sdcard image]] to create a boot-up SD card and transfer whole system to on-board flash.
| |
− | | |
− | = Package List =
| |
− | | |
− | '''In BSP''', list all packages which will be built in the image
| |
− | | |
− | bitbake -g '''fsl-image-qt5''' && cat pn-depends.dot | grep -v -e '-native' | grep -v digraph | grep -v -e '-image' \
| |
− | | awk '{print $1}' | sort | uniq
| |
− | | |
− | File:[[:File:BSP_package1.docx|Package List]]
| |
− | | |
− | Show all recipes (include non-installed packages)
| |
− | | |
− | bitbake -s
| |
− | | |
− | File:[[:File:BSP_package2.docx|Package Version List]]
| |
− | | |
− | You can also check <span style="color:purple">'''${BDIR}'''</span>/tmp/deploy/images/<span style="color:purple">'''${MC}'''</span>/fsl-image-qt5-<span style="color:purple">'''${MC}'''</span>.manifest
| |
− | | |
− | It will show the same content with checking by rpm tool on target board.
| |
− | | |
− | '''On target board''', list all packages by rpm tool
| |
− | | |
− | rpm -qa --root / --dbpath /var/lib/rpm | sort
| |
− | | |
− | File:[[:File:Onboard_package.docx|Package List]]
| |
− | | |
− | == Quark ==
| |
− | | |
− | === [[IoTGateway/BSP/Linux/Quark/OS_Support_List|OS Support List]] ===
| |
− | | |
− | === [[IoTGateway/BSP/Linux/Quark/Yocto_LBV1_User_Guide|Version 1 User Guide]] ===
| |
− | | |
− | :This version is based on Intel Quark BSP v1.0.4 (Yocto 1.4.2).
| |
− | | |
− | === [[IoTGateway/BSP/Linux/Quark/Yocto_LBV2_User_Guide|Version 2 User Guide]] ===
| |
− | | |
− | :This version is based on Intel Quark BSP v1.2.0 (Yocto 1.7.2).
| |
− | | |
− | *[[IoTGateway/BSP/Linux/Quark/Bluetooth_Testing_Guide|Bluetooth Testing Guide]]
| |
− | *[[IoTGateway/BSP/Linux/Quark/Getting_BSP_from_GitHub|Getting the BSP from GitHub]]
| |
− | | |
− | ::There is a [[IoTGateway/BSP/Linux/Quark/Getting_BSP_from_GitHub#Supported_version|newer version]] which is based on Intel Quark BSP v1.2.1.1 (Yocto 1.7.2).
| |
− | | |
− | *[[IoTGateway/BSP/Linux/Quark/BuildingDebianJessieRootfs|Building Debian (Jessie) Rootfs for Quark]]
| |
− | | |
− | === [[IoTGateway/BSP/Linux/Quark/FAQ|FAQ]] ===
| |
− | | |
− | == APQ8016 ==
| |
− | | |
− | === [[IoTGateway/BSP/Linux/APQ8016/OS_Support_List|OS Support List]] ===
| |
− | | |
− | === Linux BSP User Guide ===
| |
− | | |
− | *[[IoTGateway/BSP/Linux/APQ8016/BSP_User_Guide_V1|Version 1 (Yocto 2.1 & Debian 9)]]
| |
− | | |
− | === [[IoTGateway/BSP/Linux/APQ8016/FAQ|FAQ]] ===
| |
− | | |
− | == AM335x ==
| |
− | | |
− | === OS Support List ===
| |
− | | |
− | *[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM335x/OS_Support_List OS Support List(base on ti-skd-am335x-evm-06.00.00.00 and ti-sdk-am335x-evm-02.00.00.00.00 and Yocto 2.1)]
| |
− | | |
− | === [[OS_Support_List(based_on_Yocto_2.1)_am335x|<font color="#0066cc">OS Support List(based on Yocto 2.1)</font>]] ===
| |
− | | |
− | === [[IoTGateway/BSP/Linux/AM335x/AM335x_LBV6_User_Guide|<font color="#0066cc">Version 1 (based on ti-sdk-am335x-evm-06.00.00.00 ) User Guide</font>]] ===
| |
− | | |
− | === [[IoTGateway/BSP/Linux/AM335x/AM335x_LBV2_User_Guide|<span id="version_1_.28based_on_ti-sdk-am335x-evm-06.00.00.00_.29" class="mw-headline"><font color="#0066cc">Version 2 (based on ti-sdk-am335x-evm-02.00.00.00.00 ) User Guide</font></span>]] ===
| |
− | | |
− | === [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM57xx/AM57xx_User_Guide <span id="version_1_.28based_on_ti-sdk-am335x-evm-06.00.00.00_.29" class="mw-headline"><font color="#0066cc">Version 3 (based on Yocto 2.1) User Guide</font></span>] ===
| |
− | | |
− | *[[Function_Test|Function Test]]
| |
− | | |
− | === FAQ ===
| |
− | | |
− | *[[IoTGateway/BSP/Linux/AM335x/FAQ|FAQ]]
| |
− | | |
− | == AM57xx ==
| |
− | | |
− | === [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM57xx/OS_Support_List <font color="#0066cc">OS Support List(base on Yocto 2.1)</font>] ===
| |
− | | |
− | === [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/AM57xx/AM57xx_User_Guide <font color="#0066cc">Version 1 (based on Yocto 2.1) User Guide</font>] ===
| |
− | | |
− | *[[Getting_Started|Function Test]]
| |
− | | |
− | === FAQ ===
| |
| | | |
− | *[[IoTGateway/BSP/Linux/AM57xxx/FAQ|FAQ]] | + | *[[SW_Service/API|SUSI 4.0]] |
− | | + | *[[SW_Service/SUSI_IoT|SUSI IoT]] |
− | == ELAA ==
| + | *[[WISE-PaaS/RMM_Agent|RMM-Agent]] |
− | | |
− | *[[IoTGateway/BSP/Linux/ELAA/Document|Document]] | |
− | | |
− | == Add on value ==
| |
| | | |
− | *[[SW_Service/API|SUSI 4.0]]
| |
− | *[[SW_Service/SUSI_IoT|SUSI IoT]]
| |
− | *[[WISE-PaaS/RMM_Agent|RMM-Agent]]
| |
| [[Category:BSP]] | | [[Category:BSP]] |
All rockchip platforms (RK3288、RK3399、RK3568、RK3588 etc) have similar funtions.