The TQMa95xxSA provides a robust embedded module platform powered by NXP's i.MX 95 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 | |
| TQMa95xxSA | 2 / 4 GB |
| CPU variants | A1 / B0 |
| Fuses | x |
| GPIO | x |
| I2C | x |
| QSPI | |
| Read | 1-4-4-4B |
| Write | 1-1-4-4B |
| Erase | 1-1-1-4B |
| Boot | - |
| eMMC / SD card | |
| Read | x |
| Write | x |
| Boot | SD: ok / eMMC: no |
| USB | |
| USB 2.0 Dual Role | disabled (REV.010x SDP) |
| USB 3.0 (Hub on TQMa95xxSA) | Host disabled, USB 2.0 SDP |
| ENET (GigE via Phy on TQMa95xxSA) | |
| ENET 0 | x |
| ENET 1 | x |
| Bootstreams | |
| FlexSPI | error (hardware issue) |
| SD / eMMC | x |
| UUU | (TBD: use SD card image) |
TODO or not tested / supported
| Feature | fslc-6.12 |
|---|---|
| RAM configs | |
| TQMa95xxSA | 2/4 GiB |
| CPU variants | A1 / B0 |
| Fuses / OCRAM | |
| speed grade | |
| UART | |
| console on LPUART7 (X20) | x |
| LPUART1 on Cortex-M33 (X39) | x |
| GPIO | |
| SMARC GPIO pins | x |
| I2C | |
| Temperature Sensors | x |
| RTC | x |
| EEPROMS | x |
| ENET (GigE via Phy on TQMa93xxSA) | |
| ENET 0 | x |
| ENET 1 | x |
| USB | |
| USB 2.0 Dual Role (X3/X4) | |
| USB 3.0 (Hub on TQMa93xxSA) (X7/X8) | x |
| QSPI NOR | |
| Read with 1-4-4 SDR | x |
| PP / Erase with 1-1-4 SDR | x |
| Graphic | |
| GPU | x |
| VPU | x |
| Display | |
| LVDS | x |
| Audio | |
| Line IN / Line Out (X17, X18) | x |
| PCIe | |
| mini-PCIe on MB-SMARC-2 (X44) | x |
| PCIe x1 on MB-SMARC-2 (X22) | x |
| CAN-FD | |
| CAN-FD | x |
| SPI | |
| SPI user space device on all CS (X24) | x |
| PWM | |
| PWM in TPM3 | x |
| CPU/PMIC thermal sensors | |
| via thermal zone | x |
| Cortex M7 | |
| examples running from TCM | |
| use UART as debug console |
| I2C Bus - TQMa95xxSA (PRELIMINARY!) | ||||||
|---|---|---|---|---|---|---|
| I2C1 | 0x48 Plug & Trust Secure Element (optional) | 0x4A Tempsensor | 0x51 RTC (optional) | 0x54 EEPROM (optional) | 0x5C EEPROM (optional) | 0x6B Gyroscope |
| I2C Bus - MB-SMARC-2 | ||||||
|---|---|---|---|---|---|---|
| I2C1 | 0x30 Audio-Codec | 0x50 EEPROM | 0x58 EEPROM | 0x6A PCIE | 0x74 Port-Expander | 0x74 Port-Expander |
Added
u-boot-2026.01: add TQMa62xx and TQMa64xxL 1GiB Nanya RAM variants
Alternative RAM vendor needs a different configuration. RAM type detection and initialisation is handled in boot firmware
imx-atf-tq: add support for v2.12 based on NXP lf_v2.12 branch
qoriq-atf: add support for v2.12 based on NXP lf_v2.12 branch
Add support for TQMLS1012AL, TQMLS10xxA, TQMLS1028A, TQMLX2160A
tqma93xx-mba93xxca/la: fix distroboot flow for rpmsg and lvds configs with linux-imx-tq
Use correct overrides for the BSP flavour to generate the menu entries and use correct overlay name for rpmsg menu item. Otherwise no configurations were generated for NXP BSP flavour and the remoteproc device tree overlay was silently not applied.
u-boot-imx-tq-2024.04: TQMa8MPxL / TQMa8MPxS
Add missing check for started Cortex-M and add clk-imx8mp.mcore_booted=1 to
kernel command line to prevent swithcing off unused clocks. Otherwise a running
firmware on Cortex-M will stop during kernel boot.
linux-tq-6.12:
Copy fail (CVE-2026-31431)Dirty frag (CVE-2026-43284)linux-tq-6.6:
Copy fail (CVE-2026-31431)Dirty frag (CVE-2026-43284)linux-imx-tq-6.6:
Copy fail (CVE-2026-31431)Dirty frag (CVE-2026-43284)