TQMa91xxCA - YOCTO Linux BSP documentation
Overview
The TQMa91xxCA provides a powerful embedded module platform based on NXP’s i.MX 9 CPU series. 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.
Documentation and Downloads
Documentation and Downloads
All TQ Systems products come with comprehensive documentation to help you get started and integrate our hardware into your designs.
Publicly Available User Manuals & Datasheets
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.
Customer Info Archive (Starter Kit Customers)
The archive includes:
- Mainboard schematic & placement diagram
- Module CAD files (native format)
- Module mechanical dimensions (2D/3D drawings)
- Pinmuxing configuration (recommended device tree fragments)
- Pinout reference (signal assignments, voltage domains)
- Design checklist (layout guidelines, EMI/ESD considerations)
- Processing instructions (LGA Modules)
BSP Tagging and Revisioning
BSP Git Tagging and Revisioning
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.
Get Notified
In order to be automatically notified of new BSP releases by e-mail, you must activate notifications in the corresponding Github repository.
1. Go to the desired repository in Github (e.g. meta-tq)
2. Click on the notification button

3. Log in or create a Github account if you have not already done so.
4. Select “All activity” so that you will be notified of every new release.

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
Current BSP Information
U-boot
U-Boot
Feature | MBa91xxCA REV.010x |
---|---|
RAM configs | 1 GiB |
CPU variants | i.MX91 |
Fuses / OCRAM | x |
speed grade / temperature grade detection | x |
UART (console on UART1) | x |
GPIO | |
LED | x |
Button | x |
I2C | |
system EEPROM parsing | x |
PMIC | x |
eMMC / SD | |
Read | x |
Write | x |
Ethernet | |
GigE / FEC via Phy on MBa91xxCA | x |
GigE / EQOS via Phy on MBa91xxCA | x |
Bootdevices | |
SD-Card on USDHC2 | x |
eMMC on USDHC1 | x |
QSPI-NOR on FlexSPI | x |
Serial Downloader | x |
USB | |
USB 2.0 Host / Hub | x |
USB DRD (USB 2.0 Cable Detect, VBUS) | x |
(configured as device to be usable with UUU ) | |
QSPI NOR | |
Read with 1-1-4 SDR | x |
PP / Erase with 1-1-4 SDR | x |
Linux
Linux
Support matrix for MBa91xxCA
REV.010x
Feature | linux-imx-tq_6.6 |
---|---|
RAM configs | 1 GiB |
CPU variants | i.MX91 |
Fuses / OCRAM | x |
speed grade / temperature grade detection | |
UART | |
console on UART1 (via USB / UART converter) | x |
UART2 | x |
GPIO | |
LED | x |
Button | x |
I2C | |
EEPROMs | x |
PMIC | x |
RTC | x |
Temperature Sensors | x |
IMU / Gyroscope | x |
Port expander | x |
ENET | |
GigE / FEC via Phy on MBa91xxCA | x |
GigE / EQOS via Phy on MBa91xxCA | x |
USB | |
USB 2.0 Host / Hub | x |
USB DRD (USB 2.0 Cable Detect, VBUS) | x |
QSPI NOR | |
Read with 1-1-4 SDR | |
Read with 1-4-4 SDR | |
PP / Erase with 1-1-4 SDR | |
PP / Erase with 1-4-4 SDR | |
Display | |
LVDS via Bridge | x |
DPI / RGB | x |
CAN-FD | |
CAN-FD | x |
SPI | |
spidev at all CS | x |
internal ADC | |
ADC | x |
I2C Devices
Onboard I2C Devices
I2C Bus - TQMa91xxCA | ||||||
---|---|---|---|---|---|---|
I2C1 | 0x1B Tempsensor in EEPROM | 0x25 PMIC | 0x48 Plug & Trust Secure Element (optional) | 0x51 RTC | 0x53 EEPROM | 0x6A Gyroscope |
I2C Bus - MBa91xxCA | |||||||
---|---|---|---|---|---|---|---|
I2C3 | 0x0F DisplayPort bridge | 0x18 Audio Codec | 0x1C Tempsensor | 0x34 EEPROM SW Protect | 0x44 USB Hub | 0x54 Tempsensor EEPROM | 0x6A PCIe Clock generator |
Changelog
Changelog BSPs
Changelog PRE-RELEASE
Added
-
TQMLX2160A: Add Secure Boot support
See the TQMLX2160A README for more information. The current implementation only secures the boot process up to the bootloader. The kernel and userspace are not verified.
-
TQMa6ULx[L] / TQMa6ULLx[L]:
- u-boot-tq-2023.04: enable some more features like gpio button, LED, CLI regulator and PMIC support.
-
tq-extlinux: The
console
option in the kernel cmdline is now populated based onSERIAL_CONSOLES
instead of relying on theconsole
andbaudrate
variables in the U-Boot environment -
TQMLS1028A:
- u-boot-lsdk-tq-2019.10:
- update module EEPROM handling, use DM for I2C and I2C EEPROM
- use GPIO HOG for inputs
- update default devicetree name (matching updated kernel version)
- u-boot-lsdk-tq-2019.10:
-
u-boot-imx-tq-2024.04:
- TQMa91 / TQMa93: enable watchdog support. The watchdog is used as sysreset provider. It can be enabled from console before booting kernel.
-
linux-tq-6.12:
- use generic sound card name for MBa8Mx (TQMa8Mx, TQMa8MxNL, TQMa8MxNL), MBa8MPxL (TQMa8MPxL), MBa6ULxL (TQMa6ULx, TQMa6ULLx), MBa7x (TQMa7x)
- include stable fixes up to v6.12.30
-
linux-tq-6.6:
- use generic sound card name for MBa8Mx (TQMa8Mx, TQMa8MxNL, TQMa8MxNL), MBa8MPxL (TQMa8MPxL), MBa6ULxL (TQMa6ULx, TQMa6ULLx), MBa7x (TQMa7x)
- include stable fixes up to v6.6.92
-
linux-imx-tq-6.6:
- use generic sound card name for MBa8Mx (TQMa8Mx, TQMa8MxNL, TQMa8MxNL), MBa8MPxL (TQMa8MPxL), MBa6ULxL (TQMa6ULx, TQMa6ULLx), MBa7x (TQMa7x)
- update with fixes from FSLC 6.6-2.2.x-imx branch including stable fixes up to v6.6.91
-
machines: use
wic.zst
instead of uncompressedwic
for defaultIMAGE_FSTYPES
for all machines.bmaptool
supports also packed images, so we can lower the IO pressure for copying artifacts while keeping usability.The
TQ_IMAGE_COMPRESSION
variable (defined inmeta-tq/conf/machine/include/tq-image.inc
) can be adjusted inlocal.conf
or a custom distro to use a different compression algorithm; setting it to an empty value will leave the files uncompressed. -
u-boot-tq-2017.11:
- TQMLS102xA: use external generated RCW images from
rcw
recipe instead of in tree RCW.
- TQMLS102xA: use external generated RCW images from
-
u-boot-lsdk-tq-2022.04:
- TQMLS10xxA: adjust for node names in v6.12 Linux kernel
-
rcw:
- TQMLS102xA: improve RCW generation
- incorporate changes from NXP upstream since lf-5.15.32-2.0.0 up to tag lf-6.6.52-2.2.0 / lf-6.12.3-1.0.0
-
TQMLS102xA
- Machine uses the common ALSA configuration (alsa-state)
- Machine uses the common WKS file for ARMv7-A modules
- Uses 'mainline' BSP as defined in meta-freescale
-
TQMLS1028A:
- Use mainline BSP graphic software stack
-
TQMLX2160A:
- u-boot-lsdk-tq-2019.04: Update XFI & retimer configuration
-
TQMLS1012AL: Fix build with Secure Boot support
Secure Boot on the TQMLS1012AL is build-tested only.
-
qoriq-atf: Fix hash calculation on all Layerscape platforms
Fixes validation failure when Secure Boot is enabled.
-
linux-ti-tq-6.1
linux-ti-tq-6.1 has been obsolete since scarthgap.TQ.ARM.BSP.0001 in favor of linux-ti-tq-6.6. With the addition of linux-ti-tq-6.12 as the new default kernel for TQMa62xx[L]/TQMa64xxL/TQMa67xx[L], the linux-ti-tq-6.1 recipe is removed.
-
u-boot-ti-tq-2023.04: remove recipe
Only u-boot-tq-2025.07 is supported for the TQMa62xx[L], TQMa64xxL and TQMa67xx[L] in future BSP releases.
-
linux-tq-5.4
- TQMLS102xA is now supported by linux-tq-6.12
-
linux-rt-tq-5.4
- Currently there is no replacement for RT-enabled kernel on TQMLS102xA
- Support for newer kernels can be added on request
-
linux-imx-tq-5.15
- Both TQMLS1012AL and TQMLS10128A are now supported by linux-imx-tq-6.6
-
MBaX4XxL
-
The legacy Image kernel image has been removed from the root filesystem
We boot the fitImage by default since kirkstone.TQMa64xxL.BSP.SW.0007. U-Boot versions older than that release need to be updated, or a custom BSP image including Image in KERNEL_IMAGETYPES needs to be built.
-