Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:arm:tqma6ulx:data [2019/10/21 10:34] – added section Product URL list liedmann | en:arm:tqma6ulx:data [2023/08/28 16:20] (current) – Fixed version Matrix rudolphr | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ~~NOCACHE~~ | ||
- | |||
====== Entry Page ====== | ====== Entry Page ====== | ||
+ | |||
== Third-Party Add-Ons == | == Third-Party Add-Ons == | ||
- | * [[: | + | |
+ | | ||
<WRAP hide> | <WRAP hide> | ||
- | * [[: | + | |
- | | + | |
+ | * [[: | ||
</ | </ | ||
===== Board Support Packages ===== | ===== Board Support Packages ===== | ||
- | | + | |
- | * [[.:yocto:meta-tq_qs|Yocto Quick Start Guide]] for [[https:// | + | |
+ | * [[.:linux:yocto:overview| YOCTO Linux BSP Documentation]] | ||
* [[.: | * [[.: | ||
- | <wrap hide> | + | <wrap hide> |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | </ | + | |
===== Product URL list ===== | ===== Product URL list ===== | ||
- | [[https:// | + | [[https:// |
+ | ===== Starterkit ===== | ||
+ | * [[.: | ||
+ | |||
+ | <WRAP hide> | ||
+ | |||
+ | * [[.: | ||
+ | * [[..: | ||
+ | |||
+ | </ | ||
====== Hardware ====== | ====== Hardware ====== | ||
+ | |||
===== Onboard I2C devices ===== | ===== Onboard I2C devices ===== | ||
- | \\ | ||
- | ^ I2C bus |::: ^ | + | <panel type=" |
- | ^ I2C4 |::: | 0x08\\ PMIC | 0x1A\\ Tempsensor | + | |
- | ^ ::: |::: |::: | ++ 0x48 |\\ only for TQMa6UL2-AA REV.0101 ++\\ Tempsensor | + | |
+ | ^ I2C bus ^ TQMa6ULx | ||
+ | ^ I2C4 | 0x08\\ PMIC | 0x1A\\ Tempsensor\\ ++ 0x48 |\\ only for TQMa6UL2-AA REV.0101 ++ | 0x32\\ | ||
+ | ^ I2C bus | MBa6ULx | ||
+ | ^ I2C4 | 0x18\\ Audiocodec | ||
+ | |||
+ | </ | ||
====== Hardware Issues ====== | ====== Hardware Issues ====== | ||
+ | ====== Linux BSP ====== | ||
+ | ===== U-Boot ===== | ||
+ | <panel type=" | ||
+ | |||
+ | ^ Buildsystem | ||
+ | | PTXdist |||| ✔ | ✔ | ✔ | ✔ | ✔ | | ||
+ | | Yocto |||| | ||
+ | ^ Feature | ||
+ | ^ TQ Product | ||
+ | | TQMa6ULx | ||
+ | | TQMa6ULx | ||
+ | | TQMa6ULx | ||
+ | | TQMa6ULx | ||
+ | | TQMa6ULx | ||
+ | | TQMa6ULx | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== Supported boot devices ===== | ||
+ | |||
+ | <panel type=" | ||
- | ====== Linux BSP ====== | ||
- | ===== U-Boot ===== | ||
- | ==== Supported features ==== | ||
- | ^ Feature | ||
- | ^ TQ Product | ||
- | | TQMa6ULx | ||
- | | TQMa6ULx | ||
- | | TQMa6ULx | ||
- | | TQMa6ULx | ||
- | | TQMa6ULx | ||
- | | TQMa6ULx | ||
- | \\ | ||
- | ==== Supported boot devices ==== | ||
^ Boot device | ^ Boot device | ||
- | | eMMC / SD | | + | | eMMC / SD | |
- | | TFTP boot | | + | | TFTP boot | |
- | | QSPI NOR | + | | QSPI NOR | |
+ | |||
+ | </ | ||
===== Kernel ===== | ===== Kernel ===== | ||
+ | |||
===== Operating System ===== | ===== Operating System ===== | ||
- | ==== Supported Features | + | <panel type=" |
- | ^ Feature | + | |
- | ^ TQ Product | + | |
- | ^ TQMa6ULx | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | ::: | ::: | LVDS | • | • | • | • | 24-bit available via X17 | | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ ::: | i.MX6UL | + | |
- | ^ MBa6ULx | + | |
- | ^ ::: | ::: | Line In | | | • | • | • | | | + | |
- | ^ ::: | ::: | Microphone In | | | | | | On request | + | |
- | ^ ::: | PCA9554BS | + | |
- | ^ ::: | PCA9554BS | + | |
- | ^ ::: | SIM | | | | | | | Not tested / available on Connector X22 on MBa6ULx | + | |
- | ^ ::: | STMPE811 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | USB2517 | + | |
- | ^ ::: | SNVS | Reset | Reset\\ | + | |
- | \\ | + | |
+ | ^ Buildsystem | ||
+ | | PTXdist |||| ✔ | ✔ | ✔ | ✔ | ✔ | | ||
+ | | Yocto |||| | ||
+ | ^ TQ Product | ||
+ | ^ TQMa6ULx | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | ::: | ::: | LVDS | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | 24-bit available via X17 | | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | | ::: | i.MX6UL | ||
+ | ^ MBa6ULx | ||
+ | | ::: | ::: | Line In | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | | | ||
+ | | ::: | ::: | Microphone In | | | | | | | | | | | On request | ||
+ | | ::: | PCA9554BS | ||
+ | | ::: | PCA9554BS | ||
+ | | ::: | SIM | | | | | | | | | | | | Not tested / available on Connector X22 on MBa6ULx | ||
+ | | ::: | STMPE811 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | USB2517 | ||
+ | | ::: | SNVS | Reset | Reset\\ | ||
+ | |||
+ | </ | ||
===== FAQ ===== | ===== FAQ ===== | ||
- | <WRAP round important> | + | <WRAP round important> |
+ | |||
+ | WORK IN PROGRESS | ||
+ | |||
+ | </ | ||
===== PTXdist ===== | ===== PTXdist ===== | ||
- | ===== BSP Version Matrix ===== | ||
- | ==== Version Matrix ==== | ||
- | ^ BSP revision | ||
- | ^ ++PTXdist|\\ version required by BSP++ | [[http:// | ||
- | ^ ++OSELAS Toolchain|\\ cf. [[http:// | ||
- | ^ Platform | ||
- | ^ U-Boot | 2015.04 rel_imx_4.1.15_1.2.0_ga + patches | ||
- | ^ Linux Kernel | ||
- | ^ Qt Version | ||
- | \\ | ||
- | ==== BSP / Hardware compatibility ==== | ||
- | <wrap round important 60%> | ||
- | ^ | ||
- | ^ ::: ^ Rev. 010x ^ Rev. 030x ^ Rev. 010x ^ Rev. 020x ^ | ||
- | ^ BSP Rev. 0100 | • | | • | | | ||
- | ^ BSP Rev. 010x | | • | | • | | ||
- | \\ | ||
- | ===== Changelog | + | ===== PTXdist |
- | ++++REV.0107 | | + | |
+ | <panel type=" | ||
+ | |||
+ | ^ BSP Revision | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | <alert type=" | ||
+ | |||
+ | **Attention!**</ | ||
+ | | ::: ^ Rev. 010x ^ Rev. 030x ^ Rev. 010x ^ Rev. 020x ^ | ||
+ | ^ BSP Rev. 0100 | ✔ | | ||
+ | ^ BSP Rev. 01xx | | ||
+ | </ | ||
+ | ** BSP ** | ||
+ | |||
+ | * Activate SYSTEMD_NETWORK for systemd configs | ||
+ | * Update 5.4 mainline kernel to 5.4.87-rt48 | ||
+ | * Update 5.4 mainline kernel to 5.4.87 | ||
+ | * Remove patches from u-boot imx 2016.03 and mainline 2017.11 | ||
+ | * Remove patches from kernel 4.19 and u-boot 2019.04 | ||
+ | * Remove tqma57xx config | ||
+ | * Add systemd ethernet config for eth0 and eth1 | ||
+ | |||
+ | **U-Boot** | ||
+ | |||
+ | * Load tq u-boot from TQ-Systems github repo | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | * kernel[-rt]: | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
**TQMa6ULx-BSP** | **TQMa6ULx-BSP** | ||
+ | |||
+ | * Updated OSELAS Toolchain to 2018.12 | ||
+ | |||
+ | **U-Boot** | ||
+ | |||
+ | * Added support for 512MB RAM variants of TQMa6UL\[L\]x REV.030x | ||
+ | * Typo fixes in output / banner / warnings | ||
+ | * Add warning for CPU / config mismatch | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **TQMa6ULx-BSP** | ||
+ | |||
* Added platform MBa6ULxL | * Added platform MBa6ULxL | ||
* Updated Build system to PTXdist 2019.01 | * Updated Build system to PTXdist 2019.01 | ||
Line 147: | Line 219: | ||
**U-Boot** | **U-Boot** | ||
+ | |||
* added several bugfixes | * added several bugfixes | ||
* fixed fdt_file environment variable definition | * fixed fdt_file environment variable definition | ||
Line 155: | Line 228: | ||
**Linux** | **Linux** | ||
+ | |||
* Update kernel version to NXP 4.14.78 | * Update kernel version to NXP 4.14.78 | ||
* Set USB1 OTG dr_mode to otg | * Set USB1 OTG dr_mode to otg | ||
Line 162: | Line 236: | ||
* fixed RS485 support | * fixed RS485 support | ||
* Added platform MBa6ULxL | * Added platform MBa6ULxL | ||
- | | + | |
- | * set USB1 OTG dr_mode to otg | + | * set USB1 OTG dr_mode to otg |
- | ++++ | + | |
- | ++++REV.0106 | + | </ |
+ | |||
+ | <panel title=" | ||
**TQMa6ULx-BSP** | **TQMa6ULx-BSP** | ||
+ | |||
* Support / fixes for TQMa6ULx with automotive grade CPU | * Support / fixes for TQMa6ULx with automotive grade CPU | ||
* e-MMC Timing fix for TQMa6ULx / TQMa6ULxL (low temperature improvement / limit clock speed) | * e-MMC Timing fix for TQMa6ULx / TQMa6ULxL (low temperature improvement / limit clock speed) | ||
Line 172: | Line 250: | ||
* update patches for TQMa6UL / TQMa6LL e-MMC clocking fix | * update patches for TQMa6UL / TQMa6LL e-MMC clocking fix | ||
* update u-boot-imx for TQMa6ULL and TQMa6UL automotive support | * update u-boot-imx for TQMa6ULL and TQMa6UL automotive support | ||
- | | + | |
**U-Boot** | **U-Boot** | ||
+ | |||
* fix output of i.MX6UL(L) speed grade with 696 MHz | * fix output of i.MX6UL(L) speed grade with 696 MHz | ||
* added TQMa6ULL1 support | * added TQMa6ULL1 support | ||
- | + | ||
**Linux** | **Linux** | ||
+ | |||
* rewrite e-MMC clocking and tuning | * rewrite e-MMC clocking and tuning | ||
* apply e-MMC clocking changes also for LGA module | * apply e-MMC clocking changes also for LGA module | ||
- | | + | |
- | ++++ | + | </ |
- | ++++REV.0104 | + | |
+ | <panel title=" | ||
**TQMa6ULx-BSP** | **TQMa6ULx-BSP** | ||
+ | |||
* Bugfixes in upstream packages | * Bugfixes in upstream packages | ||
* Splash if fbdev found | * Splash if fbdev found | ||
Line 189: | Line 272: | ||
* UBI image creation for QSPI | * UBI image creation for QSPI | ||
* Change image names (mba6ul -> mba6ulx, tqma6ul -> tqma6ulx) | * Change image names (mba6ul -> mba6ulx, tqma6ul -> tqma6ulx) | ||
+ | |||
**U-Boot** | **U-Boot** | ||
+ | |||
* Support TQMa6ULx 030x / TQMa6ULxL 020x on MBa6ULx 020x | * Support TQMa6ULx 030x / TQMa6ULxL 020x on MBa6ULx 020x | ||
* Dynamic default if no devicetree set | * Dynamic default if no devicetree set | ||
Line 198: | Line 283: | ||
* Optimize RAM timing | * Optimize RAM timing | ||
* Update base version from NXP | * Update base version from NXP | ||
+ | |||
**Linux** | **Linux** | ||
+ | |||
* Backport mmc sysfs fixes for OCR / DSR | * Backport mmc sysfs fixes for OCR / DSR | ||
* Optimize / cleanup e-MMC / SD config | * Optimize / cleanup e-MMC / SD config | ||
Line 208: | Line 295: | ||
* Support more display variants | * Support more display variants | ||
* Update base version from NXP | * Update base version from NXP | ||
- | ++++ | ||
+ | </ | ||
- | ===== DevHost ===== | + | </ |
+ | </ | ||
+ | ===== PTXdist Platform ===== | ||
- | ===== Compilation ===== | + | Configure the BSP for the desired hardware platform and software configuration using the correpsonding command from the following table: |
+ | <panel no-body=" | ||
+ | |||
+ | ^ Platform | ||
+ | | ++MBa6ulx|\\ '' | ||
+ | | ::: | ++linux ¦ busybox init|\\ '' | ||
+ | | ::: | ++linux ¦ systemd init|\\ '' | ||
+ | |||
+ | </ | ||
+ | |||
+ | **__Building the BSP:__** \\ | ||
+ | |||
+ | Execute in the BSP root directory | ||
+ | |||
+ | <code -> | ||
+ | $ ./ | ||
+ | $ ./p images | ||
+ | </ | ||
+ | |||
+ | or | ||
+ | |||
+ | <code -> | ||
+ | $ ptxdist platform configs/ | ||
+ | $ ptxdist select configs/ | ||
+ | $ ptxdist go --git | ||
+ | $ ptxdist images | ||
+ | </ | ||
+ | |||
+ | ===== PTXdist Partitions ===== | ||
+ | |||
+ | <alert type=" | ||
+ | |||
+ | Changing the partition scheme may affect the boot loader update capability and / or the kernel command line parameters!Changing the partition scheme may affect the boot loader update capability and / or the kernel command line parameters!</ | ||
+ | |||
+ | * sector size 512 Byte | ||
+ | * unpartitioned area: 4MiB (0x2000 sectors) | ||
+ | |||
+ | Sector numbers are in hexadecimal (as expected by U-Boot' | ||
+ | |||
+ | </ | ||
+ | |||
+ | ^ Sector first ^ Sector last ^ Size ^ Usage ^ | ||
+ | | 0x000000 | ||
+ | | 0x000001 | ||
+ | | 0x000002 | ||
+ | | 0x000800 | ||
+ | | 0x001000 | ||
+ | | 0x002000 | ||
+ | | 0x00C000 | ||
+ | | 0x08C000 | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | * sector size 64k | ||
+ | |||
+ | ^ Sector | ||
+ | | 0x0000 ... 0x0012 | 0x000D sectors / 832 KiB | U-Boot | ||
+ | | 0x0013 ... 0x0013 | 0x0001 sector | ||
+ | | 0x0014 ... 0x0014 | 0x0001 sector | ||
+ | | 0x0015 ... 0x0015 | 0x0005 sectors / 64 KiB | devicetree | ||
+ | | 0x0016 ... 0x0086 | 0x0070 sectors / 7 MiB | Kernel | ||
+ | | 0x0087 ... 0x0467 | 0x0380 sectors / 56 MiB | RootFS | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== Deployment PTXdist ===== | ||
- | ===== Adapt BSP ===== | ||
===== Deployment PTXdist ===== | ===== Deployment PTXdist ===== | ||
==== Create SD Card with BSP Image ==== | ==== Create SD Card with BSP Image ==== | ||
- | To install a new firmware use SD cards. To copy the built images on the host system to a connected card type: | + | ==== Create SD Card with BSP Image ==== |
+ | |||
+ | To install a new firmware use SD cards. To copy the built images on the host system to a connected card type:To install a new firmware use SD cards. To copy the built images on the host system to a connected card type: | ||
<code bash> | <code bash> | ||
$ cd <BSP project>/ | $ cd <BSP project>/ | ||
$ sudo dd if=u-boot_< | $ sudo dd if=u-boot_< | ||
</ | </ | ||
- | To find out what device file the SD card has, type "dmesg" after you connect the card to see the system messages. | + | |
- | At the bottom you'll see some " | + | To find out what device file the SD card has, type To find out what device file the SD card has, type "dmesgdmesg" after you connect the card to see the system messages. |
<code bash> | <code bash> | ||
[ 8197.588395] | [ 8197.588395] | ||
</ | </ | ||
- | ---- | + | ---- |
==== Updating existing firmware over ethernet ==== | ==== Updating existing firmware over ethernet ==== | ||
- | \\ | ||
- | To update bootloader / kernel / devicetree in a running system you have to copy the images in your tftp directory and upload them to the eMMC or SD Card.\\ | ||
+ | ==== Updating existing firmware over ethernet ==== \\ To update bootloader / kernel / devicetree in a running system you have to copy the images in your tftp directory and upload them to the eMMC or SD Card.To update bootloader / kernel / devicetree in a running system you have to copy the images in your tftp directory and upload them to the eMMC or SD Card.\\ | ||
+ | Please see Please see [[en: | ||
- | Please see [[en: | + | 1. Boot from eMMC or SD and stop autoboot in U-Boot1. Boot from eMMC or SD and stop autoboot in U-Boot\\ |
+ | <code -> | ||
+ | Hit any key to stop autoboot: | ||
+ | => | ||
+ | </ | ||
- | 1. Boot from eMMC or SD and stop autoboot in U-Boot\\ | + | \\ |
- | < | + | |
- | =></ | + | 2. Set U-Boot variable 2. Set U-Boot |
+ | |||
+ | < | ||
+ | => setenv mmcdev < | ||
+ | </ | ||
+ | |||
+ | <WRAP round info 30%> | ||
+ | |||
+ | __Device assignment: | ||
- | 2. Set U-Boot variable // | ||
- | < | ||
- | <WRAP round info 30%> | ||
- | //mmcdev 0// = eMMC\\ | ||
- | //mmcdev 1// = SD Card\\ | ||
</ | </ | ||
- | 3. Connect device via ethernet to a tftp server supplying the image\\ | + | 3. Connect device via ethernet to a tftp server supplying the image3. Connect device via ethernet to a tftp server supplying the image\\ |
- | 4. Provide the correct network configuration in U-Boot: | + | |
* => setenv autoload no | * => setenv autoload no | ||
* => setenv serverip < | * => setenv serverip < | ||
* => setenv ipaddr < | * => setenv ipaddr < | ||
* => setenv netmask < | * => setenv netmask < | ||
- | \\ | + | |
- | 5. Provide U-Boot the file name of the desired image on the tftp server: | + | \\ 5. Provide U-Boot the file name of the desired image on the tftp server:5. Provide U-Boot the file name of the desired image on the tftp server: |
- | * For U-Boot update: => setenv uboot < | + | |
- | * For Device Tree update: => setenv fdt_file < | + | * For U-Boot update: => setenv uboot < |
+ | * For Device Tree update: => setenv fdt_file < | ||
* For Kernel update: => setenv zimage < | * For Kernel update: => setenv zimage < | ||
- | \\ | + | |
- | 6. Perform Update: | + | \\ 6. Perform Update:6. Perform Update: |
- | * U-Boot update: => run update_uboot\\ | + | |
- | * Device Tree update: => run update_fdt\\ | + | * U-Boot update: => run update_uboot\\ |
+ | * Device Tree update: => run update_fdt\\ | ||
* Kernel update: => run update_kernel\\ | * Kernel update: => run update_kernel\\ | ||
<WRAP round info> | <WRAP round info> | ||
+ | |||
The u-boot update scripts automatically implement the selection of the primary copy to boot. | The u-boot update scripts automatically implement the selection of the primary copy to boot. | ||
+ | |||
</ | </ | ||
+ | |||
\\ | \\ | ||
+ | |||
---- | ---- | ||
+ | |||
+ | ==== Copy Firmware from SD card to eMMC using U-Boot ==== | ||
+ | |||
==== Copy Firmware from SD card to eMMC using U-Boot ==== | ==== Copy Firmware from SD card to eMMC using U-Boot ==== | ||
Line 283: | Line 458: | ||
* Set Starterkit to boot from SD, please see [[en: | * Set Starterkit to boot from SD, please see [[en: | ||
* Interrupt the boot process to get to the U-Boot prompt | * Interrupt the boot process to get to the U-Boot prompt | ||
- | * Use the following command to copy the SD card to eMMMC | + | * Use the following command to copy the SD card to eMMMC |
- | === Generic command === | + | === Generic command === |
- | < | + | === Generic command === |
+ | |||
+ | < | ||
+ | |||
mmc dev 1 && mmc rescan && mmc read ${loadaddr} 0 (number of blocks) | mmc dev 1 && mmc rescan && mmc read ${loadaddr} 0 (number of blocks) | ||
</ | </ | ||
<WRAP round important> | <WRAP round important> | ||
- | You have to set the number of blocks according to the image size to read entire data that is stored on the SD card and write the same number of blocks to the eMMC.\\ | + | |
- | **Formula to calulate the number of blocks**\\ | + | You have to set the number of blocks according to the image size to read entire data that is stored on the SD card and write the same number of blocks to the eMMC.\\ |
- | Size of SD card image in bytes / 512. Convert the result to a hex value.\\ | + | |
- | Since the data is stored in the SDRAM on the module the size of the image must not exeed the size of the SDRAM. | + | |
</ | </ | ||
- | === Example for precompiled SD card image included in BSP Rev.0100 === | + | === Example for precompiled SD card image included in BSP Rev.0100 === |
- | * Size of image-u-boot-fsl-mba6ul-hd.img | + | === Example for precompiled SD card image included |
- | * 293.601.280 / 512 = 573.440 | + | |
- | * 540.672 converted to hex value = h8C000 | + | |
- | < | + | * Size of image-u-boot-fsl-mba6ul-hd.img in byte = 293.601.280 |
+ | * 293.601.280 / 512 = 573.440 | ||
+ | * 540.672 converted to hex value = h8C000 | ||
+ | |||
+ | < | ||
mmc dev 1 && mmc rescan && mmc read ${loadaddr} 0 0x8c000 | mmc dev 1 && mmc rescan && mmc read ${loadaddr} 0 0x8c000 | ||
</ | </ | ||
- | + | ==== Copy rootfs from SD card to eMMC ==== | |
==== Copy rootfs from SD card to eMMC ==== | ==== Copy rootfs from SD card to eMMC ==== | ||
- | The rootfs is located in the second partition of the SD card/ | + | The rootfs is located in the second partition of the SD card/ |
- | example for TQMa6ULx | + | example for TQMa6ULx |
<code bash> | <code bash> | ||
dd if=/ | dd if=/ | ||
- | </ | + | </ |
<WRAP round important 50%> | <WRAP round important 50%> | ||
- | please keep in mind to resize the eMMC rootfs partition, | ||
- | if the rootfs size was changed in BSP configuration | ||
- | </ | ||
+ | please keep in mind to resize the eMMC rootfs partition, | ||
+ | |||
+ | </ | ||
==== Using NFS boot ==== | ==== Using NFS boot ==== | ||
+ | |||
+ | ==== Using NFS boot ==== | ||
+ | |||
+ | == Prerequisites == | ||
== Prerequisites == | == Prerequisites == | ||
Line 334: | Line 516: | ||
* [[en: | * [[en: | ||
- | To boot the <label mod_name> | + | To boot the To boot the <label mod_name> |
- | The dtb-file and kernel image have to be provided via tftp and the rootfs via nfs.\\ | + | |
+ | == Configuration of U-Boot Environment == | ||
== Configuration of U-Boot Environment == | == Configuration of U-Boot Environment == | ||
- | The bootloader environment needs to be modified to work with your tftp-server and your nfs-server. | + | The bootloader environment needs to be modified to work with your tftp-server and your nfs-server.The bootloader environment needs to be modified to work with your tftp-server and your nfs-server. |
* setenv autoload no | * setenv autoload no | ||
Line 352: | Line 534: | ||
==== TQMa6ULx serial downloader ==== | ==== TQMa6ULx serial downloader ==== | ||
- | <WRAP round important> | + | ==== TQMa6ULx serial downloader ==== |
+ | |||
+ | <WRAP round important> | ||
+ | |||
+ | You have to set the Starterkit to boot-mode " | ||
</ | </ | ||
- | Starting with TQMa6ULx-BSP-REV.0104 we deliver a Linux tool to upload U-Boot into the TQMa6ULx RAM from your development host and start it.\\ | + | Starting with TQMa6ULx-BSP-REV.0104 we deliver a Linux tool to upload U-Boot into the TQMa6ULx RAM from your development host and start it.Starting with TQMa6ULx-BSP-REV.0104 we deliver a Linux tool to upload U-Boot into the TQMa6ULx RAM from your development host and start it.\\ After building the BSP the tool is located in: After building the BSP the tool is located in: \\ **.../ |
- | After building the BSP the tool is located in: \\ | + | |
- | **.../ | + | |
- | You have to apply the following steps before you can start to work with the tool: | + | You have to apply the following steps before you can start to work with the tool:You have to apply the following steps before you can start to work with the tool: |
* Copy the content of folder .../ | * Copy the content of folder .../ | ||
* Copy the content of folder .../ | * Copy the content of folder .../ | ||
- | ==== Usage of serial downloader tool ==== | + | ==== Usage of serial downloader tool ==== |
+ | |||
+ | ==== Usage of serial downloader tool ==== | ||
- Set Starterkit to boot-mode " | - Set Starterkit to boot-mode " | ||
Line 371: | Line 558: | ||
- Power up Starterkit | - Power up Starterkit | ||
- Please check that Linux recognized a new USB device, see output of command **dmesg | grep -i usb**. You should see something like the following : | - Please check that Linux recognized a new USB device, see output of command **dmesg | grep -i usb**. You should see something like the following : | ||
- | < | + | |
+ | < | ||
usb 3-2.1: Product: SE Blank 6UL | usb 3-2.1: Product: SE Blank 6UL | ||
usb 3-2.1: Manufacturer: | usb 3-2.1: Manufacturer: | ||
hid-generic 0003: | hid-generic 0003: | ||
</ | </ | ||
+ | |||
- Open a serial terminal on your host e.g. TeraTerm | - Open a serial terminal on your host e.g. TeraTerm | ||
- Open a Linux terminal and naviagate to folder " | - Open a Linux terminal and naviagate to folder " | ||
- | - Start the serial downloader **imx_usb** as super user with the desired U-Boot as parameter <WRAP round important> | + | - Start the serial downloader **imx_usb** as super user with the desired U-Boot as parameter <WRAP round important> |
+ | Keep in mind to select a U-Boot that is corresponding to your module, please see [[en: | ||
+ | </ | ||
+ | e.g. | ||
+ | < | ||
+ | embedded@ubuntu: | ||
+ | </ | ||
+ | |||
+ | Host console output after starting the serial downloader: | ||
- | Host console output after starting the serial downloader: | + | < |
- | < | + | |
config file </ | config file </ | ||
vid=0x066f pid=0x3780 file_name=mx23_usb_work.conf | vid=0x066f pid=0x3780 file_name=mx23_usb_work.conf | ||
Line 420: | Line 616: | ||
jumping to 0x8fbff400 | jumping to 0x8fbff400 | ||
</ | </ | ||
- | 9. Now you can see the U-Boot messages in the serial terminal programm | ||
- | Next steps are:\\ | + | 9. Now you can see the U-Boot messages in the serial terminal programm9. Now you can see the U-Boot messages in the serial terminal programm |
+ | |||
+ | Next steps are:Next steps are:\\ | ||
* write U-Boot using tftp to eMMC, see [[en: | * write U-Boot using tftp to eMMC, see [[en: | ||
- | * write kernel image using tftp to eMMC, see [[en: | + | * write kernel image using tftp to eMMC, see [[en: |
+ | ===== PTXdist Images ===== | ||
- | ===== Images | + | ===== PTXdist |
- | Finally, you will find the built images in // | + | Finally, you will find the built images in Finally, you will find the built images in // |
- | Complete system image: | + | < |
- | + | <panel title=" | |
- | * **uboot-mba6ulx-hd.img**: | + | |
- | * **uboot-mba6ulx-lga-hd.img**: | + | ** System Image ** |
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ Boot device | ||
+ | ^ SD Card/eMMC | uboot-mba6ulx-hd.img | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | The complete system image is intended for:The complete system | ||
- | The complete system image is intended for: | ||
- | |||
* development system initialisation | * development system initialisation | ||
- | * deployment | + | * deployment |
- | QSPI NOR image without rootfs: | + | **QSPI NOR image without rootfs** |
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ Boot Device | ||
+ | ^ SD Card/ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | **Bootloader binaries**\\ <wrap round important 60%> Not to be confused with the u-boot*.bin images, these are just intermediate images and will not be booted by the i.MX6ULx. </ | ||
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ Boot device | ||
+ | ^ SD Card/eMMC | u-boot-fsl-mba6ulx-mmc.imx | ||
+ | ^ QSPI-NOR | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | **Linux Kernel binary** | ||
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ File ^ Description | ||
+ | | linuximage | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | **Devicetree blobs** | ||
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ File ^ Description | ||
+ | | imx6ul-mba6ulx.dtb | ||
+ | | imx6ul-mba6ulx-otg.dtb | ||
+ | | imx6ul-mba6ulx-lvds.dtb | ||
+ | | imx6ul-mba6ulx-glyn-etm0700g0edh6.dtb | ||
+ | | imx6ul-mba6ulx-dmb-ct44.dtb | ||
+ | | imx6ul-mba6ulx-dmb-ct21.dtb | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | **firmware partition images** | ||
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ File ^ Description | ||
+ | | firmware.img | ||
+ | | firmware.tgz | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | **Rootfs images** | ||
+ | |||
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ File ^ Description | ||
+ | | root.tgz | ||
+ | | root.ext2 | ||
+ | | root.ubi | ||
+ | | root.ubifs | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **Complete system image ** | ||
+ | |||
+ | ^ Boot device | ||
+ | ^ AD Card/ | ||
+ | |||
+ | The complete system image is intended for:The complete system image is intended for: | ||
+ | |||
+ | * development system initialisation | ||
+ | * deployment | ||
+ | |||
+ | **QSPI NOR image without rootfs** | ||
- | * **uboot-mba6ulx-qspi.img**: | ||
* **uboot-mba6ulx-lga-qspi.img**: | * **uboot-mba6ulx-lga-qspi.img**: | ||
- | Bootloader | + | **Bootloader |
- | Not to be confused with the u-boot*.bin images, these are just intermediate images and will not be booted by the i.MX6ULx. | + | |
- | </ | + | |
- | * **u-boot-fsl-mba6ulx-mmc.imx**: | + | < |
- | * **u-boot-fsl-mba6ulx-qspi.imx**: | + | |
- | + | ||
- | * **u-boot-fsl-mba6ulx-lga-mmc.imx**: | + | |
- | * **u-boot-fsl-mba6ulx-lga-qspi.imx**: | + | |
- | Linux images: | + | <col sm=" |
- | * **linuximage**: | + | ^ Boot device |
- | * **imx6ul-mba6ulx.dtb**: | + | ^ SD Card/ |
- | | + | ^ QSPI-NOR |
- | * **imx6ul-mba6ulx-lvds.dtb**: device tree blob for TQMa6ULx | + | |
- | | + | |
- | * **imx6ul-mba6ulx-dmb-ct44.dtb**: device tree blob for TQMa6ULx on MBa6ULx parallel display interface activated with display timing for DMB display 800x480 | + | |
- | * **imx6ul-mba6ulx-dmb-ct21.dtb**: | + | |
+ | </ | ||
- | * **imx6ul-mba6ulx-lga.dtb**: | + | </ |
- | * **imx6ul-mba6ulx-lga-otg.dtb**: | + | |
- | * **imx6ul-mba6ulx-lga-lvds.dtb**: | + | |
- | * **imx6ul-mba6ulx-lga-glyn-etm0700g0edh6.dtb**: | + | |
- | * **imx6ul-mba6ulx-lga-dmb-ct44.dtb**: | + | |
- | * **imx6ul-mba6ulx-lga-dmb-ct21.dtb**: | + | |
- | + | ||
- | firmware partition images: | + | |
- | | + | **Linux Kernel binary** |
- | * **firmware.tgz**: | + | |
+ | < | ||
+ | <col sm=" | ||
+ | ^ File ^ Description | ||
+ | | linuximage | ||
- | Rootfs images: | + | </ |
- | * **root.tgz**: | + | </ |
- | * **root.ext2**: | + | |
- | * **root.ubi**: | + | |
- | * **root.ubifs**: | + | |
+ | **Devicetree blobs** | ||
+ | < | ||
- | ===== Downloads ===== | + | <col sm=" |
- | <WRAP round download> | + | ^ File ^ Description |
- | ==== TQ Board Support Packages ==== | + | | imx6ul-mba6ulx-lga.dtb |
- | The Board Support Packages | + | | imx6ul-mba6ulx-lga-otg.dtb |
+ | | imx6ul-mba6ulx-lga-lvds.dtb | ||
+ | | imx6ul-mba6ulx-lga-glyn-etm0700g0edh6.dtb | ||
+ | | imx6ul-mba6ulx-lga-dmb-ct44.dtb | ||
+ | | imx6ul-mba6ulx-lga-dmb-ct21.dtb | ||
- | [[https:// | + | </col> |
- | [size=70%]MD5SUM: | + | |
- | [[https:// | + | </grid> |
- | [size=70%]MD5SUM: | + | |
- | [[https:// | + | **firmware partition images** |
- | [size=70%]MD5SUM: | + | |
- | [[https:// | + | < |
- | </WRAP> | + | <col sm=" |
+ | ^ File ^ Description | ||
+ | | firmware.img | ||
+ | | firmware.tgz | ||
- | <WRAP round download> | + | </col> |
- | ==== Build System | + | </grid> |
- | PTXdist version XXXX.YY.0 is required to compile an OSELAS Toolchain XXXX.YY.Z.\\ | + | **Rootfs images** |
- | The version of PTXdist and toolchain required to build a given BSP revision is shown in the [[version-matrix|version matrix]]. | + | |
+ | < | ||
+ | |||
+ | <col sm=" | ||
+ | |||
+ | ^ File ^ Description | ||
+ | | root.tgz | ||
+ | | root.ext2 | ||
+ | | root.ubi | ||
+ | | root.ubifs | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== PTXdist Downloads ===== | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | The Board Support Packages (BSPs) usually provide source code as well as precompiled images for one or more platforms.The Board Support Packages (BSPs) usually provide source code as well as precompiled images for one or more platforms.\\ | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | PTXdist version XXXX.YY.0 is required to compile an OSELAS Toolchain XXXX.YY.Z.PTXdist version XXXX.YY.0 is required to compile an OSELAS Toolchain XXXX.YY.Z.\\ | ||
---- | ---- | ||
+ | |||
[[http:// | [[http:// | ||
Line 528: | Line 869: | ||
[[http:// | [[http:// | ||
- | [[http:// | + | [[http:// |
- | [[http:// | + | [[http:// |
- | [[http:// | + | [[http:// |
- | </WRAP> | + | [[http:// |
+ | </ | ||
- | <WRAP round download> | + | <panel type=" |
- | ==== Documentation | + | |
- | [[http:// | + | [[http:// |
- | [[http:// | + | [[http:// |
- | </ | + | |
- | ===== How-To PTXdist ===== | + | |
- | ==== Copy Firmware from SD card to eMMC using U-Boot on TQMa6UL ==== | + | |
- | The size of eMMC/SD image exceeds TQMa6ULx RAM size so it is not possible to copy the image into the RAM.\\ | + | </panel> |
- | Nevertheless copying is possible by splitting Rootfs into several parts during the process. | + | |
+ | ===== PTXdist How-To ===== | ||
- | | + | ==== Copy Firmware from SD card to eMMC using U-Boot on TQMa6UL ==== |
+ | |||
+ | The size of eMMC/SD image exceeds TQMa6ULx RAM size so it is not possible to copy the image into the RAM.\\ | ||
+ | |||
+ | | ||
* Interrupt the boot process to get to the U-Boot prompt | * Interrupt the boot process to get to the U-Boot prompt | ||
- | * The U-Boot environment has to be expanded to copy the content from the SD Card to the eMMC therefore create the following u-boot env variables has to be created. | + | * The U-Boot environment has to be expanded to copy the content from the SD Card to the eMMC therefore create the following u-boot env variables has to be created. |
+ | * Create U-boot env variable **install_firmware** | ||
- | * Create U-boot env variable **install_firmware** | + | < |
- | < | + | |
setenv | setenv | ||
</ | </ | ||
- | | + | |
- | < | + | |
+ | |||
+ | < | ||
setenv root_loop ' | setenv root_loop ' | ||
</ | </ | ||
+ | |||
* create rootblks16 and set a value | * create rootblks16 and set a value | ||
- | < | + | |
+ | < | ||
setenv rootblks16 0x80000 | setenv rootblks16 0x80000 | ||
</ | </ | ||
+ | |||
* save changes | * save changes | ||
- | < | + | |
+ | < | ||
saveenv | saveenv | ||
</ | </ | ||
+ | |||
* Use the new commands to copy the SD-Card image to eMMC | * Use the new commands to copy the SD-Card image to eMMC | ||
- | < | + | |
+ | < | ||
run install_firmware | run install_firmware | ||
</ | </ | ||
Line 580: | Line 930: | ||
==== Load / Change / Save the Device Tree under U-Boot ==== | ==== Load / Change / Save the Device Tree under U-Boot ==== | ||
- | \\ | + | |
- | Devicetree can be edit with the **fdt** commands under U-Boot. | + | \\ Devicetree can be edit with the **fdt** commands under U-Boot. |
< | < | ||
+ | |||
<col sm=" | <col sm=" | ||
+ | |||
<callout type=" | <callout type=" | ||
- | For testing purpose only. For bigger changes, please compile the Devicetree.\\ | ||
- | Therefore you can have a look at the following [[intern: | ||
- | < | ||
- | <col sm=" | ||
- | <callout type=" | ||
- | Tested with **TQMa6ULx BSP Rev.0100** | ||
- | </ | ||
- | |||
+ | For testing purpose only. For bigger changes, please compile the Devicetree.For testing purpose only. For bigger changes, please compile the Devicetree.\\ | ||
+ | | ||
+ | </ | ||
+ | | ||
+ | </ | ||
+ | | ||
+ | </ | ||
+ | | ||
+ | </ | ||
1) At first the fdt file has to be loaded from the current boot medium (mmc) into RAM. | 1) At first the fdt file has to be loaded from the current boot medium (mmc) into RAM. | ||
- | < | ||
- | 2) Next step is to set the predefined U-Boot environment variable fdt_addr through the **fdt addr** command. | + | < |
- | < | + | => run loadfdt |
+ | </ | ||
- | 3) Afterwards the size of the fdt has to be increased (to the next 4K divider) in order to have some space for modifications. This is simply done by entering: | + | 2) Next step is to set the predefined U-Boot environment variable fdt_addr through the **fdt addr** command. |
- | < | + | |
+ | <code -> | ||
+ | => fdt addr $fdt_addr | ||
+ | </ | ||
+ | |||
+ | 3) Afterwards the size of the fdt has to be increased (to the next 4K divider) in order to have some space for modifications. This is simply done by entering: | ||
+ | |||
+ | < | ||
+ | => fdt resize | ||
+ | </ | ||
4) List device in the tree you want to change to have a look at the default settings. | 4) List device in the tree you want to change to have a look at the default settings. | ||
+ | |||
++++Example| | ++++Example| | ||
- | < | + | |
+ | < | ||
=> fdt list /gpio_keys | => fdt list /gpio_keys | ||
gpio_keys { | gpio_keys { | ||
Line 652: | Line 1017: | ||
}; | }; | ||
</ | </ | ||
+ | |||
++++ | ++++ | ||
5) To modify a value of a propertie use the **fdt set** command. | 5) To modify a value of a propertie use the **fdt set** command. | ||
- | < | + | |
+ | < | ||
+ | => fdt set < | ||
+ | </ | ||
++++Example| | ++++Example| | ||
- | < | + | |
+ | < | ||
+ | => fdt set / | ||
+ | </ | ||
++++ | ++++ | ||
6) // | 6) // | ||
- | < | + | < |
+ | => fatwrite mmc $mmcdev: | ||
+ | </ | ||
<wrap tip>You can find out < | <wrap tip>You can find out < | ||
Otherwise you can boot your module with the changed Devicetree right after the modification. | Otherwise you can boot your module with the changed Devicetree right after the modification. | ||
+ | |||
---- | ---- | ||
+ | |||
\\ | \\ | ||
+ | |||
===== Known Issues PTXdist ===== | ===== Known Issues PTXdist ===== | ||
- | ==== TQMa6ULx BSP Rev.0104 ===== | ||
- | ^ Affects | + | ==== TQMa6ULx |
- | ^ Issue | When CSI is configured in Linux devicetree and the CSI is bound by the Linux driver, the system does not boot properly | | + | |
- | ^ Effect | + | |
- | ^ Solution / Workaround | + | |
+ | ^ Affects | ||
+ | ^ Issue | When CSI is configured in Linux devicetree and the CSI is bound by the Linux driver, the system does not boot properly | | ||
+ | ^ Effect | ||
+ | ^ Solution / Workaround | ||
===== Yocto ===== | ===== Yocto ===== | ||
- | ==== DevHost ==== | + | |
- | ==== Build BSP ==== | + | ===== Yocto BSP Version Matrix ===== |
- | ==== Adapt BSP ==== | + | <panel type=" |
- | ==== Deployment ==== | + | |
- | ==== Known Issues Yocto ==== | + | ^ TQMa6ULx/ |
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | |||
+ | \\ | ||
+ | </ | ||
+ | < | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | ^ BSP Revision | ||
+ | i.e. value for [[https:// | ||
+ | )) ^ U-Boot | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | | [[https:// | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== Yocto Changelog ===== | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | < | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **BSP** | ||
+ | |||
+ | * Update to Yocto Kirkstone | ||
+ | * | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **BSP** | ||
+ | |||
+ | * Add machine configs with 512 MB RAM | ||
+ | * Add missing information in documentation | ||
+ | * Add bbappend for mesa to support TQMa6U[L]x[L] with mainline kernel | ||
+ | * Support different list of device tree files, depending on the virtual/ | ||
+ | * Add firmware ath10k as MACHINE_EXTRA_RRECOMEND | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | * linux 5.15 support based on linux-stable 5.15.y | ||
+ | * merge all mainline stable fixes up to v5.15.27 (CVE-2022-0847 "Dirty Pipe Vulnerability" | ||
+ | * linux-tq-5.4 is deprecated for all TQMa6UL[L]x modules (LGA variants as well) | ||
+ | * Fixed: | ||
+ | * GPIO wakeup | ||
+ | * Audio configuration on TQMa6UL[L]x | ||
+ | * QSPI driver bug causing frequent corruptions of filesystems on SPI-NOR flash | ||
+ | * USB support with parallel LCD device tree on MBa6ULxL | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **BSP** | ||
+ | |||
+ | * Update to Linux Kernel 5.4 | ||
+ | * Added kernel linux-tq 5.4 | ||
+ | * Added kernel linux-rt-tq 5.4 | ||
+ | * Added kernel linux-imx-tq 5.4 | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | * Changed kernel configuration to use the better supported mainline graphics stack | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **U-Boot** | ||
+ | |||
+ | * Added support for 512MB RAM variants of TQMa6UL\[L\]x REV.030x | ||
+ | * Typo fixes in output / banner / warnings | ||
+ | * Add warning for CPU / config mismatch | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **BSP** | ||
+ | |||
+ | * Added platform MBa6ULxL | ||
+ | |||
+ | **U-Boot** | ||
+ | |||
+ | * added several bugfixes | ||
+ | * fixed fdt_file environment variable definition | ||
+ | * set default i2c dev to 3 (MBa6ulxl) | ||
+ | * fixed typo in header include guard | ||
+ | * fix build without CONFIG_DM_SPI_FLASH and CONFIG_SPI_FLASH | ||
+ | * Added platform MBa6ULxL | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | * Update kernel version to NXP 4.14.78 | ||
+ | * Set USB1 OTG dr_mode to otg | ||
+ | * QSPI NOR flash uses 4byte opcodes | ||
+ | * Changed default LVDS display to Tianma TM070JVHG33 | ||
+ | * add cpu cooling levels | ||
+ | * fixed RS485 support | ||
+ | * Added platform MBa6ULxL | ||
+ | * display: use 24 LCD data pins | ||
+ | * set USB1 OTG dr_mode to otg | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **BSP** | ||
+ | |||
+ | * Support / fixes for TQMa6ULx with automotive grade CPU | ||
+ | * e-MMC Timing fix for TQMa6ULx / TQMa6ULxL (low temperature improvement / limit clock speed) | ||
+ | * Update DRAM calibration values for TQMa6ULL | ||
+ | * update patches for TQMa6UL / TQMa6LL e-MMC clocking fix | ||
+ | * update u-boot-imx for TQMa6ULL and TQMa6UL automotive support | ||
+ | |||
+ | **U-Boot** | ||
+ | |||
+ | * fix output of i.MX6UL(L) speed grade with 696 MHz | ||
+ | * added TQMa6ULL1 support | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | * rewrite e-MMC clocking and tuning | ||
+ | * apply e-MMC clocking changes also for LGA module | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel title=" | ||
+ | |||
+ | **BSP** | ||
+ | |||
+ | * Change image names (mba6ul -> mba6ulx, tqma6ul -> tqma6ulx) | ||
+ | |||
+ | **U-Boot** | ||
+ | |||
+ | * Support TQMa6ULx 030x / TQMa6ULxL 020x on MBa6ULx 020x | ||
+ | * Dynamic default if no devicetree set | ||
+ | * Optimize defconfigs | ||
+ | * UBI boot support | ||
+ | * Simplify env scripts | ||
+ | * Optimize qspi clock | ||
+ | * Optimize RAM timing | ||
+ | * Update base version from NXP | ||
+ | |||
+ | **Linux** | ||
+ | |||
+ | * Backport mmc sysfs fixes for OCR / DSR | ||
+ | * Optimize / cleanup e-MMC / SD config | ||
+ | * Improve QSPI support / Backport jedec detect for QSPI | ||
+ | * Allow 4-Byte address command set for QSPI | ||
+ | * MTD Partitions for MBa6UL | ||
+ | * Backport fixes for EDT Touch | ||
+ | * Rewrite devicetree to reuse fragments for display / TQMa6ULxL etc. | ||
+ | * Support more display variants | ||
+ | * Update base version from NXP | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== Yocto Partitions ===== | ||
+ | |||
+ | ===== Yocto Images ===== | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | < | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ulx-mba6ulx.rootfs.wic | tq-image-weston-tqma6ulx-mba6ulx-< | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-mba6ulx.imx-sd | u-boot-sd-2016.03-r0.imx | | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-mba6ulx.imx-qspi | u-boot-qspi-2016.03-r0.imx | | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | ^ Symlink | ||
+ | | zImage\\ zImage-tqma6ulx-mba6ulx.bin | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | ^ Symlink | ||
+ | | imx6ul-mba6ulx.dtb\\ | ||
+ | | imx6ul-mba6ulx-lvds.dtb\\ | ||
+ | | imx6ul-mba6ulx-dmb-ct21.dtb\\ | ||
+ | | imx6ul-mba6ulx-dmb-ct44.dtb\\ | ||
+ | | imx6ul-mba6ulx-glyn-etm0700g0edh6.dt\\ imx6ul-mba6ulx-glyn-etm0700g0edh6-tqma6ulx-mba6ulx.dtb | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-mba6ulx.ext4 | ||
+ | | tq-image-weston-tqma6ullx-mba6ulx.tar.gz | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ulx-512mb-mba6ulx.rootfs.wic | tq-image-weston-tqma6ulx-512mb-mba6ulx-< | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-512mb-mba6ulx.imx-sd | u-boot-sd-2016.03-r0.imx | | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-512mb-mba6ulx.imx-qspi | u-boot-qspi-2016.03-r0.imx | | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | ^ Symlink | ||
+ | | zImage\\ zImage-tqma6ulx-512mb-mba6ulx.bin | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | ^ Symlink | ||
+ | | imx6ul-mba6ulx.dtb\\ | ||
+ | | imx6ul-mba6ulx-lvds.dtb\\ | ||
+ | | imx6ul-mba6ulx-dmb-ct21.dtb\\ | ||
+ | | imx6ul-mba6ulx-dmb-ct44.dtb\\ | ||
+ | | imx6ul-mba6ulx-glyn-etm0700g0edh6.dt\\ imx6ul-mba6ulx-glyn-etm0700g0edh6-tqma6ulx-mba6ulx.dtb | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ulx-512mb-mba6ulx.ext4 | ||
+ | | tq-image-weston-tqma6ulx-512mb-mba6ulx.tar.gz | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ulx-lga-mba6ulx.rootfs.wic | tq-image-weston-tqma6ulx-lga-mba6ulx-< | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-lga-mba6ulx.imx-sd | u-boot-sd-2016.03-r0.imx | | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-lga-mba6ulx.imx-qspi | u-boot-qspi-2016.03-r0.imx | | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | ^ Symlink | ||
+ | | zImage\\ zImage-tqma6ulx-lga-mba6ulx.bin | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | ^ Symlink | ||
+ | | imx6ul-lga-mba6ulx.dtb\\ | ||
+ | | imx6ul-lga-mba6ulx-lvds.dtb\\ | ||
+ | | imx6ul-lga-mba6ulx-dmb-ct21.dtb\\ | ||
+ | | imx6ul-lga-mba6ulx-dmb-ct44.dtb\\ | ||
+ | | imx6ul-lga-mba6ulx-glyn-etm0700g0edh6.dt\\ imx6ul-lga-mba6ulx-glyn-etm0700g0edh6-tqma6ulx-lga-mba6ulx.dtb | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ulx-lga-mba6ulx.ext4 | ||
+ | | tq-image-weston-tqma6ulx-lga-mba6ulx.tar.gz | tq-image-weston-tqma6ulx-lga-mba6ulx-< | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-mba6ulx.rootfs.wic | tq-image-weston-tqma6ullx-mba6ulx-< | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ullx-mba6ulx.imx-sd | u-boot-sd-2016.03-r0.imx | | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ullx-mba6ulx.imx-qspi | u-boot-qspi-2016.03-r0.imx | | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | ^ Symlink | ||
+ | | zImage\\ zImage-tqma6ullx-mba6ulx.bin | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | ^ Symlink | ||
+ | | imx6ull-mba6ulx.dtb\\ | ||
+ | | imx6ull-mba6ulx-lvds.dtb\\ | ||
+ | | imx6ull-mba6ulx-dmb-ct21.dtb\\ | ||
+ | | imx6ull-mba6ulx-dmb-ct44.dtb\\ | ||
+ | | imx6ull-mba6ulx-glyn-etm0700g0edh6.dt\\ imx6ull-mba6ulx-glyn-etm0700g0edh6-tqma6ulx-mba6ulx.dtb | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-mba6ulx.ext4 | ||
+ | | tq-image-weston-tqma6ullx-mba6ulx.tar.gz | tq-image-weston-tqma6ullx-mba6ulx-< | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-512mb-mba6ulx.rootfs.wic | tq-image-weston-tqma6ullx-512mb-mba6ulx-< | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ullx-512mb-mba6ulx.imx-sd | u-boot-sd-2016.03-r0.imx | | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ullx-512mb-mba6ulx.imx-qspi | u-boot-qspi-2016.03-r0.imx | | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | ^ Symlink | ||
+ | | zImage\\ zImage-tqma6ullx-512mb-mba6ulx.bin | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | ^ Symlink | ||
+ | | imx6ull-mba6ulx.dtb\\ | ||
+ | | imx6ull-mba6ulx-lvds.dtb\\ | ||
+ | | imx6ull-mba6ulx-dmb-ct21.dtb\\ | ||
+ | | imx6ull-mba6ulx-dmb-ct44.dtb\\ | ||
+ | | imx6ull-mba6ulx-glyn-etm0700g0edh6.dt\\ imx6ull-mba6ulx-glyn-etm0700g0edh6-tqma6ullx-mba6ulx.dtb | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-512mb-mba6ulx.ext4 | ||
+ | | tq-image-weston-tqma6ullx-512mb-mba6ulx.tar.gz | tq-image-weston-tqma6ullx-512mb-mba6ulx-< | ||
+ | |||
+ | </ | ||
+ | |||
+ | <panel type=" | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | === System Image === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-lga-mba6ulx.rootfs.wic | tq-image-weston-tqma6ullx-lga-mba6ulx-< | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | === Bootloader Binary === | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | == SD Card/eMMC == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-lga-mba6ullx.imx-sd | u-boot-sd-2016.03-r0.imx | | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | == QSPI == | ||
+ | |||
+ | ^ Symlink | ||
+ | | u-boot-tqma6ulx-lga-mba6ullx.imx-qspi | u-boot-qspi-2016.03-r0.imx | | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | === Linux Kernel Binary === | ||
+ | |||
+ | ^ Symlink | ||
+ | | zImage\\ zImage-tqma6ullx-lga-mba6ulx.bin | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | === Devicetree Binarys === | ||
+ | |||
+ | ^ Symlink | ||
+ | | imx6ull-lga-mba6ulx.dtb\\ | ||
+ | | imx6ull-lga-mba6ulx-lvds.dtb\\ | ||
+ | | imx6ull-lga-mba6ulx-dmb-ct21.dtb\\ | ||
+ | | imx6ull-lga-mba6ulx-dmb-ct44.dtb\\ | ||
+ | | imx6ull-lga-mba6ulx-glyn-etm0700g0edh6.dt\\ imx6ull-lga-mba6ulx-glyn-etm0700g0edh6-tqma6ullx-lga-mba6ulx.dtb | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | === RootFS Images === | ||
+ | |||
+ | ^ Symlink | ||
+ | | tq-image-weston-tqma6ullx-lga-mba6ulx.ext4 | ||
+ | | tq-image-weston-tqma6ullx-lga-mba6ulx.tar.gz | tq-image-weston-tqma6ullx-lga-mba6ulx-< | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ===== DevHost ===== | ||
+ | |||
+ | ===== Build BSP ===== | ||
+ | |||
+ | ===== Adapt BSP ===== | ||
+ | |||
+ | ===== Deployment | ||
+ | |||
+ | ===== Known Issues Yocto ===== | ||
{{section> | {{section> | ||
+ | |||
===== (Deployment) ===== | ===== (Deployment) ===== | ||
+ | |||
+ | ===== Yocto Deployment ===== | ||
+ | |||
+ | ==== Device assignment ==== | ||
+ | |||
+ | < | ||
+ | |||
+ | <col md=" | ||
+ | |||
+ | <callout type=" | ||
+ | |||
+ | mmcdev 0 = eMMC mmcdev 0 = eMMC \\ mmcdev 1 = SD Cardmmcdev 1 = SD Card </ | ||
+ | 1. Run the following commands in the Uboot shell to create update script: | ||
+ | |||
+ | <code -> | ||
+ | |||
+ | setenv root_loop ' | ||
+ | </ | ||
+ | |||
+ | <code -> | ||
+ | |||
+ | setenv | ||
+ | </ | ||
+ | |||
+ | 2. Create | ||
+ | |||
+ | <callout type=" | ||
+ | |||
+ | To calculate the value of To calculate the value of **rootblks16** devide the size of the image in byte by 512 and convert the result into a hex value. devide the size of the image in byte by 512 and convert the result into a hex value.\\ | ||
+ | 323323** * **10241024** * **1024 = 3386900481024 = 338690048 \\ 338690048338690048** / **512 = 661504512 = 661504 \\ 661504= A1800661504= A1800< | ||
+ | </ | ||
+ | |||
+ | <code -> | ||
+ | setenv rootblks16 0xA1800 | ||
+ | </ | ||
+ | |||
+ | ==== uboot command to start netboot ==== | ||
+ | |||
+ | <code -> | ||
+ | => run netboot | ||
+ | </ | ||
+ | |||
====== QNX BSP ====== | ====== QNX BSP ====== | ||
+ | |||
===== U-Boot ===== | ===== U-Boot ===== | ||
+ | |||
===== Bootloader ===== | ===== Bootloader ===== | ||
+ | |||
==== Supported features ==== | ==== Supported features ==== | ||
- | |||
- | |||
\\ | \\ | ||
- | ==== Supported boot devices ==== | ||
+ | ==== Supported boot devices ==== | ||
===== Operating System ===== | ===== Operating System ===== | ||
Line 701: | Line 1677: | ||
===== Kernel ===== | ===== Kernel ===== | ||
+ | |||
===== FAQ ===== | ===== FAQ ===== | ||
+ | |||
===== Deployment ===== | ===== Deployment ===== | ||
+ | |||
====== VxWorks BSP ====== | ====== VxWorks BSP ====== | ||
+ | |||
===== U-Boot ===== | ===== U-Boot ===== | ||
+ | |||
===== Kernel ===== | ===== Kernel ===== | ||
+ | |||
===== FAQ ===== | ===== FAQ ===== | ||
+ | |||
===== Deployment ===== | ===== Deployment ===== | ||
+ | ~~NOCACHE~~ | ||