Entry Page
Third-Party Add-Ons
Board Support Packages
Product URL list
Starterkit
Hardware
Onboard I2C devices
TQMa8Xx Rev.02xx / MBa8Xx Rev.02xx
I2C bus | TQMa8Xx | ||||
---|---|---|---|---|---|
I2C1 | 0x19 Temperature sensor | 0x31 EEPROM (software protection) | 0x57 EEPROM | 0x51 EEPROM | 0x68 RTC |
I2C bus | MBa8Xx | |||||||
---|---|---|---|---|---|---|---|---|
I2C1 | 0x18 Audio codec | 0x1C Temperature sensor | 0x2C Display-Port bridge | 0x34 EEPROM (software protection) | 0x44 USB Hub | 0x54 EEPROM | 0x6A PCIe clock generator | 0x70 Port Expander |
TQMa8Xx Rev.01xx / MBa8Xx Rev.01xx
I2C bus | TQMa8Xx | ||||
---|---|---|---|---|---|
I2C1 | 0x19 Temperature sensor | 0x31 Temperature sensor | 0x50 EEPROM | 0x51 EEPROM | 0x68 RTC |
I2C bus | MBa8Xx | |||||||
---|---|---|---|---|---|---|---|---|
I2C1 | 0x18 Audio codec | 0x1C Temperature sensor | 0x2C Display-Port bridge | 0x2D USB-Hub | 0x34 Temperature sensor | 0x54 EEPROM | 0x6A PCIe clock generator | 0x70 Port Expander |
Hardware Issues
Linux BSP
U-Boot
U-Boot
Supported FeaturesFeature | BSP Revision | Remarks | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0001 | 0002 | 0005 | 0006 | 0007 | 0009 | 0016 | 0017 | |
TQMa8Xx | i.MX8X | ENET0 | GbE | • | • | • | • | • | • | • | • | |
TQMa8Xx | i.MX8X | ENET1 | GbE | • | • | • | • | • | • | • | • | |
TQMa8Xx | i.MX8X | I²C | EEPROM, Temperature Sensors | • | • | • | • | • | • | • | • | |
TQMa8Xx | i.MX8X | UART | Debug Console | • | • | • | • | • | • | • | • | default console |
TQMa8Xx | i.MX8X | uSDHC | eMMC / SD-Card | • | • | • | • | • | • | • | • | SD card / eMMC |
TQMa8Xx | i.MX8X | Fuse | • | • | • | • | • | • |
Supported boot devices
Supported boot devices
Boot device | supported |
---|---|
eMMC | • |
SD Card | • |
Kernel
Operating System
Operating System
Supported FeaturesFeature | BSP Revision | Remarks | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | 0001 | 0002 | 0005 | 0006 | 0007 | 0009 | 0016 | 0017 | |
TQMa8x | i.MX8X | ENET0 | GbE | • | • | • | • | • | • | • | • | |
i.MX8X | ENET1 | GbE | • | • | • | • | • | • | • | • | ||
i.MX8X | FlexSPI | QSPI NOR Flash | • | |||||||||
i.MX8X | I²C1 | Bus Access | • | • | • | • | • | • | • | • | ||
i.MX8X | MIPI DSI | LVDS | • | • | • | • | • | • | Tested with Tianma TM070JVHG33 display | |||
i.MX8X | LPSPI1 | Bus access | • | |||||||||
i.MX8X | LPSPI2 | Bus access | • | |||||||||
i.MX8X | LPSPI3 | Bus access | • | |||||||||
i.MX8X | LPUART1 | Console | • | • | • | • | • | • | • | • | ||
i.MX8X | LPUART3 | TTL | • | |||||||||
i.MX8X | GPIO | • | • | • | • | • | • | • | ||||
i.MX8X | PCIe | Host | • | • | • | • | • | • | • | MBa8xx ≥ Rev.0102 required, also see Known Issues | ||
i.MX8X | USB2 | Host | • | • | • | • | • | • | ||||
i.MX8X | uSDHC | uSDHC0 / eMMC uSDHC1 / SD Card | • | • | • | • | • | • | • | • | ||
MBa8xx | USB4604I | USB1 | Host | • | • | • | • | • | • | Available on X24 (MPCIe) | ||
USB4604I | USB2 | Host | • | • | • | • | • | • | Available on X22 (LVDS) | |||
USB4604I | USB3 | Host | • | • | • | • | • | • | Available on X20 | |||
USB4604I | USB4 | Host | • | • | • | • | • | • | Available on X20 |
FAQ
Yocto
BSP Version Matrix
Yocto BSP Version Matrix
BSP Revision | meta-tq release | Yocto Project / Poky Release | Target machine1) | U-Boot | Linux Kernel |
---|---|---|---|---|---|
0001 | 2.4.4 - Rocko | rocko-tqma8x | tqma8qx-mba8qx | v2017.03 rel_4.9.88_imx_imx8qxp_beta2 | rel_imx_4.9.88_imx8qxp_beta2 |
0002 | 2.5.2 - Sumo | sumo-tqma8x | tqma8qx-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0005 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0006 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0007 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0009 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03 rel_imx_4.14.78_1.0.0_ga | rel_imx_4.14.78_1.0.0_ga |
0016 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
0016 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
0017 | 2.5.2 - Sumo | sumo-tqma8x | tqma8xqp-mba8xx tqma8xd-mba8xx | v2018.03-rel_imx_4.14.98_2.2.0_ga | rel_imx_4.14.98_2.2.0_ga |
0025 | - Zeus | zeus-tqma8 | tqma8xqp-mba8xx | v2019.04-lf-5.4.y-1.0.0 | lf-5.4.y-1.0.0 |
Changelog
Yocto BSP Changelog
Rev.0025
BSP
Linux
Rev.0017
BSP
- meta-dumpling: added u-boot-fw-utils in packagegroups
- meta-tq : u-boot-fw-utils support
Linux
- added spidev for busses SPI1 / SPI2 / SPI3
- added LPUART3 / available on unused SAI pins
- fix QSPI driver
Rev.0016
BSP
- Update to scfw version 1.2.7
- systemd-machine-units reduce default can bitrate
U-Boot
- Update to imx_4.14.98_2.2.0
- Fix QSPI probe write a byte to flash (MACRONIX)
- QSPI Boot support
Linux
- Update to rel_imx_4.14.98_2.2.0
Rev.0009
- backport CAN fixes from current NXP kernel
- support additional LVDS display
- add etm11010g0dka
Rev.0007
- CAN / Ethernet preconfigured via systemd service
- PCIe disabled DT for old STK
- Ethernet phy led config fix
- Better reserved memory config for TQMa8XD
Rev.0006
- PCIe GPIO pins (PERST pin config correction) in DT and U-Boot
- PCIe DT with Gen1 only support (for transparent PCIe switch / bridge)
Rev.0005
Global:
- SCU Firmware based on porting kit v1.1.2
TQMa8XQP:
- make LVDS work again
- polish boot flow
- rename configs and names (tqma8qxp-mba8xx → tqma8xqp-mbaxx)
- support net boot
TQMa8XD:
- initial support (tqma8xd-mba8xx)
TQMa8XQPS
- test newtwork support in linux
- support net boot (GBE0)
Rev.0002
- port to yocto sumo / NXP rel_imx_4.14.78_ga
- SCU firmware base v1.1
- rename configs and names (tqma8qxp-mba8xx → tqma8xqp-mbaxx) siehe version matrix
Rev.0001
- initial release
Yocto Partitions
Yocto Images
Known Issues
Linux kernel does not start with sumo.TQMa8.BSP.SW.0005 on MBa8Xx ≤ Rev.0101
Details | |
---|---|
Effect | Linux kernel does not start (no more messages after Starting kernel… ) |
Issue | PCIe requires external clock generator |
Affected Revisions | |
Bsp | sumo.TQMa8Xx.BSP.SW.0002 sumo.TQMa8.BSP.SW.0005 |
Module | all revisions |
Mainboard | MBa8Xx ≤ Rev.0101 |
Solution | |
Fix | Upgrade to MBa8Xx Rev.0102 (please contact TQ Support for further information) |
Workaround | Use devicetree with disabled PCIe interface (will be included in next BSP release) |
PCIe device detection
Details | |
---|---|
Effect | Some PCIe devices (e.g. PCIe switches) may not be properly detected |
Issue | PCIe signals clock, enable and reset do not comply to the PCIe specification |
Affected Revisions | |
Bsp | ≤ sumo.TQMa8.BSP.SW.0005 |
Module | all revisions |
Mainboard | MBa8Xx ≥ Rev.0102 |
Solution | |
Fix | TBD |
Workaround | Limit PCIe speed to Gen1 by using proper devicetree *-pcie-gen1.dtb (provided with BSP release sumo.TQMa8.BSP.SW.0006) |
No QSPI NOR Flash support in U-Boot
Details | |
---|---|
Effect | Executing sf probe in U-Boot causes the first byte of the QSPI NOR Flash to be overwritten |
Issue | QSPI NOR Flash is not suppported in U-Boot |
Affected Revisions | |
Bsp | sumo.TQMa8.BSP.SW.0005 |
Module | all revisions |
Mainboard | all revisions |
Solution | |
Fix | TBD |
Workaround | N/A |
Deployment Yocto
Images Yocto
Updating existing firmware over ethernet
Device assignment
Device assignment:
mmcdev 0 = eMMC
mmcdev 1 = SD Card
Yocto specific command Update eMMC
1. Run the following commands in the Uboot shell to create update script:
setenv root_loop 'setenv start 24000 && setenv r1 $rootblks16 && while itest $r1 -gt 0; do if itest $r1 -gt 0x100000; then setenv count 0x100000; else setenv count $r1; fi && mmc dev 1 && mmc read $loadaddr $start $count && mmc dev 0 && mmc write $loadaddr $start $count && setexpr start $start + $count && setexpr r1 $r1 - $count; done; setenv r1; setenv start; setenv count'
setenv install_firmware 'echo MBR... && mmc dev 1 && mmc read $loadaddr 0 1 && mmc dev 0 && mmc write $loadaddr 0 1 && echo U-Boot... && mmc dev 1 && mmc read $loadaddr 3F 1FC0 && mmc dev 0 && mmc write $loadaddr 3F 1FC0 && echo U-Boot environment... && mmc dev 1 && mmc read $loadaddr 2000 2000 && mmc dev 0 && mmc write $loadaddr 2000 2000 && echo Firmware Partition... && mmc dev 1 && mmc read $loadaddr 4000 20000 && mmc dev 0 && mmc write $loadaddr 4000 20000 && echo Root FS... && run root_loop'
- create the environment variable rootblks16 and set the value accordingly to the size of the RootFS in this case 2070MB.
To calculate the value of rootblks16 devide the size of the image in byte by 512 and convert the result into a hex value.
2070 * 1024 * 1024 = 2170552320
2170552320 / 512 = 4239360
4239360 = 40B000HEX
setenv rootblks16 0x40B000
NFS Boot
uboot command to start netboot
=> run netboot
Disclaimer
TQ-Systems GmbH provides the Board Support Packages (BSP) free of charge. The software included in the shipment has been configured individually for the starter kits. The software is only intended to evaluate the module. The use of the Board Support Packages (BSP) is only allowed within the scope of functionality described by TQ-Systems GmbH. TQ-Systems GmbH does not accept any liability for all further changes of the Board Support Package and for any damage resulting from its use.
TQ-Systems GmbH provides the Board Support Packages (BSP) free of charge. The software included in the shipment has been configured individually for the starter kits. The software is only intended to evaluate the module. The use of the Board Support Packages (BSP) is only allowed within the scope of functionality described by TQ-Systems GmbH. TQ-Systems GmbH does not accept any liability for all further changes of the Board Support Package and for any damage resulting from its use.