~~NOCACHE~~
====== Entry Page ======
===== Product URL list =====
[[https://www.tq-group.com/en/products/tq-embedded/arm-architecture/tqma8mx/|TQ product page TQMa8Mx]]\\
===== Board Support Packages =====
* [[en:arm:tqma8mx:linux:yocto:overview| Yocto Linux BSP Documentation]]
* [[en:arm:tqma8mx:linux:android:overview| Android BSP Documentation]]
===== Third-Party Add-Ons =====
* [[:en:third-party:ittia:db-sql|ITTIA DB SQL]]
* [[:en:third-party:systemcorp:iec61850|SystemCORP IEC 61850]]
* [[:en:third-party:netmodule:iec62439|NetModule IEC 62439]]
===== Starterkit =====
* [[en:arm:tqma8mx:mba8mx:dip_switches| MBa8Mx DIP switch settings]]
====== Hardware ======
===== Debug Connection =====
The TQMa8Mx debug UART is connected via a Silicon Labs USB-to-Serial converter to X16 (micro-USB) on the MBa8Mx. A micro-USB/USB-A cable is part of the STKa8Mx accessory set. Depending on the host operating system, a driver may need to be installed.
===== Onboard I2C devices =====
^ I2C bus ^ TQMa8Mx ^^^^^^
^ I2C1 | 0x08\\ PMIC | 0x1B\\ Tempsensor | 0x33\\ EEPROM SW Protect | 0x53\\ EEPROM | 0x57\\ EEPROM | 0x51\\ RTC ||||
^ I2C bus ^ MBa8Mx ^^^^^^
^ I2C1 | 0x11\\ System controller | 0x23\\ Portexpander | 0x24\\ Portexpander | 0x25\\ Portexpander |
^ I2C2 | 0x18\\ Audio Codec | 0x37\\ EEPROM SW Protect | 0x44\\ USB Hub | 0x57\\ EEPROM | 0x68\\ PCIe Clock generator | 0x1F\\ Tempsensor |
^ I2C3 | 0x2D\\ LVDS Bridge | 0x2C\\ eDP Bridge | also available at\\ Mini PCIe (X28), Mikro Bus (X20 / X21), PCIe (X36), MIPI-CSI (31) |||||
====== Linux BSP ======
===== U-Boot =====
^ Feature ^^^^ TQMa8.BSP Revisions ^ Remarks ^
^ TQ Product ^ Chip ^ Interface ^ Function ^ 0081 - 0091 ^ ::: ^
| TQMa8Mx | i.MX8M | Cortex M4 | | ✔ |
| TQMa8Mx | i.MX8M | ENET0 | GbE | ✔ |
| TQMa8Mx | i.MX8M | HDMI TX | HDMI | ✔ | Fixed Resolution |
| TQMa8Mx | i.MX8M | I²C1 | Bus Access | ✔ | |
| TQMa8Mx | i.MX8M | I²C2 | Bus Access | ✔ | |
| TQMa8Mx | i.MX8M | I²C3 | Bus Access | ✔ | |
| TQMa8Mx | i.MX8M | LPUART3 | Debug Console | ✔ | default console |
| TQMa8Mx | i.MX8M | uSDHC | eMMC / SD-Card | ✔ | SD card / eMMC |
| TQMa8Mx | i.MX8M | Fuse | | ✔ |
| TQMa8Mx | i.MX8M | USB | USB Host | ✔ | (2.0 and 3.0)
| TQMa8Mx | i.MX8M | USB DRD | USB Host | ✔ | Host only |
| TQMa8Mx | i.MX8M | GPIO | GPIO | ✔ |
| TQMa8Mx | i.MX8M | QSPI | QSPI NOR | ✔ |
^ Feature ^^^^ BSP Revision ^^^^^^^^^^^^^^^^^ Remarks ^
^ TQ Product ^ Chip ^ Interface ^ Function ^ 0001 ^ 0003 ^ 0004 ^ 0007 ^ 0008 ^ 0010 ^ 0012 ^ 0013 ^ 0014 ^ 0015 ^ 0017 ^ 0018 ^ 0030 ^ 0053 ^ 0054 ^ 0056 ^ 0080 ^ ::: ^
| TQMa8Mx | i.MX8M | Cortex M4 | | | | | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ |
| TQMa8Mx | i.MX8M | ENET0 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| TQMa8Mx | i.MX8M | HDMI TX | HDMI | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Fixed Resolution |
| TQMa8Mx | i.MX8M | I²C1 | Bus Access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
| TQMa8Mx | i.MX8M | I²C2 | Bus Access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
| TQMa8Mx | i.MX8M | I²C3 | Bus Access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
| TQMa8Mx | i.MX8M | LPUART3 | Debug Console | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | default console |
| TQMa8Mx | i.MX8M | uSDHC | eMMC / SD-Card | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | SD card / eMMC |
| TQMa8Mx | i.MX8M | Fuse | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
| TQMa8Mx | i.MX8M | USB | USB Host | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | (2.0 and 3.0)
| TQMa8Mx | i.MX8M | USB DRD | USB Host | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Host only |
| TQMa8Mx | i.MX8M | GPIO | GPIO | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| TQMa8Mx | i.MX8M | QSPI | QSPI NOR | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ Boot device ^ supported ^
| eMMC | ✔ |
| SD Card | ✔ |
===== Operating System =====
^ Feature ^^^^ TQMa8.BSP Revisions ^ Remarks ^
^ TQ Product ^ Chip ^ Interface ^ Function ^ 0081 - 0091 ^ :::^
^ TQMa8Mx | i.MX8M | CSI | Camera Sensor Interface | ✔ | Tested with Vision Components Camera Modules:\\ * imx327\\ * ov9281 |
^ ::: | i.MX8M | DSI | Display Serial Interface | ✔ | Tianma TM070JVHG33 |
^ ::: | i.MX8M | ENET0 | RGMII | ✔ |
^ ::: | i.MX8M | ECSPI1 | spidev | ✔ |
^ ::: | i.MX8M | ECSPI2 | spidev | ✔ |
^ ::: | i.MX8M | GPIO | GPIO | ✔ |
^ ::: | i.MX8M | HDMI TX | HDMI | ✔ | HDMI audio working with BSP Rev. ≥ 0013 |
^ ::: | i.MX8M | I²C1 | Bus access | ✔ | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]] |
^ ::: | i.MX8M | I²C2 | Bus access | ✔ | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]] |
^ ::: | i.MX8M | I²C3 | Bus access | ✔ | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]] |
^ ::: | i.MX8M | LPUART3 | Debug Console | ✔ | Console UART changed from UART1 to UART3 on MBa8Mx ≥ Rev.2xx |
^ ::: | i.MX8M | USB3 | TUSB8041I\\ (USB Hub) | ✔ |
^ ::: | i.MX8M | USB DRD | Host | ✔ |
^ ::: | ::: | ::: | OTG | ✔ |
^ ::: | i.MX8M | uSDHC | eMMC / SD | ✔ |
^ ::: | i.MX8M | PCIe | PCI Express™ | ✔ | PCIe only
tested with Gen 1 |
^ ::: | i.MX8M | ::: | Mini PCIe | ✔ |
^ ::: | i.MX8M | PWM4 | Buzzer | ✔ |
^ ::: | i.MX8M | QSPI | Bus access / \\ Memory access | ✔ | QSPI limited to SDR (driver / chip compatibility) |
^ ::: | i.MX8M | SAI3 | TLV320AIC3204 | ✔ |
^ MBa8Mx | TLV320AIC3204 | Audio Codec | Line Out | ✔ |
^ MBa8Mx | TLV320AIC3204 | Audio Codec | Line In | ✔ |
^ ::: | SN65DSI84 | DSI to LVDS Bridge | LVDS | ✔ | Only on MBa8Mx Rev.02xx |
^ ::: | PCA9555BS | GPIO Port Expander | GPIO | ✔ |
^ ::: | TUSB8041I | USB1 (USB 3.0) | Host 1 | ✔ |
^ ::: | TUSB8041I | USB2 (USB 3.0) | Host 2 | ✔ |
^ ::: | TUSB8041I | USB3 (USB 2.0) | Host 3 | ✔ |
^ ::: | TUSB8041I | USB4 (USB 2.0) | Host 4 | ✔ |
^ Feature ^^^^ BSP Revision ^^^^^^^^^^^^^^^^^ Remarks ^
^ TQ Product ^ Chip ^ Interface ^ Function ^ 0001 ^ 0003 ^ 0004 ^ 0007 ^ 0008 ^ 0010 ^ 0012 ^ 0013 ^ 0014 ^ 0015 ^ 0017 ^ 0018 ^ 0030 ^ 0053 ^ 0054 ^ 0056 ^ 0080 ^ :::^
^ TQMa8Mx | i.MX8M | CSI | Camera Sensor Interface | | | | | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | Tested with Vision Components Camera Modules:\\ * imx327\\ * ov9281 |
^ ::: | i.MX8M | DSI | Display Serial Interface | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Tianma TM070JVHG33 |
^ ::: | i.MX8M | ENET0 | RGMII | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | ECSPI1 | spidev | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | ECSPI2 | spidev | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | GPIO | GPIO | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | HDMI TX | HDMI | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | HDMI audio working with BSP Rev. ≥ 0013 |
^ ::: | i.MX8M | I²C1 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]] |
^ ::: | i.MX8M | I²C2 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]] |
^ ::: | i.MX8M | I²C3 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]] |
^ ::: | i.MX8M | LPUART3 | Debug Console | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Console UART changed from UART1 to UART3 on MBa8Mx ≥ Rev.2xx |
^ ::: | i.MX8M | USB3 | TUSB8041I\\ (USB Hub) | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | USB DRD | Host | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | ::: | ::: | OTG | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | uSDHC | eMMC / SD | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | PCIe | PCI Express™ | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | PCIe only
tested with Gen 1 |
^ ::: | i.MX8M | ::: | Mini PCIe | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | PWM4 | Buzzer | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | i.MX8M | QSPI | Bus access / \\ Memory access | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | QSPI limited to SDR (driver / chip compatibility) |
^ ::: | i.MX8M | SAI3 | TLV320AIC3204 | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ MBa8Mx | TLV320AIC3204 | Audio Codec | Line Out | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ MBa8Mx | TLV320AIC3204 | Audio Codec | Line In | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | SN65DSI84 | DSI to LVDS Bridge | LVDS | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Only on MBa8Mx Rev.02xx |
^ ::: | PCA9555BS | GPIO Port Expander | GPIO | | | | | | | | | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | TUSB8041I | USB1 (USB 3.0) | Host 1 | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | TUSB8041I | USB2 (USB 3.0) | Host 2 | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | TUSB8041I | USB3 (USB 2.0) | Host 3 | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
^ ::: | TUSB8041I | USB4 (USB 2.0) | Host 4 | | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
===== Yocto BSP Version Matrix - Old Revisions =====
Please note that BSP Revisions ≥ 0015 require TQMa8Mx Rev.02xx and MBa8Mx Rev.02xx.\\
TQMa8Mx Rev.01xx and MBa8Mx Rev.01xx are only supported in BSP Revisions ≤ 0014.
^ BSP Revision ^ ++meta-tq release|\\ [[https://github.com/tq-systems/meta-tq]]++ ^ Yocto Project / Poky Release ^ Target machine((i.e. value for [[https://www.yoctoproject.org/docs/2.4.4/ref-manual/ref-manual.html#var-MACHINE|MACHINE]] variable)) ^ U-Boot ^ Linux Kernel ^
^ [[https://github.com/tq-systems/ci-meta-tq/releases/tag/hardknott.TQMa8Mx.BSP.SW.0080|0080]] | [[https://github.com/tq-systems/ci-meta-tq/tree/hardknott|hardknott]] | 3.3.3 - Hardknott | ++tqma8mx-1gb-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gb-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mx-4gb-mba8mx | TQMa8Mx with 4GB RAM ++ | [[https://github.com/tq-systems/u-boot-tqmaxx/releases/tag/hardknott.TQMa8Mx.BSP.SW.0080|v2020.04_imx_5.4.47_2.2.0]] | [[https://github.com/tq-systems/linux-tqmaxx/releases/tag/hardknott.TQMa8Mx.BSP.SW.0080|fslc-5.10-2.1.x-imx]] |
^ [[https://github.com/tq-systems/ci-meta-tq/releases/tag/zeus.TQMa8Mx.BSP.SW.0054|0054]] | [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]] | 3.0.3 - Zeus | ++tqma8mx-1gb-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gb-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mx-4gb-mba8mx | TQMa8Mx with 4GB RAM ++ | [[https://github.com/tq-systems/u-boot-tqmaxx/releases/tag/zeus.TQMa8Mx.BSP.SW.0054|v2019.04-lf-5.4.y-1.0.0]] | [[https://github.com/tq-systems/linux-tqmaxx/releases/tag/zeus.TQMa8Mx.BSP.SW.0054|lf-5.4.y-1.0.0]] |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/zeus.TQMa8Mx.BSP.SW.0053|0053]] | [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]] | 3.0.3 - Zeus | ++tqma8mx-1gb-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gb-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mx-4gb-mba8mx | TQMa8Mx with 4GB RAM ++ | [[https://github.com/tq-systems/u-boot-tqmaxx/releases/tag/zeus.TQMa8Mx.BSP.SW.0053|v2019.04-lf-5.4.y-1.0.0]] | [[https://github.com/tq-systems/linux-tqmaxx/releases/tag/zeus.TQMa8Mx.BSP.SW.0053|lf-5.4.y-1.0.0]] |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/zeus.TQMa8Mx.BSP.SW.0030|0030]] | [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]] | 3.0.3 - Zeus | ++tqma8mx-1gb-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gb-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mx-4gb-mba8mx | TQMa8Mx with 4GB RAM ++ | [[https://github.com/tq-systems/u-boot-tqmaxx/releases/tag/zeus.TQMa8Mx.BSP.SW.0030|v2019.04-lf-5.4.y-1.0.0]] | [[https://github.com/tq-systems/linux-tqmaxx/releases/tag/zeus.TQMa8Mx.BSP.SW.0030|lf-5.4.y-1.0.0]] |
^ [[https://github.com/tq-systems/ci-meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0018|0018]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8Mx.BSP.SW.0017|0017]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8Mx.BSP.SW.0015|0015]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8Mx.BSP.SW.0014|0014]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8Mx.BSP.SW.0013|0013]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8Mx.BSP.SW.0012|0012]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.98_2.2.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0010|0010]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mx-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mx-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03-rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0008|0008]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mq-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mq-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mq-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0007|0007]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mq-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mq-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mq-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0004|0004]] | [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mq-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mq-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mq-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
^ 0003 | [[https://github.com/tq-systems/meta-tq/tree/sumo-tqma8x|sumo-tqma8x]] | 2.5.2 - Sumo | ++tqma8mq-1gm-mba8mx | TQMa8Mx with 1GB RAM ++ \\ ++tqma8mq-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mq-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2017.03-rel_4.9.88_imx_imx8qxp_beta2 | rel_imx_4.14.78_1.0.0_ga |
^ [[https://github.com/tq-systems/meta-tq/releases/tag/rocko.TQMa8Mx.BSP.SW.0001|0001]] | [[https://github.com/tq-systems/ci-meta-tq/tree/rocko-tqma8x|rocko-tqma8x]] | 2.4.4 - Rocko | ++tqma8mq-mba8mx | TQMa8Mx with 2GB RAM ++ \\ ++tqma8mq-2gm-mba8mx | TQMa8Mx with 2GB RAM ++ | v2017.03-rel_4.9.88_imx_imx8qxp_beta2 | rel_imx_4.9.88_imx8qxp_beta2 |
{{section>..:..:general_information:yocto:tips#bsp_release_auto_notification&noheader}}
===== Yocto Target Machines =====
^ TQMa8.BSP Revision ^ Target machine |
| [[https://github.com/tq-systems/meta-tq/releases/tag/zeus.TQMa8Mx.BSP.SW.0030|≥0030]] | tqma8mx-1gb-mba8mx \\ tqma8mx-2gb-mba8mx \\ tqma8mx-4gb-mba8mx |
| [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0010|≥0010]] | tqma8mx-1gm-mba8mx \\ tqma8mx-2gm-mba8mx |
| [[https://github.com/tq-systems/meta-tq/releases/tag/sumo.TQMa8.BSP.SW.0003|≥0003]] | tqma8mq-1gm-mba8mx \\ tqma8mq-mba8mx \\ tqma8mq-2gm-mba8mx |
| [[https://github.com/tq-systems/meta-tq/releases/tag/rocko.TQMa8Mx.BSP.SW.0001|0001]] | tqma8mq-mba8mx \\ tqma8mq-2gm-mba8mx |
\\
===== Yocto Changelog =====
**BSP**
* Update to Yocto Kirkstone
**U-Boot**
* Backport MMU table fixxes from upstream
* Backport U-Boot relocation and RAM size fixes from upstream
**Linux**
* Linux 5.15 support based on linux-fslc 5.15 + imx
**BSP**
* Update to Yocto Hardknott
* Update sub modules to support hardknott
* Port TQMa8 boards from branch zeus-tqma8
* Rework systemd-machine-units bbappend (add simplification from branch zeus-tqma8, adapt to newer systemd version with CAN FD support)
* Support for linux 5.10 based on linux-fslc 5.10
* Experimental usb support for ath10k
* Adjusted kernel config settings
* Weak assignments in machine files wherever possible to allow overwriting for custom mainboards or project specific tailoring
* Add ubi as MACHINE_FEATURE if [Q]SPI NOR is supported by machine
**Linux**
* Label sys EEPROM as read only
* Add RAW/Bayer formats for imx8_mipi_csi2 and mx8-isi-cap
**BSP**
* Prepare support for Vision Components GmbH MIPI CSI cameras
* add MACHINE_FEATURE 'camera'
**U-Boot**
* Allow chip REV. 2.2
* Apply fix for PCIe PHY VPH
* Disable VREG_BYPASS early to ensure using the CPU internal regulator for PCIe Phy when supplying with 3.3 V
**Linux**
* Added drivers for Vision Components GmbH MIPI CSI cameras with Sony IMX327 and Omnivision OV9281
* Add device trees for camera support
* Apply NXP fix for PCIe Phy VPH @ 3.3V
* Disable PCIe L1SS
* Enable more RAW/Bayer formats for mxc_mipi_csi and mxc-mipi-csi2_yav
* improve kernel config
* Remove ACPI
* Remove unused audio stuff
* Remove unused net devices
* Enable Vision Components GmbH MIPI CSI cameras
**BSP**
* Update to Yocto Zeus
* Update to Linux kernel lf-5.4.y-1.0.0
* Update to U-Boot v2019.04-lf-5.4.y-1.0.0
* Integrate CortexM examples for TQMa8Mx
* First version of CortexM examples for TQMa8Mx
* Add configuration for TQMa8Mx with 4 GiB RAM
* Include RPMSG examle device tree
* Rename an include (mba8mx.inc -> tqma8mx-mba8mx.inc)
**U-Boot**
* Compatibility to MBa8Mx REV.0300
* Add dt examle for M4 / RPMSG
* Support for variant with 4 GiB RAM
* Restrict SPL size. Use only configured DDR timing to prevent SRAM overflow
* Use devicetree to configure MMC env settings
* Increase env size to 32 kiB
* Cleanup and cosmetic in config header
* tqc-rtc improvements (offset, clkout)
* Fix USB Support. DM_USB and DWC3 for i.MX8M are not 100% compatible when using with non Type-C dual role setup
* backport device tree fixes from NXP upstream:
* MLK-24483-2: ecspi compatible to imx51-ecspi
* MLK-24383: Change the noc clock setting
* Fix compiler warning in spl
**Linux**
* Compatibility to MBa8Mx REV.0300
* TQMa8Mx: add dt examle for HDMI
* fix imx-spi for GPIO chip select
* switch to gpio CS for SPI (device tree change, should fix spi communication issues)
**BSP**
* Optimize environment settings
* Change console UART1 -> UART3
* Unified wic config
* Board header cleanup
**U-Boot**
* Change console UART1 -> UART3
* Generate local version
* QSPI optimized pad settings
* QSPI driver 4 byte addressing
* WDOG_B pin as hog pin
**Linux**
* Change console UART1 -> UART3
* Fix dt for LVDS over DSI @ eLCDIF
* Fix generating local version
* Increase CMA size to 640 MB
* Fix simple-panel settings for tianma LVDS display
* Add support for PWM
* Add support for mikroBUS module RTC5
* QSPI optimized pad settings
* Backport some ASoC patches
* Ressource leak fixes for imx-tlv320aic32x4
**BSP**
* meta-tq: added u-boot-fw-utils support
* tqma8mq: linux: increase QSPI NOR frequency
**Linux**
* tqma8mq: linux: add UARTS 2,3,4
**BSP**
* conf: use device tree name logic for kernel and image also for non TQMa8Mx boards
* tqma8mx: linux: update audio settings in dt for new kernel version
* u-boot: new RAM timing for TQMa8Mx
* scfw: update to version 1.2.7
* rework imx-sc-firmware recipe (use git tag in package name = needs tq_imx-scfw-v1.2.7-b3357 or later)
* tqma8mx: add support for MBa8Mx Rev.020x
**U-Boot**
* tqma8mx: u-boot: QSPI support
* tqma8mx: u-boot: USB HUB support for MBa8x Rev.020x
* tqma8mx: u-boot: manufacturer EEPROM
* tqma8mx: u-boot: lot of GPIO are requested and preconfigured
**Linux**
* tqma8mx: linux: QSPI support
* tqma8mx: linux: SD3 / USDHC support
* tqma8mx: linux: rtc / rtc alarm
* tqma8mx: linux: USB OTG (USB 2.0 only)
* tqma8mx: linux: HDMI audio
* tqma8mx: linux: PCIe Slot
* tqma8mx: linux: GPIO buttons
* tqma8mx: linux: GPIO LED
* tqma8mx: linux: LVDS via DSI bridge on MBa8x REV.0x20x
* new RAM timing for TQMa8Mx
* remove backported versions of imx-atf, use now imx_4.14.98_2.2.0
* update U-boot version to imx_4.14.98_2.2.0 version
* alsa-state installs now the correct file for tqma8mx codec
* working sound output on codec with aplay
* working sound output on codec and HDMI with gstreamer / pulsesink
* Update to Linux kernel rel_imx_4.14.98_2.2.0
* Uboot prepare using NXP release rel_imx_4.14.98_2.2.0
* temporary use older versions of imx-atf for TQMa8
* machine config tqma8mq-mba8mx is not longer supported
* Rename machine config from tqma8mq_[1,2]gm_mba8mx to tqma8mx_[1,2]gm_mba8mx all CPU derivates are supported (i.MX8M[D,Q,QL])
* TQMa8Mx revision 020x support
* RAM Timing with better power management support (CPU revision 2.1)
* U-Boot supports both machine configurations / devicetree is set automatically before booting
* U-Boot shows correct module name (TQMa8M[D,Q,QL])
* added packages for performance analysis (iotop, dstat, atop)
* updates for weston, busybox and images
* disabled ssh login without password
* improved LVDS support (SPWG 18 + 24 Bit)
* INNOLUX LVDS display 18/24 Bit support
* Device support on I2C2 bus
* initial sound driver (asound.state missing, playback is only working after configuring codec with amixer)
* additional packages in tq-image-generic image recipe (Firmware, systemd compatibility)
* improved configuration settings in ci-meta-tq
* Ethernet LED configuration fixes
* e-MMC boot environment fixes
* DT fixes for TMU
* LVDS support
* Netboot support (Rootfs via NFS)
* support for eMMC HS modes
* added opensssh in Rootfs
* remove meta-gnome
* port to yocto sumo
* added machine tqma8mx with 1GB RAM
* initial release
===== Yocto Images =====
**System Images**
^ Boot Device ^ Symlink ^ File ^
^ SD Card/eMMC | tq-image-weston-debug-tqma8mx-1gb-mba8mx.wic | tq-image-weston-debug-tqma8mx-1gb-mba8mx-.rootfs.wic |
**Bootloader Binaries**
^ Boot Device ^ File ^ Description ^
^ SD/eMMC | imx-boot-tqma8mx-1gb-mba8mx-sd.bin-flash_spl_uboot | boot stream for SD / e-MMC |
^ SD/eMMC | imx-boot-tqma8mx-1gb-mba8mx-sd.bin-flash_hdmi_spl_uboot | boot stream for SD / e-MMC with HDMI support|
^ UUU | imx-boot-tqma8mx-1gb-mba8mx-mfgtool.bin-flash_spl_uboot | boot stream for UUU |
^ UUU | imx-boot-tqma8mx-1gb-mba8mx-mfgtool.bin-flash_hdmi_spl_uboot | boot stream for UUU with HDMI support |
**Linux Kernel Image**
^ Symlink ^ File ^
| Image | Image--5.15.60+git0+89a67700a0-r0-tqma8mx-1gb-mba8mx-.bin |
**Devicetree Blobs**
^ Symlink ^ Description ^
| imx8mq-tqma8mq-mba8mx.dtb | Default |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi.dtb | Default with HDMI interface activated |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi-imx327.dtb | Default with CSI color Camera and HDMI activated |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi-ov9281.dtb | Default with CSI monocrome Camera and HDMI activated |
| imx8mq-tqma8mq-mba8mx-dcss-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
| imx8mq-tqma8mq-mba8mx-lcdif-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
| imx8mq-tqma8mq-mba8mx-rpmsg.dtb | Default with RPMSG support |
**Rootfs images**
^ Symlink ^ File ^
| tq-image-weston-debug-tqma8mx-1gb-mba8mx.ext4 | tq-image-weston-debug-tqma8mx-1gb-mba8mx-.rootfs.ext4 |
| tq-image-weston-debug-tqma8mx-1gb-mba8mx.tar.gz | tq-image-weston-debug-tqma8mx-1gb-mba8mx-.rootfs.tar.gz |
**System Images**
^ Boot Device ^ Symlink ^ File ^
^ SD Card/eMMC | tq-image-weston-debug-tqma8mx-2gb-mba8mx.wic | tq-image-weston-debug-tqma8mx-2gb-mba8mx-.rootfs.wic |
**Bootloader Binaries**
^ Boot Device ^ File ^ Description ^
^ SD/eMMC | imx-boot-tqma8mx-2gb-mba8mx-sd.bin-flash_spl_uboot | boot stream for SD / e-MMC |
^ SD/eMMC | imx-boot-tqma8mx-2gb-mba8mx-sd.bin-flash_hdmi_spl_uboot | boot stream for SD / e-MMC with HDMI support|
^ UUU | imx-boot-tqma8mx-2gb-mba8mx-mfgtool.bin-flash_spl_uboot | boot stream for UUU |
^ UUU | imx-boot-tqma8mx-2gb-mba8mx-mfgtool.bin-flash_hdmi_spl_uboot | boot stream for UUU with HDMI support |
**Linux Kernel Image**
^ Symlink ^ File ^
| Image | Image--5.15.60+git0+89a67700a0-r0-tqma8mx-2gb-mba8mx-.bin |
**Devicetree Blobs**
^ Symlink ^ Description ^
| imx8mq-tqma8mq-mba8mx.dtb | Default |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi.dtb | Default with HDMI interface activated |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi-imx327.dtb | Default with CSI color Camera and HDMI activated |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi-ov9281.dtb | Default with CSI monocrome Camera and HDMI activated |
| imx8mq-tqma8mq-mba8mx-dcss-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
| imx8mq-tqma8mq-mba8mx-lcdif-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
| imx8mq-tqma8mq-mba8mx-rpmsg.dtb | Default with RPMSG support |
**Rootfs images**
^ Symlink ^ File ^
| tq-image-weston-debug-tqma8mx-2gb-mba8mx.ext4 | tq-image-weston-debug-tqma8mx-2gb-mba8mx-.rootfs.ext4 |
| tq-image-weston-debug-tqma8mx-2gb-mba8mx.tar.gz | tq-image-weston-debug-tqma8mx-2gb-mba8mx-.rootfs.tar.gz |
**System Images**
^ Boot Device ^ Symlink ^ File ^
^ SD Card/eMMC | tq-image-weston-debug-tqma8mx-4gb-mba8mx.wic | tq-image-weston-debug-tqma8mx-4gb-mba8mx-.rootfs.wic |
**Bootloader Binaries**
^ Boot Device ^ File ^ Description ^
^ SD/eMMC | imx-boot-tqma8mx-4gb-mba8mx-sd.bin-flash_spl_uboot | boot stream for SD / e-MMC |
^ SD/eMMC | imx-boot-tqma8mx-4gb-mba8mx-sd.bin-flash_hdmi_spl_uboot | boot stream for SD / e-MMC with HDMI support|
^ UUU | imx-boot-tqma8mx-4gb-mba8mx-mfgtool.bin-flash_spl_uboot | boot stream for UUU |
^ UUU | imx-boot-tqma8mx-4gb-mba8mx-mfgtool.bin-flash_hdmi_spl_uboot | boot stream for UUU with HDMI support |
**Linux Kernel Image**
^ Symlink ^ File ^
| Image | Image--5.15.60+git0+89a67700a0-r0-tqma8mx-4gb-mba8mx-.bin |
**Devicetree Blobs**
^ Symlink ^ Description ^
| imx8mq-tqma8mq-mba8mx.dtb | Default |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi.dtb | Default with HDMI interface activated |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi-imx327.dtb | Default with CSI color Camera and HDMI activated |
| imx8mq-tqma8mq-mba8mx-dcss-hdmi-ov9281.dtb | Default with CSI monocrome Camera and HDMI activated |
| imx8mq-tqma8mq-mba8mx-dcss-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
| imx8mq-tqma8mq-mba8mx-lcdif-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
| imx8mq-tqma8mq-mba8mx-rpmsg.dtb | Default with RPMSG support |
**Rootfs images**
^ Symlink ^ File ^
| tq-image-weston-debug-tqma8mx-4gb-mba8mx.ext4 | tq-image-weston-debug-tqma8mx-4gb-mba8mx-.rootfs.ext4 |
| tq-image-weston-debug-tqma8mx-4gb-mba8mx.tar.gz | tq-image-weston-debug-tqma8mx-4gb-mba8mx-.rootfs.tar.gz |
===== Yocto Deployment =====
==== Device assignment ====
__Device assignment:__\\
//mmcdev 0// = eMMC\\
//mmcdev 1// = SD Card\\
==== Yocto specific command Update eMMC ====
1. Run the following commands in the Uboot shell to create update script:
setenv root_loop 'setenv start 24000 && setenv r1 $rootblks16 && while itest $r1 -gt 0; do if itest $r1 -gt 0x100000; then setenv count 0x100000; else setenv count $r1; fi && mmc dev 1 && mmc read $loadaddr $start $count && mmc dev 0 && mmc write $loadaddr $start $count && setexpr start $start + $count && setexpr r1 $r1 - $count; done; setenv r1; setenv start; setenv count'
setenv install_firmware 'echo MBR... && mmc dev 1 && mmc read $loadaddr 0 1 && mmc dev 0 && mmc write $loadaddr 0 1 && echo Bootstream... && mmc dev 1 && mmc read $loadaddr 41 1FBE && mmc dev 0 && mmc write $loadaddr 41 1FBE && echo U-Boot environment... && mmc dev 1 && mmc read $loadaddr 2000 2000 && mmc dev 0 && mmc write $loadaddr 2000 2000 && echo Firmware Partition... && mmc dev 1 && mmc read $loadaddr 4000 20000 && mmc dev 0 && mmc write $loadaddr 4000 20000 && echo Root FS... && run root_loop'
* Create the variable rootblks16 to hold the size of the root filesystem as a hex number representing the size as the amount of 512 byte blocks:
setenv rootblks16
** Example for RootFS size of 2070MB: ** \\
2070** * **1024** * **1024 = 2170552320
\\
2170552320** / **512 = 4239360
\\
4239360 = 40B000HEX
setenv rootblks16 0x40B000
==== uboot command to start netboot ====
=> run netboot