Embedded module TQMa8MxML - YOCTO Linux BSP documentation




BSP Version Matrix

BSP Revision ci-meta-tq release Yocto Project / Poky Release Target machine1) U-Boot Linux Kernel
0080 hardknott 3.3.3 Hardknott tqma8mxml-1gb-mba8mx
tqma8mxml-2gb-mba8mx
v2020.04_imx_5.4.47_2.2.0 fslc-5.10-2.1.x-imx
0057 zeus-tqma8 3.0.3 Zeus tqma8mxml-1gb-mba8mx
tqma8mxml-2gb-mba8mx
v2020.04_imx_5.4.47_2.2.0 rel_imx_5.4.70_2.3.0
0056 zeus-tqma8 3.0.3 Zeus tqma8mxml-2gb-mba8mx v2020.04_imx_5.4.47_2.2.0 rel_imx_5.4.70_2.3.0
0052 zeus-tqma8 3.0.3 Zeus tqma8mxml-2gb-mba8mx v2020.04_imx_5.4.47_2.2.0 rel_imx_5.4.70_2.3.0
0035 zeus-tqma8 3.0.3 Zeus tqma8mxml-2gb-mba8mx v2019.04-lf-5.4.y-1.0.0 lf-5.4.y-1.0.0
0034 zeus-tqma8 3.0.3 Zeus tqma8mxml-2gb-mba8mx v2019.04-lf-5.4.y-1.0.0 lf-5.4.y-1.0.0
0030 zeus-tqma8 3.0.3 Zeus tqma8mxml-1gb-mba8mx v2019.04-lf-5.4.y-1.0.0 lf-5.4.y-1.0.0
0027 zeus-tqma8 3.0.3 - Zeus tqma8mxml-1gb-mba8mx v2019.04-lf-5.4.y-1.0.0 lf-5.4.y-1.0.0
0026 zeus-tqma8 3.0.3 - Zeus tqma8mxml-512m-mba8mx v2019.04-lf-5.4.y-1.0.0 lf-5.4.y-1.0.0


U-Boot

Supported features
Feature BSP Revision Remarks
TQ Product Chip Interface Function 0026 0027 0030 0034 0035 0052 0054 0056 0057 0080
TQMa8MxML i.MX8M Mini ENET0 GbE
i.MX8M Mini Fuse OTP
i.MX8M Mini GPIO
i.MX8M Mini I²C1 Bus Access
i.MX8M Mini I²C2 Bus Access
i.MX8M Mini I²C3 Bus Access
i.MX8M Mini UART Debug console Default console
i.MX8M Mini USB Host
i.MX8M Mini uSDHC eMMC / SD-Card SD card / eMMC

Supported boot devices

Boot device supported
eMMC
SD Card

Operating System

Supported features
Feature BSP Revision Remarks
TQ Product Chip Interface Function 0026 0027 0030 0034 0035 0052 0056 0057 0080
TQMa8MxML i.MX8M Mini ENET0 GbE
i.MX8M Mini FlexSPI QSPI
i.MX8M Mini GPIO
i.MX8M Mini GPU Hardware Accelaration
i.MX8M Mini I²C1 Bus Access See onboard I2C devices
i.MX8M Mini I²C2 Bus Access See onboard I2C devices
i.MX8M Mini I²C3 Bus Access See onboard I2C devices
i.MX8M Mini LPUART1 Debug Console
i.MX8M Mini MIPI DSI SN65DSI84 DSI-to-LVDS Bridge
i.MX8M Mini PCIe PCIe Gen2
i.MX8M Mini PWM
i.MX8M Mini SAI3 TLV320AIC3204
(Audio Codec)
i.MX8M Mini USB1 TUSB8041I
(USB Hub)
i.MX8M Mini USB2 Host
i.MX8M Mini OTG
MBa8Mx TLV320AIC3204 Audio Codec Headphone Out / Line Out
Line In
Microphone In
TUSB8041I USB1 Host 1
TUSB8041I USB2 Host 2
TUSB8041I USB3 Host 3
TUSB8041I USB4 Host 4
SN65DSI84 DSI-to_LVDS Bridge LVDS

TQMa8MxML Rev.01xx / MBa8Mx Rev.03xx

I2C bus TQMa8MxML
I2C1 0x1B
Temp Sensor
0x25
PMIC
0x33
Temp Sensor
EEPROM
Protection Command
0x48
Plug & Trust Secure element
(optional)
0x51
RTC
(optional)
0x53
Temp Sensor EEPROM
0x57
EEPROM
I2C bus MBa8Mx
I2C1 0x11
System Controller
0x24
Port Expander
0x27
Port Expander
I2C2 0x18
Audio Codec
0x37
Temp Sensor
EEPROM
Protection Command
0x44
USB Hub
0x57
Temp Sensor
EEPROM
0x68
PCIe Clock Generator
0x1F
Temp Sensor
I2C3 0x5A
MIPI-DSI / LVDS Bridge
also available at
Mini PCIe (X28), Mikro Bus (X20 / X21), PCIe (X36), MIPI-CSI (31)


BSP Version History

Rev.0080

