The TQMa8x provides a robust embedded module platform powered by NXP's i.MX 8 processor family. The BSP is based on the Yocto Project using TQ’s meta-tq hardware support layer, with build host setup instructions and BSP sources provided via GitHub.
Please see the meta-tq repository on GitHub for further instructions. A list of supported Yocto images and example configurations is available in the BSP repository GitHub.
TQ Systems provides comprehensive documentation on its embedded mini-module products to facilitate the evaluation and design phase with our products.
The following documents can be downloaded directly from our Website (no login required) for the desired product:
User Manual (Baseboard)
Detailed hardware descriptions, installation steps, jumper settings, connector layouts and troubleshooting tips.
User Manual (Module)
Electrical specifications, interface overviews, software setup guides and reference tables.
Datasheets
Absolute maximum ratings, timing diagrams and ordering information.
The archive includes:
TQ manages all Board Support Package (BSP) releases in the meta-tq GitHub repository using annotated Git tags. This ensures each release is traceable to an exact source snapshot and clearly documents which Yocto branch, platform (module) and software revision it covers.
Tag Format:
<YoctoBranch>.<ModuleIdentifier>.TQ.ARM.BSP.<RevisionNumber>
| Component | Description |
|---|---|
| YoctoBranch | Name of the Yocto Project release (e.g. kirkstone, scarthgap) |
| ModuleIdentifier | Target module name when present; omitted entirely for “scarthgap” tags |
| TQ.ARM.BSP | Literal marker for “Board Support Package – Software” |
| RevisionNumber | Four-digit, zero-padded incrementing counter (e.g. 0001, 0002, …) |
Examples:
kirkstone.TQMa64xxL.BSP.SW.0008
scarthgap.BSP.SW.0001 – here no module identifier is used
Supported Platforms Reference:
To see exactly which platforms (machines/boards) each BSP tag covers, open the meta-tq folder in that tag and view its README.md:
/tq-systems/meta-tq/tree/<git-tag>/meta-tq
Click on README.md there to find the full list of Yocto machine names, board variants, RAM options and support status.
in the top right corner.
Software Versions:
For the exact versions of U-Boot, Linux kernel and other components used in a BSP tag, view doc/README.SoftwareVersions.md in that tag.
tq-systems/meta-tq/blob/<git-tag>/meta-tq/doc/README.SoftwareVersions.md
| Feature | |
|---|---|
| RAM configs | 4,8 GiB |
| CPU variants | i.MX8QM B0 |
| Fuses | x |
| GPIO | x |
| I2C | x |
| QSPI | |
| Read | x |
| Write | x |
| Boot | x |
| eMMC / SD card | |
| Read | x |
| Write | x |
| Boot | x |
| USB | |
| USB 2.0 Dual Role | x |
| USB 3.0 (Hub on MBa8x) | x |
| ENET (GigE via Phy on MBa8x) | |
| ENET 0 | x |
| ENET 1 | x |
| Bootstreams | |
| FlexSPI | x |
| SD / eMMC | x |
| uuu | x |
TODO or not tested / supported
| Feature | fslc-6.6 |
|---|---|
| RAM configs | 4,8 GiB |
| CPU variants | i.MX8QM B0 |
| Fuses / OCRAM | x |
| speed grade | x |
| UART | |
| console on LPUART0 (X24) | x |
| additional UARTS on pin heads | x |
| GPIO | |
| LED | x |
| Button | x |
| wakeup from GPIO button | x |
| GPIO on pin heads | x |
| I2C | |
| Temperature Sensors (without cpu-temp) | x |
| RTC | x |
| EEPROMS | x |
| ENET (GigE via Phy on MBa8x) | |
| ENET 0 | x |
| ENET 1 | x |
| USB | |
| USB 2.0 Dual Role | x |
| USB 3.0 (Hub on MBa8x) | x |
| QSPI NOR | |
| Read with 1-1-4 SDR | |
| Read with 1-4-4 SDR | x |
| PP / Erase with 1-1-1 SDR | |
| PP / Erase with 1-4-4 SDR | x |
| Graphic | |
| GPU | x |
| VPU | x |
| Display | |
| LVDS0/LVDS1 | x |
| Dual-Channel LVDS | x |
| Display Port | x |
| Audio | |
| Line IN / Line Out (X16, X17) | x |
| Display Port | x |
| PCIe | |
| mini-PCIe on MBa8x (SX-PCEAC2-HMC-SP) | x |
| M.2 PCIe with WiFi Card (SX-PCEAC2-M2-SP) | x |
| SATA | |
| M.2 SATA | x |
| CAN | |
| CAN | x |
| SPI | |
| SPI user space device on all CS | x |
| Mikrobus (Module RTC5) | |
| ADC | |
| ADC | x |
| PWM | |
| PWM in LVDS IP | x |
| PWM in LSIO subsystem | x |
| CPU/PMIC thermal sensors | |
| via thermal zone | x |
| Cortex M4 | |
| examples running from TCM | x |
| use UART as debug console | x |
TODO or not tested with new BSP
| I2C bus | TQMa8x | ||||
|---|---|---|---|---|---|
| I2C1 | 0x1B Tempsensor | 0x33 EEPROM Protection Command | 0x51 RTC (Optional) | 0x53 EEPROM | 0x57 EEPROM |
| PMIC_I2C | 0x08 PMIC#1 | 0x09 PMIC#2 | |||
| I2C bus | MBa8x | ||||
|---|---|---|---|---|---|
| I2C1 | 0x18 Audio Codec | 0x34 EEPROM Protection Command | 0x1C Tempsensor | 0x54 EEPROM | 0x68 PCIe Clock generator |
u-boot-imx-tq-2024.04:
rcw: update TQMLS1028A PCIe configuration
linux-ti-tq-6.12: update to latest ti-linux-6.12.y
linux-rt-tq-6.12: update to v6.12.74-rt16
imx-system-manager-tq: update to NXP version lf-6.18.2_1.0.0
This integrates all fixes and features from NXP release and port supported boards from TQ-Systems. Switch to use new branch TQM-lf-6.18.2
imx-oei-tq: update to NXP version lf-6.18.2_1.0.0
This integrates all fixes and features from NXP release and port supported boards from TQ-Systems. Switch to use new branch TQM-lf-6.18.2
linux-imx-tq-6.12:
linux-imx-tq-6.6:
This includes fixes from linux-stable up to tag v6.6.129
imx-system-manager-tq: update to NXP version lf-6.12.49_2.2.0
imx-oei-tq: update to NXP version lf-6.12.49_2.2.0
linux-ti-tq-6.12: enable rpmsg_ctrl kernel module
u-boot-imx-tq-2025.04:
Enable U-Boot environment handling from rootfs
Update to NXP downstream version lf-6.12.49_2.2.0
prepare for TQMa94xxLA
TQMa95xxLA/TQMa95xxSA: simplify and implrove board support code
Use board_phys_sdram_size generic implementation under arch/arm/mach-imx
and handle CPU variants with features disabled by fuses
TQMa95xxLA: FlexSPI boot support
imx-boot-tq:
prepare building for i.MX94
i.MX9[4,5]: do not build FlexSPI boot images for Octal SPI with DTR and DQS by default
Not all boards have Octal SPI assembled. Use generic but slower setup by default.
If needed this can be configured per board using modified QSPI_HEADER environment.
update to use upstream version lf-6.12.49-2.2.0
linux-imx-tq-6.12:
linux-tq-6.6:
linux-rt-tq-6.6-rt: update to v6.6.129-rt70
linux-tq-6.12:
linux-tq-6.12:
TQMa8MPxS: correct GPIO for RTC interrupt
TQMa8MPxS: fix ethernet phy IRQ
TQMa8MPxS: correct SD-Card supply
When reinserting the card under Linux card detect was not functional
linux-ti-tq-6.12:
linux-imx-tq-6.12: TQMa95xxLA: fix RTS / CTS pad configuration for LPUART5 / LPUART7.
UART did not work with activated hardware flow control.
imx-system-manager-tq:
TQMa95xxSA: fix DDR ranges.
The ranges shall reflect the assembled RAM size, not the addressable range of the DDR controller
u-boot-imx-tq-2025.04:
TQMa95xxLA: correct FlexSPI pin muxing
Muxing uses wrong pads. Thus FlexSPI could not be used.