The TQMLX2160A which is located on the MBLX2160A provides a powerful embedded module platform based on NXP's Layerscape architecture. 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.
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 | 16, 32 GiB |
| CPU variants | LX2160A, LX2080A |
| GPIO | x |
| I2C | x |
| UART | |
| console on UART1 (X21) | x |
| QSPI-NOR | |
| Read | x |
| Write | x |
| Boot | x |
| eMMC / SD card | |
| Read | x |
| Write | x |
| Boot | x |
| USB | |
| USB 3.0 Hub (X20) | x |
| SATA | |
| SATA connector (X18) | * |
| M.2 (X42, X43) | * |
| PCIe | |
| PCIe x4/x8 (X35, X36, X37) | * |
| mPCIe (X16, X17) | * |
| Ethernet | |
| SGMII / RGMII 1G | * |
| XFI 10G | * |
| CAUI4 100G | * |
| Bootstreams | |
| FlexSPI | x |
| SD / eMMC | x |
*: In some SerDes configurations; see the User Manual and Support Wiki for details
| Feature | 6.12 |
|---|---|
| RAM configs | 16, 32 GiB |
| CPU variants | LX2160A, LX2080A |
| UART | |
| console on UART1 (X21) | x |
| additional UARTs 2-4 on pin header (X27) | x |
| GPIO | |
| LED | x |
| Button | x |
| I2C | |
| Temperature Sensors | x |
| RTC | x |
| EEPROMS | x |
| QSPI-NOR | |
| Read | x |
| Write | x |
| eMMC / SD card | |
| Read | x |
| Write | x |
| USB | |
| USB 3.0 Hub (X20) | x |
| USB 3.0 OTG (X38) | x |
| SATA | |
| SATA connector (X18) | * |
| M.2 (X42, X43) | * |
| PCIe | |
| PCIe x4/x8 (X35, X36, X37) | * |
| mPCIe (X16, X17) | * |
| Ethernet | |
| SGMII / RGMII 1G | * |
| XFI 10G | * |
| CAUI4 100G | * |
| DPAA2 | x |
| CAN | |
| CAN-FD (X33, X34) | x |
*: In some SerDes configurations; see the User Manual and Support Wiki for details
| I2C bus | TQMLX2160A | |||||
|---|---|---|---|---|---|---|
| I2C1 | 0x11 System Controller | 0x1F Temperature Sensor | 0x48 SEC | 0x50 Customer EEPROM | 0x51 RTC | 0x57 TQ Manufacturing EEPROM |
| SYSC_I2C | 0x40 CPLD | 0x4B Temp. Sensor | 0x4c Temp. Sensor | 0x50 EEPROM | 0x60 Voltage Monitoring | 0x68 Clock Generator |
| I2C bus | MBLX2160A | ||||||
|---|---|---|---|---|---|---|---|
| I2C1 | 0x04 PMC Controller | 0x20 GPIO Expander | 0x68 Clock Generator | 0x6A Clock Generator | |||
| I2C5 | 0x20 GPIO Expander | 0x21 GPIO Expander | 0x22 GPIO Expander | 0x44 USB Hub | 0x70 I2C Multiplexer | Connected to X35 and X37 PCIe1 | Connected to X36 PCIe2 |
| I2C6 | 0x19 XFI1 Retimer Connected to X8 QSFP | 0x1B XFI2 Retimer Connected X9 QSFP | 0x20 CAUI4 Retimer 1 | 0x21 CAUI4 Retimer 2 | 0x70 I2C Multiplexer | Connected to X16 and X17 mPCIe | Connected to X29 QSFP28 |
| PMC_I2C | 0x40 Current Sense | 0x41 Current Sense | 0x44 Current Sense | 0x45 Current Sense | 0x50 EEPROM | ||
Added
linux-rt-tq-6.12: TQMLS10xxA / TQMLX2160A:
Mark recipe as compatible for these machines
TQMa8MPxS: add board support for SoM on MB-SMARC-2
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.
imx-atf-tq: TQMa8 / TQMa9:
Include NXP fixes up to tag lf-6.6.52-2.2.1 and adjustments for Layerscape.
linux-rt-tq-6.6: TQMa6 / TQMa6UL[L]x[L] / TQMa7 / TQMa8Mx / TQMa8MxML / TQMa8MxNL:
Include stable fixes up to v6.6.101 and stable-rt fixes up to v6.6.101-rt59
linux-tq-6.6: TQMa6 / TQMa6UL[L]x[L] / TQMa7 / TQMa8Mx / TQMa8MxML / TQMa8MxNL:
Include stable fixes up to v6.6.102
linux-imx-tq-6.6: TQMa8 / TQMa9:
Include NXP fixes up to tag lf-6.6.52-2.2.1 and stable fixes up to 6.6.101 from linux-fslc
linux-[rt-]tq-6.12: TQMa335x / TQMa93 / TQMa8MP / TQMLS10xx / TQMLX2160:
machines: use require for machine config includes
alsa-state: enable IN3_L / Left Mixer input path (prepare MicIn support) for i.MX base SoM
layer.conf: add LAYERRECOMMENDS
doc:
TQMa62xx[L]/TQMa64xxL/TQMa67xx[L]: Fix MAC address assignments
On each of these modules, two addresses more than intended (and reserved
for the module) were assigned to ethXaddr variables in U-Boot.
This issue is a regression in the new U-Boot version added in scarthgap.TQ.ARM.BSP.0005.
TQMLS102xA: Enable missing Linux drivers
TQMLS10xxA: Fix UBIFS rootfs partition selection
linux-tq-6.12: TQMLX2106A: Fix creation of multiple DPAA2 DPSW objects
u-boot-tq-2023.04: TQMa6x:
Add errata workarounds for KSZ9031 ethernet phy to improve reliability of establishing a link.
u-boot-tq-2017.11: TQMLS102xA:
Upstream device tree node naming for ESDHC controller was changes. Fix board specific DSR code to be compatibel with old and new naming.
u-boot-imx-tq-2024.04:
FEC driver MDIO bus handling for enabled DM_MDIO and DM_ETH_PHY has several flaws that were hidden behind ifdefs. The code has fixes for the relevant code paths.
u-boot-tq-2023.04: TQMa7x:
No MDIO bus was found after fixing several bugs in fec-mxc driver. Bug was caused by forcing unique MDIO bus names via device tree. Naming should be handled by FEC driver that creates the bus depending on Kconfig settings.
u-boot-lsdk-tq-2019.04: TQMLS1028A: Fix PCIe initialisation flow
Backport some fixes to the initalisation flow, limit to Gen2 and add wait for link polling. Both the limitation and the polling loop improve compatibility to more cards, since bootloader support is crucial for working PCIe under Linux.
tq-bootconf: add reproducible default for 'FIT_CONF_PREFIX'
When adding support to machines a reproducible default is needed to keep boot configurations and fitImages in sync.
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.