BSP

  • Rework systemd-machine-units bbappend (add simplification from branch zeus-tqma8, adapt to newer systemd version with CAN FD support)
  • Update sub modules to support hardknott
  • Port TQMa8 boards from branch zeus-tqma8 (equal to release zeus.TQMa8.BSP.SW.0056 of mentioned branch)
  • Weak assignments in machine files wherever possible to allow overwriting for custom mainboards or project specific tailoring

U-Boot

Linux

  • Linux 5.10 support based on linux-fslc 5.10 + imx
    • experimental usb support for ath10k
    • adjusted kernel config settings

Rev.0057

BSP

  • Add machine config for TQMa8MxML with 1GiB RAM on MBa8Mx

U-Boot

  • Add support for SOM variant with 1GiB RAM

Rev.0056

BSP

  • Enable building multiple u-boot configs

U-Boot

  • Support multiple u-boot configs. Build all bootstream variants for all enabled u-boot configs

Rev.0052

BSP

  • Sanitize variable assignments to improve reusability in config/machines:
    • 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 ?=
  • Remove remaining docs for incompatible MBa8Mx REV.020x
  • Drop support for U-Boot v2019.04, since no user left
  • Remove local recipe firmware-imx
  • Support for NXP BSP rel_imx_5.4.70_2.3.1
    • u-boot: migrate all imx8 machines with U-Boot v2020.04 support to NXP BSP version
    • linux: migrate all machines to NXP BSP version
    • imx-atf: add fork based on NXP BSP version
    • Optimize codec preconfig in alsa-state. PCM input and LineOut amp factors were configured suboptimal.
  • Update to new CortexM demo package in machine config
  • rewrite recipe for CortexM demos:
    • Based on NXP SDK v2.9.0
    • Rename and sanitize recipe
    • Use versioned archive name
  • Disable packages only relevant for NXP STK in machine config:
    • nxp8987 WiFi
    • imx-m[4,7]-demos

U-Boot

  • Fix RAM Timing
  • Fix phy_config using devicetree
  • Forward error from phy_config
  • Prevent nasty voltage switch error warning for e-MMC
  • Use mmc rescan in env scripts to prevent errors when exchanging SD Card
  • I2C recovery gpio
  • Support SD UHS modes and optimized pad config
  • Backport lmb fixes from upstream, needed for newer DTB with lots of reserved mem regions
  • Fix flow for EVCR access
  • Optimize RAM-config
  • Use verified pad config
  • Optimize PMIC config in SPL
    • Lower voltage for LDO2 / V_SNVS_0V8
    • Improved configs for BUCK1/3 (recommendations from hardware development guide and app note for using same board for i.MX8MN / i.MX8MM)
    • DSR support for Micron SPI NOR

Linux

  • Fix DT for mPCIe USB cards
  • Port fixes for Codec on STK to prevent race condition that could cause driver load failure
  • Enable wifi support in kernelconfig
  • I2C recovery gpio
  • Support SD UHS modes and optimized pad config
  • Fix SAI interface sychronous play / record
  • Use verified pad config
  • Label sys EEPROM as read only
  • Backport upstream PMIC driver for PCA9450
    • adjust device tree
    • Limit voltage rails
  • DSR support for Micron SPI NOR

Rev.0035

U-Boot

  • Fixes for REV.0200

Rev.0034

U-Boot

  • Add support HW REV.0200
  • Removed support for HW REV.0100
  • e-MMC is now on USDHC3
  • Some GPIO signals changed
  • remove muxing and usage of USER_LED_3 signal as already done in kernel dtb

Linux

  • Add support HW REV.0200
  • Removed support for HW REV.0100
  • e-MMC is now on USDHC3
  • Some GPIO signals changed
  • Add recovery GPIO for I2C1

Rev.0030

BSP

  • Integrate CortexM examples for TQMa8Mx[M,N]L
  • Include RPMSG examle device tree
  • Build FlexSPI bootstream by default

U-Boot

  • Add flexspi boot support
  • Add env support for bootstream update on flexspi
  • Add env support for CortexM core boot and update
  • Fix compatible and model names in devicetree
  • fix spelling errors in multiple places

Linux

  • Add devicetree for RPMSG support
  • Fix compatible and model names in devicetree
  • remove USER_LED_3
  • switch to gpio CS for SPI

Rev.0027

BSP

  • machines: rename some machines to unify naming and reflect real mem size

U-Boot

  • Rename defconfigs to unify naming
  • Optimized pad settings for SD-Cardadd
  • Support for RTC load capacity configuration
  • QSPI Support
  • USB host support (Hub on MBa8Mx)
  • simplify USB OTG (use ID from USB)
  • Fix RAM Timing for 1GiB
  • Fix Kconfig for default device tree
  • Fix not working USB download in SPL
  • USB power domain handling

Linux

  • Optimized CMA size for 1 GiB RAM
  • Optimized pad settings for SD-Card
  • Simplify USB OTG (use ID from USB)
  • Added audio support
  • USB host support
  • Enable QSPI flash
  • Enable SD104 for SD-Card
  • Remove pull config from pad settings

Rev.0026

  • Initial support for TQMa8MxML



1)
i.e. value for MACHINE variable