This is an old revision of the document!
Entry Page
Third-Party Add-Ons
Board Support Packages
Product URL list
Starterkit
Hardware
Debug Connection
The TQMa8Xx debug UART is connected via a FTDI USB-to-Serial converter to X13 (micro-USB) on the MBa8Xx. A micro-USB/USB-A cable is part of the STKa8MPxL accessory set. Depending on the host operating system, a driver may need to be installed.
Onboard I2C devices
TQMa8Xx Rev.02xx / MBa8Xx Rev.02xx
I2C bus | TQMa8Xx | ||||
---|---|---|---|---|---|
I2C1 | 0x19 Temperature sensor | 0x31 EEPROM (software protection) | 0x57 EEPROM | 0x51 EEPROM | 0x68 RTC |
I2C bus | MBa8Xx | |||||||
---|---|---|---|---|---|---|---|---|
I2C1 | 0x18 Audio codec | 0x1C Temperature sensor | 0x2C Display-Port bridge | 0x34 EEPROM (software protection) | 0x44 USB Hub | 0x54 EEPROM | 0x6A PCIe clock generator | 0x70 Port Expander |
TQMa8Xx Rev.01xx / MBa8Xx Rev.01xx
I2C bus | TQMa8Xx | ||||
---|---|---|---|---|---|
I2C1 | 0x19 Temperature sensor | 0x31 Temperature sensor | 0x50 EEPROM | 0x51 EEPROM | 0x68 RTC |
I2C bus | MBa8Xx | |||||||
---|---|---|---|---|---|---|---|---|
I2C1 | 0x18 Audio codec | 0x1C Temperature sensor | 0x2C Display-Port bridge | 0x2D USB-Hub | 0x34 Temperature sensor | 0x54 EEPROM | 0x6A PCIe clock generator | 0x70 Port Expander |
Hardware Issues
Linux BSP
U-Boot
U-Boot
Feature | BSP Revision | Remarks | |||
---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0081 - 0091 | |
TQMa8Xx | i.MX8X | ENET0 | GbE | ✔ | |
i.MX8X | ENET1 | GbE | ✔ | ||
i.MX8X | FlexSPI | QSPI NOR | ✔ | ||
i.MX8X | Fuse | ✔ | |||
i.MX8X | GPIO | ✔ | |||
i.MX8X | I²C | EEPROM, Temperature Sensors | ✔ | ||
i.MX8X | UART1 | Debug Console | ✔ | default console | |
i.MX8X | USB | Host | ✔ | ||
i.MX8X | uSDHC | eMMC / SD-Card | ✔ | SD card / eMMC |
U-Boot - Old Revisions
Feature | BSP Revision | Remarks | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0001 | 0002 | 0005 | 0006 | 0007 | 0009 | 0016 | 0017 | 1) 0025 | 2) 0028 | 3) 0029 | 4) 0030 | 5) 0032 | 6) 0033 | 7) 0035 | 8) 0036 | 0055 | |
TQMa8Xx | i.MX8X | ENET0 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
i.MX8X | ENET1 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8X | FlexSPI | QSPI NOR | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
i.MX8X | Fuse | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
i.MX8X | GPIO | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||
i.MX8X | I²C | EEPROM, Temperature Sensors | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8X | UART1 | Debug Console | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | default console | |
i.MX8X | USB | Host | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||
i.MX8X | uSDHC | eMMC / SD-Card | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | SD card / eMMC |
Supported boot devices
Boot device | supported |
---|---|
eMMC | ✔ |
SD Card | ✔ |
QSPI NOR | ✔ |
Kernel
Operating System
Linux
Supported FeaturesFeature | BSP Revision | Remarks | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0001 | 0002 | 0005 | 0006 | 0007 | 0009 | 0016 | 0017 | 9) 0025 | 10) 0028 | 11) 0029 | 12) 0030 | 13) 0032 | 14) 0033 | 15) 0035 | 16) 0036 | 0055 | 0082 | 0083 | 0087 | 0088 | 0089 | |
TQMa8Xx | i.MX8X | Cortex M4 | Integrated Microcontroller | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||||||||||
i.MX8X | ENET1 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8X | ENET2 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8X | FLEXCAN0 | CAN | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | CAN FD is not automatically configured due to a systemd limitation | |||||||
i.MX8X | FLEXCAN1 | CAN | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||
i.MX8X | FlexSPI | QSPI NOR Flash | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
i.MX8X | GPU | Hardware Acceleration | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||
i.MX8X | I²C1 | Bus Access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | See onboard I2C devices | |
i.MX8X | MIPI DSI | LVDS | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Tested with Tianma TM070JVHG33 display | |||
i.MX8X | LPSPI1 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
i.MX8X | LPSPI2 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
i.MX8X | LPSPI3 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
i.MX8X | LPUART1 | Console | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8X | LPUART3 | TTL | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | available on MBa8xx connector X4_45 RX X4_47 TX |
||||||||
i.MX8X | GPIO | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8X | PCIe | Host | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | BSP revision ≤ 0017 requires MBa8xx ≥ Rev.0102, also see Known Issues | |||
i.MX8X | SAI | TLV320AIC | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||||||||
i.MX8X | USB3 | TUSB8041I | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||||
i.MX8X | USB OTG1 | Host | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||||
Device | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||||||
i.MX8X | USB OTG2 | TUSB8041I | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8X | uSDHC | uSDHC0 / eMMC uSDHC1 / SD Card | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
MBa8xx | TLV320AIC | Audio Codec | Headphone Out / Line Out | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||||||||
Line In | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||||||||||
Microphone In | ||||||||||||||||||||||||||
TUSB8041I | USB1 | Host USB 2.0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available on X24 (MPCIe) | |||
TUSB8041I | USB2 | Host USB 2.0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available on X22 (LVDS) | |||
TUSB8041I | USB3 | Host USB 3.0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available on X20 | |||
TUSB8041I | USB4 | Host USB 3.0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available on X20 |
FAQ
Yocto
Yocto BSP Version Matrix - Old Revisions
BSP Version Matrix - Old Revisions
BSP Revision | meta-tq release | Yocto Project / Poky Release | Target machine17) | U-Boot | Linux Kernel |
---|---|---|---|---|---|
0055 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-2gb-mba8xx tqma8xqp-1gb-mba8xx tqma8xdp-1gb-mba8xx tqma8xqp4-mba8xx tqma8xdp4-mba8xx | v2020.04-imx-5.4.47-2.2.0 | lf-5.4.y-1.0.0 |
0036 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx tqma8xdp-mba8xx tqma8xqp4-mba8xx tqma8xdp4-mba8xx | v2020.04-imx-5.4.47-2.2.0 | lf-5.4.y-1.0.0 |
0035 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx tqma8xdp-mba8xx tqma8xqp4-mba8xx tqma8xdp4-mba8xx | v2020.04-imx-5.4.47-2.2.0 | lf-5.4.y-1.0.0 |
0033 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx tqma8xqp4-mba8xx | v2020.04-imx-5.4.47-2.2.0 | lf-5.4.y-1.0.0 |
0032 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx tqma8xqp4-mba8xx | v2020.04-imx-5.4.47-2.2.0 | lf-5.4.y-1.0.0 |
0030 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx tqma8xqp4-mba8xx | v2019.04-lf-5.4.y-1.0.0 | lf-5.4.y-1.0.0 |
0029 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx tqma8xqp4-mba8xx | v2019.04-lf-5.4.y-1.0.0 | lf-5.4.y-1.0.0 |
0028 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx | v2019.04-lf-5.4.y-1.0.0 | lf-5.4.y-1.0.0 |
0025 | 3.0 - Zeus | zeus-tqma8 | tqma8xqp-mba8xx | v2019.04-lf-5.4.y-1.0.0 | lf-5.4.y-1.0.0 |
0017 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
0016 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
0009 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0007 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0006 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0005 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0002 | 2.5.2 - Sumo | sumo-tqma8x | tqma8qx-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0001 | 2.4.4 - Rocko | rocko-tqma8x | tqma8qx-mba8qx | v2017.03 rel_4.9.88_imx_imx8qxp_beta2 | rel_imx_4.9.88_imx8qxp_beta2 |
Yocto Target Machines
Yocto Target Machines
TQMa8.BSP Revision | Target machine |
---|---|
≥0055 | tqma8xqp-2gb-mba8xx tqma8xqp-1gb-mba8xx tqma8xdp-1gb-mba8xx tqma8xqp4-mba8xx tqma8xdp4-mba8xx |
≥0035 | tqma8xqp-mba8xx tqma8xdp-mba8xx tqma8xqp4-mba8xx tqma8xdp4-mba8xx |
≥0029 | tqma8xqp-mba8xx tqma8xqp4-mba8xx |
≥0025 | tqma8xqp-mba8xx |
≥0005 | tqma8xqp-mba8xx tqma8xd-mba8xx |
0002 | tqma8qx-mba8xx |
0001 | tqma8qx-mba8qx |
BSP / Hardware compatibility
TQMa8Xx4 | TQMa8Xx | MBa8Xx | ||||
---|---|---|---|---|---|---|
BSP Rev. | Rev.01xx | Rev.01xx | Rev.02xx | Rev.03xx | Rev.01xx | Rev.02xx |
< 0025 | ✔ | ✔ | ||||
≥ 0025 | ✔ | ✔ | ||||
≥ 0029 | ✔ | ✔ | ||||
≥ 0033 | ✔ | ✔ | ✔ | ✔ |
BSP / Hardware compatibility
TQMa8Xx | MBa8Xx | |||
---|---|---|---|---|
Rev.01xx | Rev.02xx | Rev.01xx | Rev.02xx | |
BSP Rev < 0025 | ✔ | ✔ | ||
BSP REV ≥ 0025 | ✔ | ✔ |
TQMa8Xx4 | MBa8Xx | |||
---|---|---|---|---|
Rev.01xx | Rev.02xx | |||
BSP REV ≥ 0029 | ✔ | ✔ |
Yocto Changelog
BSP Version History
Rev.0087
BSP
- Update to Yocto Kirkstone
U-Boot
- Update imx-seco
- Update imx seco-libs
- Update imx-sc-firmware
Linux
- Linux 5.15 support based on linux-fslc 5.15 + imx
Rev.0083
U-Boot
- Support booting UBI rootfs from SPI NOR
- Use local version as implemented in branch zeus-tqma8. This will make the U-boot version string consistent with newer and upcomming kernel version string and consists of <upstream version>-tq+g<git short hash>
- Support for large micron SPI NOR on TQMa8Xx / TQMa8x flash was discovered but progam / erase silently fails. Backport upstream driver changes for FlexSPI IP and use this driver instead of the older one.
- TQMa8[all variants] adjust DEFAULT_FDT_FILE to kernel 5.10 used in this BSP. This is also the naming scheme that will be found in linux-mainline.
Linux
- Rewrite to use linux-yocto class
- Force build vivante gpu driver for linux-tq-imx as out of tree module to ensure versions between module and userland match. Overrides default assignments from meta-freescale.
- Switch to use linux-yocto for kernel fragment handling
- Remove support for i.MX8 based machines
Rev.0082
BSP
- Update to Yocto Hardknott
Linux
- Linux 5.10 support based on linux-fslc 5.10 + imx
Rev.0055
BSP
- Support for Cortex M4 enabled bootstream
- Add new variant tqma8xqp-2gb-mba8xx
- Rename existing machines tqma8x[d,q]p-mba8xx to tqma8x[d,q]p-1gb-mba8xx to allow new variants
- Update SCFW version: basic CortexM4 support for TQMa8Xx[S] and new 2GB DDR3L / ECC variant of TQMa8Xx
- Update tqma8-cortexm-demos version: basic CortexM4 support for TQMa8Xx[S]
- Disable packages only relevant for NXP STK:
- nxp8987 WiFi
- imx-m[4,7]-demos
- Migrate all imx8 machines with U-Boot v2020.04 support to NXP BSP version
- Migrate all machines to NXP BSP version
- Drop support for v2019.04, since no user left
U-Boot
- Add reserved memory nodes in DT to prevent U-Boot accessing M4 reserved memory
- Allow building bootstream with Cortex M4 demo for TQ Systems SOM
- Fix location U-Boot config node in DT
- Prevent voltage switch error message for e-MMC. This is not a real error but ugly behaviour which was fixed for other SOM before
- Add GPIO_OPEN_DRAIN to I2C GPIO to prevent warnings (sync with kernel)
- DSR support for Micron SPI NOR
- I2C recovery gpio
Linux
- Device trees for Cortex M4 demos
- Set CAN PDRV to low
- Upstream fixes from linux-imx
- Label sys EEPROM as read only
- Add GPIO_OPEN_DRAIN to I2C GPIO to prevent warnings
- Make backlight for LVDS work again. When using PWM from different power domain, this domain needs to be enabled
- Improve kernel config:
- Remove ACPI
- Remove unused audio stuff
- Remove unused net devices
- Enable Vision Components GmbH MIPI CSI cameras
- DSR support for Micron SPI NOR
- I2C recovery gpio
- Enable wifi support in kernelconfig
- Fix DT for mPCIe USB cards on MBa8Xx
Rev.0036
BSP
- config/machines: sanitize variable assignments to improve reusability
- Replace IMAGE_INSTALL_append with more approbiate MACHINE_EXTRA_RRECOMMENDS_append
- Remove all dirty magic for DISTRO_FEATURES_remove
- Replace hard assignments to IMAGE_BOOT_FILES with ?=
U-Boot
- v2020.04 fix FEC Ethernet PHY init
- Fix phy_config using devicetree
- Forward error from phy_config
Rev.0035
BSP
- support for tqma8xdp[4]-mba8xx
U-Boot
- Fix board name for TQMa8XDP[4]
Linux
- Support for tqma8xdp[4]-mba8xx
Rev.0033
U-Boot
- Fix not working update scripts when exchanging an SD card just before start updating
- Allow DSR for Macronix SPI NOR on all supported TQ-Systems SOM
Linux
- Backport improvements for TI TLV320AIC32x4 codec
- Lower drive strength for some pins
- QSPI NOR DSR
- Adjust thermal trip points
- Reenable audio in DT (deadlock fixed for I2C host)
- Fix deadlock i2c-imx-lpi2c
- Fix PMIC / CPU thermal sensor support
- Allow DSR for Macronix SPI NOR on all supported TQ-Systems SOM
- Add DSR support for Macronix flash
- Enable VPU support
Rev.0032
BSP
- Update SCFW to tq-TQMa8.NXP-v1.6.0.B4894.0030
- Use Release Version of SC Firmware without debug output
- Update to U-Boot imx-5.4.47-2.2.0
- Update to ATF v2.2 / imx-5.4.47_2.2.0
- QSPIA_SS1 is usable as GPIO
Rev.0030
U-Boot
- Fix compatible names in devicetree
Linux
- Fix compatible names in devicetree
- Increase clock for LPSPI1, use same PER base clocks as other LPSPI instance. Fixes clock mismatch for spidev on TQMa8XxS
Rev.0029
BSP
- Add default config for TQMa8Xx for u-boot-fw-utils-imx-tq
- Fix missing dependency on bison-native for u-boot-fw-utils-imx-tq
- Rewrite systemd-machine-units bbappend to conform to new systemd version. CAN does not need separate units, but a simple network definition
- Add Support for TQMa8XQP4. The new machine needs a different bootstream hence a differen SCU firmware. The rest is equal to the existing TQMa8XQP.
U-Boot
- Support for TQMa8XQP4 as variant of TQMa8Xx (defconfigs, memory defines)
- Use same asound.state for all TQMa8 boards. Depends on linux support
- Fixed missing defines for default mtest addresses
- Use weak assignments for IMXBOOT_TARGETS to allow overrides and to prevent generating invalid bootstreams in imx-boot-mfgtool_
- fix wrong setting for pin muxing
- Drop support for TQMa8XxS HW REV.010x
Linux
- Fix wrong setting for pin muxing
- Drop support for TQMa8XxS HW REV.010x
Rev.0028
BSP
- Support bootstream for FlexSPI
- Support bootstream for mfgtool config
- Port / append mfgtool dependend recipes
U-Boot
- Display CPU info
- Add mfgtool config
- Single config for SD / e-MMC / FlexSPI Boot device
Linux
- Support PCIe
Rev.0025
BSP
- Update to Yocto Zeus
- Port TQMa8Xx to new U-Boot / Linux kernel
- Add recipes for kernel / u-boot based on NXP 5.4.y_1.0.0 reference BSP
- Add machine files for TQMa8 modules (based on old local kernel and u-boot, only basic boot support)
- SCFW firmware update to 1.3.1
- Add bbappends for recipes from meta-imx
- Add recipes from sumo-tqma8x branch
Linux
- Port simple-panel display timings
- Backport LVDS bugfixes from 5.4.3_2.0.0 beta
- Port LVDS DSI bridge
- Port audio fixes for TQ Systems starter kits
- Mesa: restrict bbappend to mx8
- Disable *.bz2 image types
Rev.0017
BSP
- meta-dumpling: added u-boot-fw-utils in packagegroups
- meta-tq : u-boot-fw-utils support
Linux
- added spidev for busses SPI1 / SPI2 / SPI3
- added LPUART3 / available on unused SAI pins
- fix QSPI driver
Rev.0016
BSP
- Update to scfw version 1.2.7
- systemd-machine-units reduce default can bitrate
U-Boot
- Update to imx_4.14.98_2.2.0
- Fix QSPI probe write a byte to flash (MACRONIX)
- QSPI Boot support
Linux
- Update to rel_imx_4.14.98_2.2.0
Rev.0009
- backport CAN fixes from current NXP kernel
- support additional LVDS display
- add etm11010g0dka
Rev.0007
- CAN / Ethernet preconfigured via systemd service
- PCIe disabled DT for old STK
- Ethernet phy led config fix
- Better reserved memory config for TQMa8XD
Rev.0006
- PCIe GPIO pins (PERST pin config correction) in DT and U-Boot
- PCIe DT with Gen1 only support (for transparent PCIe switch / bridge)
Rev.0005
Global:
- SCU Firmware based on porting kit v1.1.2
TQMa8XQP:
- make LVDS work again
- polish boot flow
- rename configs and names (tqma8qxp-mba8xx → tqma8xqp-mbaxx)
- support net boot
TQMa8XD:
- initial support (tqma8xd-mba8xx)
TQMa8XQPS
- test newtwork support in linux
- support net boot (GBE0)
Rev.0002
- port to yocto sumo / NXP rel_imx_4.14.78_ga
- SCU firmware base v1.1
- rename configs and names (tqma8qxp-mba8xx → tqma8xqp-mbaxx) siehe version matrix
Rev.0001
- initial release
Yocto Partitions
SD / eMMC image
- sector size 512 Byte
- unpartitioned area: 4MiB (0x2000 sectors)
Size | Usage |
---|---|
0x0001 sector / 512 Byte | MBR / Partition Table |
0x0001 sector / 512 Byte | free |
0x800 sectors / 1 MiB | u-boot |
0x1000 sectors / 2 MiB | environment |
0x2000 sectors / 4 MiB | reserved |
0xA000 sectors / 20 MiB | /boot / firmware (Kernel,devicetrees) |
0x100000 sectors / 512 MiB | RootFS |
Yocto Images
Target Machine: tqma8xdp-1gb-mba8Xx
System Images
Boot Device | Symlink | File |
---|---|---|
SD Card/eMMC | ||
SD Card/eMMC | tq-image-weston-tqma8xdp-1gb-mba8xx.wic | tq-image-weston-tqma8xdp-1gb-mba8xx-<build_timestamp>.rootfs.wic |
Bootloader Binaries
Boot Device | Symlink | File |
---|---|---|
SD/eMMC | imx-boot | imx-boot-tqma8xdp-1gb-mba8xx-sd.bin-flash_spl |
Linux Kernel Image
Symlink | File |
---|---|
Image | Image–5.10.74+git0+a988e804a1-r0-tqma8xdp-1gb-mba8xx-<build_timestamp>.bin |
Devicetree Blobs
Symlink | Description |
---|---|
imx8dxp-tqma8xdp-mba8xx.dtb | Default |
imx8dxp-tqma8xdp-mba8xx-lvds0-tm070jvhg33.dtb | Default with LVDS0 interface activated |
imx8dxp-tqma8xdp-mba8xx-lvds1-tm070jvhg33.dtb | Default with LVDS1 interface activated |
imx8dxp-tqma8xdp-mba8xx-rpmsg.dtb | Default with RPMSG support |
Rootfs images
Symlink | File |
---|---|
tq-image-weston-tqma8xdp-1gb-mba8xx.ext4 | tq-image-weston-tqma8xdp-1gb-mba8xx-<build_timestamp>.rootfs.ext4 |
tq-image-weston-tqma8xdp-1gb-mba8xx.tar.gz | tq-image-weston-tqma8xdp-1gb-mba8xx-<build_timestamp>.rootfs.tar.gz |
Target Machine: tqma8xqp-1gb-mba8xx
System Images
Boot Device | Symlink | File |
---|---|---|
SD Card/eMMC | ||
SD Card/eMMC | tq-image-weston-tqma8xqp-1gb-mba8xx.wic | tq-image-weston-tqma8xqp-1gb-mba8xx-<build_timestamp>.rootfs.wic |
Bootloader Binaries
Boot Device | Symlink | File |
---|---|---|
SD/eMMC | imx-boot | imx-boot-tqma8xqp-1gb-mba8xx-sd.bin-flash_spl |
Linux Kernel Image
Symlink | File |
---|---|
Image | Image–5.10.74+git0+a988e804a1-r0-tqma8xqp-1gb-mba8xx-<build_timestamp>.bin |
Devicetree Blobs
Symlink | Description |
---|---|
imx8qxp-tqma8xqp-mba8xx.dtb | Default |
imx8qxp-tqma8xqp-mba8xx-lvds0-tm070jvhg33.dtb | Default with LVDS0 interface activated |
imx8qxp-tqma8xqp-mba8xx-lvds1-tm070jvhg33.dtb | Default with LVDS1 interface activated |
imx8qxp-tqma8xqp-mba8xx-rpmsg.dtb | Default with RPMSG support |
Rootfs images
Symlink | File |
---|---|
tq-image-weston-tqma8xqp-1gb-mba8xx.ext4 | tq-image-weston-tqma8xqp-1gb-mba8xx-<build_timestamp>.rootfs.ext4 |
tq-image-weston-tqma8xqp-1gb-mba8xx.tar.gz | tq-image-weston-tqma8xqp-1gb-mba8xx-<build_timestamp>.rootfs.tar.gz |
Target Machine: tqma8xqp-2gb-mba8xx
System Images
Boot Device | Symlink | File |
---|---|---|
SD Card/eMMC | ||
SD Card/eMMC | tq-image-weston-tqma8xqp-2gb-mba8xx.wic | tq-image-weston-tqma8xqp-2gb-mba8xx-<build_timestamp>.rootfs.wic |
Bootloader Binaries
Boot Device | Symlink | File |
---|---|---|
SD/eMMC | imx-boot | imx-boot-tqma8xqp-2gb-mba8xx-sd.bin-flash_spl |
Linux Kernel Image
Symlink | File |
---|---|
Image | Image–5.10.74+git0+a988e804a1-r0-tqma8xqp-2gb-mba8xx-<build_timestamp>.bin |
Devicetree Blobs
Symlink | Description |
---|---|
imx8qxp-tqma8xqp-mba8xx.dtb | Default |
imx8qxp-tqma8xqp-mba8xx-lvds0-tm070jvhg33.dtb | Default with LVDS0 interface activated |
imx8qxp-tqma8xqp-mba8xx-lvds1-tm070jvhg33.dtb | Default with LVDS1 interface activated |
imx8qxp-tqma8xqp-mba8xx-rpmsg.dtb | Default with RPMSG support |
Rootfs images
Symlink | File |
---|---|
tq-image-weston-tqma8xqp-2gb-mba8xx.ext4 | tq-image-weston-tqma8xqp-2gb-mba8xx-<build_timestamp>.rootfs.ext4 |
tq-image-weston-tqma8xqp-2gb-mba8xx.tar.gz | tq-image-weston-tqma8xqp-2gb-mba8xx-<build_timestamp>.rootfs.tar.gz |
BSP Revision ≥ 0025
Target Machine: tqma8xqp-mba8xx
System Image
SD Card/eMMC
Symlink | File |
---|---|
tq-image-weston-tqma8xqp-mba8xx.wic | tq-image-weston-tqma8xqp-mba8xx-<build_timestamp>.rootfs.wic |
Bootstream (Bootloader) Binary
SD Card/eMMC
Symlink | File |
---|---|
imx-boot-tqma8xqp-mba8xx-sd.bin | imx-boot-tqma8xqp-mba8xx-sd.bin-flash_spl |
Linux Kernel Binary
Symlink | File |
---|---|
Image Image-tqma8xqp-mba8xx.bin | Image–5.4-r0-tqma8xqp-mba8xx-<build_timestamp>.bin |
Devicetree Binarys
Symlink | Description |
---|---|
imx8qxp-mba8xx.dtb imx8qxp-mba8xx-tqma8xqp-mba8xx.dtb | device tree blob for TQMa8XQP on MBa8Xx |
imx8qxp-mba8xx-lvds-tm070jvhg33.dtb imx8qxp-mba8xx-lvds-tm070jvhg33-tqma8xqp-mba8xx.dtb | device tree blob for LVDS Display |
RootFS Images
Symlink | File |
---|---|
tq-image-weston-tqma8xqp-mba8xx.ext4 | tq-image-weston-tqma8xqp-mba8xx-<build_timestamp>.rootfs.ext4 |
tq-image-weston-tqma8xqp-mba8xx.tar.gz | tq-image-weston-tqma8xqp-mba8xx-20200625075001.rootfs.tar.gz |
BSP Revision ≤ 0017
Target Machine: tqma8xd-mba8xx
System Image
SD Card/eMMC
Symlink | File |
---|---|
tq-image-qt5-tqma8xd-mba8xx.wic | tq-image-qt5-tqma8xd-mba8xx-<build_timestamp>.rootfs.wic |
Bootstream (Bootloader) Binary
SD Card/eMMC
Symlink | File |
---|---|
imx-boot-tqma8xd-mba8xx-sd.bin | imx-boot-tqma8xd-mba8xx-sd.bin-flash |
Linux Kernel Binary
Symlink | File |
---|---|
Image Image-tqma8xd-mba8xx.bin | Image–4.14.98-r0-tqma8xd-mba8xx-<build_timestamp>.bin |
Devicetree Binarys
Symlink | Description |
---|---|
Image-fsl-imx8dx-tqma8xd-mba8xx.dtb fsl-imx8dx-tqma8xd-mba8xx.dtb | device tree blob for TQMa8XD |
Image-fsl-imx8dx-tqma8xd-mba8xx-lvds-etml1010g0dka.dtb fsl-imx8dx-tqma8xd-mba8xx-lvds-etml1010g0dka.dtb | device tree blob for LVDS Display |
Image-fsl-imx8dx-tqma8xd-mba8xx-lvds-tm070jvhg33.dtb fsl-imx8dx-tqma8xd-mba8xx-lvds-tm070jvhg33.dtb | device tree blob for TIANMA LVDS Display |
Image-fsl-imx8dx-tqma8xd-mba8xx-no-pcie.dtb fsl-imx8dx-tqma8xd-mba8xx-no-pcie.dtb | Devicetree for older Carrier Revision to disable PCIe |
Image-fsl-imx8dx-tqma8xd-mba8xx-pcie-gen1.dtb fsl-imx8dx-tqma8xd-mba8xx-pcie-gen1.dtb | Devicetree for older Carrier Revision to enable PCIe Gen1 |
RootFS Images
Symlink | File |
---|---|
tq-image-qt5-tqma8xd-mba8xx.ext4 | tq-image-qt5-tqma8xd-mba8xx-<build_timestamp>.rootfs.ext4 |
tq-image-qt5-tqma8xd-mba8xx.tar.gz | tq-image-qt5-tqma8xd-mba8xx-<build_timestamp>.rootfs.tar.gz |
Target Machine: tqma8xqp-mba8xx
System Image
SD Card/eMMC
Symlink | File |
---|---|
tq-image-qt5-tqma8xqp-mba8xx.wic | tq-image-qt5-tqma8xqp-mba8xx-<build_timestamp>.rootfs.wic |
Bootstream (Bootloader) Binary
SD Card/eMMC
Symlink | File |
---|---|
imx-boot-tqma8xqp-mba8xx-sd.bin | imx-boot-tqma8xqp-mba8xx-sd.bin-flash |
Linux Kernel Binary
Symlink | File |
---|---|
Image Image-tqma8xqp-mba8xx.bin | Image–4.14.98-r0-tqma8xqp-mba8xx-<build_timestamp>.bin |
Devicetree Binarys
Symlink | Description |
---|---|
Image-fsl-imx8dx-tqma8xqp-mba8xx.dtb fsl-imx8dx-tqma8xqp-mba8xx.dtb | device tree blob for TQMa8XQP |
Image-fsl-imx8dx-tqma8xqp-mba8xx-lvds-etml1010g0dka.dtb fsl-imx8dx-tqma8xqp-mba8xx-lvds-etml1010g0dka.dtb | device tree blob for LVDS Display |
Image-fsl-imx8dx-tqma8xqp-mba8xx-lvds-tm070jvhg33.dtb fsl-imx8dx-tqma8xqp-mba8xx-lvds-tm070jvhg33.dtb | device tree blob for TIANMA LVDS Display |
Image-fsl-imx8dx-tqma8xqp-mba8xx-no-pcie.dtb fsl-imx8dx-tqma8xqp-mba8xx-no-pcie.dtb | Devicetree for older Carrier Revision to disable PCIe |
Image-fsl-imx8dx-tqma8xqp-mba8xx-pcie-gen1.dtb fsl-imx8dx-tqma8xqp-mba8xx-pcie-gen1.dtb | Devicetree for older Carrier Revision to enable PCIe Gen1 |
RootFS Images
Symlink | File |
---|---|
tq-image-qt5-tqma8xqp-mba8xx.ext4 | tq-image-qt5-tqma8xqp-mba8xx-<build_timestamp>.rootfs.ext4 |
tq-image-qt5-tqma8xqp-mba8xx.tar.gz | tq-image-qt5-tqma8xqp-mba8xx-<build_timestamp>.rootfs.tar.gz |
Known Issues
Display port interface is not working
Details | |
---|---|
Effect | Display Port interface is not working on MBa8Xx |
Issue | SN65DSI86 DSI to embedded DisplayPort (eDP) bridge is not supported in BSP |
Affected Revisions | |
BSP | all revisions |
Module | all revisions |
Mainboard | all revisions (Please note: SN65DSI86 is no longer assembled on MBa8Xx ≥ Rev.0203) |
Solution | |
Fix | no plan to fix (due to missing driver support) |
Workaround | n/a (for custom designs use another DSI to DP bridge, e.g. TC9595) |
Linux kernel does not start with sumo.TQMa8.BSP.SW.0005 on MBa8Xx ≤ Rev.0101
Details | |
---|---|
Effect | Linux kernel does not start (no more messages after Starting kernel… ) |
Issue | PCIe requires external clock generator |
Affected Revisions | |
Bsp | sumo.TQMa8Xx.BSP.SW.0002 sumo.TQMa8.BSP.SW.0005 |
Module | all revisions |
Mainboard | MBa8Xx ≤ Rev.0101 |
Solution | |
Fix | Upgrade to MBa8Xx Rev.0102 (please contact TQ Support for further information) |
Workaround | Use devicetree with disabled PCIe interface (will be included in next BSP release) |
PCIe device detection
Details | |
---|---|
Effect | Some PCIe devices (e.g. PCIe switches) may not be properly detected |
Issue | PCIe signals clock, enable and reset do not comply to the PCIe specification |
Affected Revisions | |
Bsp | ≤ sumo.TQMa8.BSP.SW.0005 |
Module | all revisions |
Mainboard | MBa8Xx ≥ Rev.0102 |
Solution | |
Fix | TBD |
Workaround | Limit PCIe speed to Gen1 by using proper devicetree *-pcie-gen1.dtb (provided with BSP release sumo.TQMa8.BSP.SW.0006) |
No QSPI NOR Flash support in U-Boot
Details | |
---|---|
Effect | Executing sf probe in U-Boot causes the first byte of the QSPI NOR Flash to be overwritten |
Issue | QSPI NOR Flash is not suppported in U-Boot |
Affected Revisions | |
Bsp | sumo.TQMa8.BSP.SW.0005 |
Module | all revisions |
Mainboard | all revisions |
Solution | |
Fix | TBD |
Workaround | N/A |
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 U-Boot... && mmc dev 1 && mmc read $loadaddr 40 1FC0 && mmc dev 0 && mmc write $loadaddr 40 1FC0 && 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 environment variable rootblks16 and set the value accordingly to the size of the RootFS in this case 2070MB.
To calculate the value of rootblks16 devide the size of the image in byte by 512 and convert the result into a hex value.
2070 * 1024 * 1024 = 2170552320
2170552320 / 512 = 4239360
4239360 = 40B000HEX
setenv rootblks16 0x40B000
uboot command to start netboot
=> run netboot