Embedded module TQMa8x - YOCTO Linux BSP documentation
BSP Overview
BSP Version Matrix
TQMa8.BSP Revision | meta-tq release | Yocto Project / Poky Release | U-Boot | Linux Kernel |
---|---|---|---|---|
0092 | kirkstone | 4.0.11 - Kirkstone | v2020.04_imx_5.4.70_2.3.0 | fslc-5.15-2.0.x-imx |
0091 | kirkstone | 4.0.10 - Kirkstone | v2020.04_imx_5.4.70_2.3.0 | fslc-5.15-2.0.x-imx |
0090 | kirkstone | 4.0.9 - Kirkstone | v2020.04_imx_5.4.70_2.3.0 | fslc-5.15-2.0.x-imx |
0089 | kirkstone | 4.0.8 - Kirkstone | v2020.04_imx_5.4.70_2.3.0 | fslc-5.15-2.0.x-imx |
0088 | kirkstone | 4.0.6 - Kirkstone | v2020.04_imx_5.4.70_2.3.0 | fslc-5.15-2.0.x-imx |
0087 | kirkstone | 4.0.5 - Kirkstone | v2020.04_imx_5.4.70_2.3.0 | fslc-5.15-2.0.x-imx |
0086 | hardknott | 3.3.6 - Hardknott | v2020.04_imx_5.4.70_2.3.0 | fslc-5.10-2.1.x-imx |
0085 | hardknott | 3.3.6 - Hardknott | v2020.04_imx_5.4.70_2.3.0 | fslc-5.10-2.1.x-imx |
0084 | hardknott | 3.3.4 - Hardknott | v2020.04_imx_5.4.70_2.3.0 | fslc-5.10-2.1.x-imx |
0083 | hardknott | 3.3.4 - Hardknott | v2020.04_imx_5.4.70_2.3.0 | fslc-5.10-2.1.x-imx |
0082 | hardknott | 3.3.3 - Hardknott | v2020.04_imx_5.4.70_2.3.0 | fslc-5.10-2.1.x-imx |
BSP Version Matrix - Old Revisions
Bootloader
U-Boot
Feature | TQMa8.BSP Revision | Remarks | |||
---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0081 - 0091 | |
TQMa8x | i.MX8 | ENET0 | GbE | ✔ | |
TQMa8x | i.MX8 | ENET1 | GbE | ✔ | |
TQMa8x | i.MX8 | FlexSPI | QSPI NOR Flash | ✔ | |
TQMa8X | i.MX8 | GPIO | ✔ | ||
TQMa8x | i.MX8 | I²C | Bus Access | ✔ | |
TQMa8x | i.MX8 | UART | Debug Console | ✔ | default console |
TQMa8x | i.MX8 | uSDHC | eMMC / SD-Card | ✔ | SD card / eMMC |
TQMa8x | i.MX8 | USB2 | Host | ✔ | |
TQMa8x | i.MX8 | USB3 | Host | ✔ | |
TQMa8x | i.MX8 | Fuse | ✔ |
U-Boot - Old Revisions
Feature | BSP Revision | Remarks | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0012 | 0016 | 0017 | 0031 | 0033 | 0035 | 0036 | 0037 | 0056 | |
TQMa8x | i.MX8 | ENET0 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa8x | i.MX8 | ENET1 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa8x | i.MX8 | FlexSPI | QSPI NOR Flash | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
TQMa8X | i.MX8 | GPIO | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
TQMa8x | i.MX8 | I²C | Bus Access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
TQMa8x | i.MX8 | UART | Debug Console | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | default console |
TQMa8x | i.MX8 | uSDHC | eMMC / SD-Card | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | SD card / eMMC |
TQMa8x | i.MX8 | USB2 | Host | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
TQMa8x | i.MX8 | USB3 | Host | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
TQMa8x | i.MX8 | Fuse | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
Operating System
Linux
Feature | TQMa8.BSP Revision | Remarks | |||
---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0081 - 0091 | |
TQMa8x | i.MX8 | ADC | ✔ | ||
i.MX8 | ENET0 | GbE | ✔ | ||
i.MX8 | ENET1 | GbE | ✔ | ||
i.MX8 | FLEXCAN0 | CAN | ✔ | ||
i.MX8 | FLEXCAN1 | CAN | ✔ | ||
i.MX8 | FlexSPI | QSPI NOR Flash | ✔ | ||
i.MX8 | FTM | PWM | ✔ | ||
i.MX8 | GPIO | ✔ | |||
i.MX8 | GPU | Hardware Acceleration | ✔ | ||
i.MX8 | HDMI TX | Display Port | ✔ | ||
i.MX8 | LDB | LVDS0 | ✔ | Tested with Tianma TM070JVHG33 display | |
LVDS1 | ✔ | Tested with Tianma TM070JVHG33 display | |||
i.MX8 | LPI2C | I2C1 | ✔ | See onboard I2C devices | |
i.MX8 | LPSPI0 | SPI | ✔ | ||
i.MX8 | LPSPI1 | SPI | ✔ | ||
i.MX8 | LPSPI2 | SPI | ✔ | ||
i.MX8 | LPUART0 | Debug UART | ✔ | MBa8x connector X28 | |
i.MX8 | LPUART1 | TTL | ✔ | ||
i.MX8 | LPUART2 | TTL | ✔ | ||
i.MX8 | PCIe | Host | ✔ | ||
PCIe0 (Mini-PCIe) | ✔ | MBa8x connector X45 | |||
PCIe1 (PCIe M.2) | ✔ | MBa8x connector X47 | |||
i.MX8 | SAI | TLV320AIC3204 | ✔ | ||
i.MX8 | SATA | Serial ATA 3.0 | ✔ | MBa8x connector X48 | |
i.MX8 | USB2 | USB_OTG1 (HOST) | ✔ | connected to USB hub on MBa8x | |
USB_OTG2 (OTG) | ✔ | Bundled with USB3 | |||
i.MX8 | USB3 | ✔ | MBa8x connector X29 | ||
i.MX8 | VPU | Hardware Acceleration | ✔ | ||
MBa8x | TLV320AIC3204 | Audio Codec | Line Out/ Headphone Out | ✔ | |
Line In | ✔ | ||||
Microphone In | ✘ | ||||
USB2517 | USB H1 | USB Connector | ✔ | ||
USB H2 | USB Connector | ✔ | |||
USB H3 | MIPI_DSI0 | ✔ | |||
USB H4 | MIPI_DSI1 | ✔ | |||
USB H5 | LVDS0 | ✔ | |||
USB H6 | LVDS1 | ✔ | |||
USB H7 | Mini-PCIe | ✔ |
Linux - Old Revisions
Feature | BSP Revision | Remarks | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0012 | 0016 | 0017 | 0031 | 0033 | 0035 | 0036 | 0037 | 0056 | |
TQMa8x | i.MX8 | ADC | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
i.MX8 | ENET0 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8 | ENET1 | GbE | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
i.MX8 | FLEXCAN0 | CAN | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | FLEXCAN1 | CAN | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | FlexSPI | QSPI NOR Flash | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | FTM | PWM | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | GPIO | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
i.MX8 | GPU | Hardware Acceleration | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | HDMI TX | Display Port | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | LDB | LVDS0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Tested with Tianma TM070JVHG33 display | |||
LVDS1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Tested with Tianma TM070JVHG33 display | |||||
i.MX8 | LPI2C | I2C1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | See onboard I2C devices | ||
i.MX8 | LPSPI0 | SPI | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
i.MX8 | LPSPI1 | SPI | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
i.MX8 | LPSPI2 | SPI | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
i.MX8 | LPUART0 | Debug UART | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | MBa8x connector X28 | |||
i.MX8 | LPUART1 | TTL | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | LPUART2 | TTL | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | PCIe | Host | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
PCIe0 (Mini-PCIe) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | MBa8x connector X45 | |||||
PCIe1 (PCIe M.2) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | MBa8x connector X47 | |||||
i.MX8 | SAI | TLV320AIC3204 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
i.MX8 | SATA | Serial ATA 3.0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | MBa8x connector X48 | |||
i.MX8 | USB2 | USB_OTG1 (HOST) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | connected to USB hub on MBa8x | ||
USB_OTG2 (OTG) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Bundled with USB3 | ||||
i.MX8 | USB3 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | MBa8x connector X29 | ||||
i.MX8 | VPU | Hardware Acceleration | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||
MBa8x | TLV320AIC3204 | Audio Codec | Line Out/ Headphone Out | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
Line In | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||
Microphone In | |||||||||||||
USB2517 | USB H1 | USB Connector | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
USB H2 | USB Connector | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
USB H3 | MIPI_DSI0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
USB H4 | MIPI_DSI1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
USB H5 | LVDS0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
USB H6 | LVDS1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
USB H7 | Mini-PCIe | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
Onboard I2C Devices
TQMa8x / MBa8x
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 |
Changelog
BSP Version History
Rev.0087
BSP
- Update to Yocto Kirkstone
- Update imx-seco
- Update imx seco-libs
- Update imx-sc-firmware
- Fix argument check for scu_rm command
Linux
- Linux 5.15 support based on linux-fslc 5.15 + imx
Rev.0081
BSP
- Update to Yocto Hardknott
Linux
- Linux 5.10 support based on linux-fslc 5.10 + imx
Rev.0056
BSP:
- Enable building multiple u-boot configs
- Add bootstreams with cortexM4 demos
- Add Demos for tqma8qm
- Update SCFW Version for basic CortexM4 support for TQMa8QM
- Fix CortexM4 documentation for TQMa8x
U-Boot:
- Support multiple u-boot configs. Build all bootstream variants for all enabled u-boot configs
- Prepare CortexM4 Support for TQMa8x
Linux:
- Backport FEC phy resume fixes
- Sanititze dtb nodes / remove trailing 0 in address part of node names
- Fix cpu dtb for CortexM4 subsystems:
- Disable M4 remotes by default
- Include CM40 subsystem
Rev.0037
BSP:
- imx-sc-firmware fix IOCTL output for TQMa8QM 8GB RAM info
Linux
- Port fixes for Codec on STK to prevent race condition that could cause driver load failure
Rev.0036
BSP
- config/machines: sanitize variable assignments to improve reusability
- 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 ?=
U-Boot
- v2020.04 fix FEC Ethernet PHY init
- Fix phy_config using devicetree
- Forward error from phy_config
Rev.0035
U-Boot
- Fix env script loadhdp
Rev.0033
U-Boot
- Enable SD regulator on MBa8x REV.0200 and SD UHS modes
- allow DSR for Macronix SPI NOR on all supported TQ-Systems SOM
Linux
- Allow DSR for Macronix SPI NOR on all supported TQ-Systems SOM
- Enable SD regulator on MBa8x REV.0200 and SD UHS modes
- Lower drive strength for some pins
- Adjust thermal trip points
- Fix DP audio support
- Make PCIe voltage alway on, fixes USB port usablity at PCIe slot
- Enable ADC support
- Enable VPU support
- Device Tree example for MicroBus (clock module RTC5)
Rev.0031
BSP
- Update to Yocto Zeus
- Add recipes for kernel / u-boot based on NXP 5.4.y_1.0.0 reference BSP
U-Boot
- Initial support for current kernel with MBa8x REV.020x
Linux
- Initial support for current kernel with MBa8x REV.020x
Rev.0017
BSP
- update SCU firmware to version 1.2.10
- SCU add support for PMIC info
U-Boot
- load display port firmware during boot
- added support for SCU PMIC info
Linux
- added displayport audio support
- added audio support
- added FTM PWM support
- added ADC support
- added SATA support
- added GPIO button support incl. wakeup capabilities
- added LED support
- added Display Port support
- added LVDS support on both channels
- enable wakeup from GPIO button
- added GPIO LED and button support
Rev.0016
BSP
- added TQMa8QM 8GB variant
- systemd-machine-units: added tqma8qm support
- systemd-machine-units: reduce default can bitrate
- SCU Firmware added PCIe external clock
U-Boot
- added PCIe GPIO sideband pins
- added GPIO LED and button
- added USB support
- fix for flexspi write SR
- enable QSPI Boot
Linux
- added CAN support
- added PCIe support
- added USB support
- added SPI support
- added QSPI support (not completely functional)
- added LVDS support
Rev.0012
- initial BSP Release