BSP Overview
Third-Party Add-Ons
Board Support Packages
* Microsoft® Windows® CE * Microsoft® Windows® Embedded * QNX® Neutrino® * Android (coming soon)
Product URL list
Starterkit
Hardware
Onboard I2C devices
TQMa57xx /MBa57xx
I2C bus | TQMa57xx | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
I2C1 | 0x12 PMIC DVS | 0x1F Tempsensor SE97BTP | 0x37 EEPROM SW-Protect | 0x58 PMIC Power Registers | 0x59 PMIC Interface and auxiliaries | 0x5A PMIC Trimming and test | 0x5B PMIC OTP | 0x54 EEPROM | 0x57 EEPROM SE97BTP | 0x5C EEPROM | 0x68 RTC DS1339 |
I2C bus | MBa57xx | ||||
---|---|---|---|---|---|
I2C4 | 0x18 Audio Codec | 0x20 PCA9555 | 0x21 PCA9554 | 0x2D USB Hub | 0x41 Touchcontroller |
Hardware Issues
Linux BSP
U-Boot
Supported features
U-Boot
U-Boot
Supported featuresFeature | BSP Revision | Remarks | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
TQ Product | Chip | Interface | Function | Prerelease 0006 | 0007 | 0008 | 0009 | 0012 | 0013 | 0015 | |
TQMa57xx | AM57xx | GMAC0 | RGMII | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | I²C1 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | I²C4 | Bus access | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | qSPI | QSPI SPI NOR Flash | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | UART3 | RS232 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | default console |
TQMa57xx | AM57xx | USB2 | USB Storage Device | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | USB3 | USB Storage Device | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | MMC1 | eMMC | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | MMC2 | SD-Card | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | JTAG | Debug | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | USB 2.0 | USB HUB | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TQMa57xx | AM57xx | USB 3.0 | HOST 1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
Supported Boot Devices
Boot device | supported |
---|---|
eMMC | ✔ |
SD Card | ✔ |
QSPI NOR (optional) | ✔ |
Kernel
Operating System
Linux
Supported FeaturesTQ Product | Chip | Interface | Function | Pre-release 0006 | 0007 | 0008 | 0009 | 0012 | 0013 | 0015 | Remarks |
---|---|---|---|---|---|---|---|---|---|---|---|
TQMa57xx | AM57xx | DCAN1 | CAN0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
AM57xx | DCAN2 | CAN1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | DEBUG | JTAG | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | tested with XDS200 USB Debug Probe | |
AM57xx | Display | HDMI | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
AM57xx | Display | LVDS | ✔ | ✔ | ✔ | ✔ | tested with Tianma TM070JVHG33-01 | ||||
AM57xx | Display | parallel Display | ✔ | ✔ | ✔ | ✔ | tested with the following displays: DMB S070SWV29HG-DC44 GLYN ETM0700G0EDH6 |
||||
AM57xx | GMAC0 | RGMII | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | GMAC1 | RGMII | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | I2C1 | I2C devices | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | See onboard I2C devices | |
AM57xx | I2C4 | I2C devices | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | See onboard I2C devices | |
AM57xx | I2S | Audio | |||||||||
AM57xx | GPIO | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
AM57xx | MMC1 | SD Card | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | MMC2 | eMMC | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | MMC4 | SDIO | SDIO 4 Bit Interface | ||||||||
AM57xx | PCIe | PCIe Lane 0 | ✔ | ✔ | ✔ | ✔ | PCIe | ||||
AM57xx | PCIe | PCIe Lane 1 | ✔ | ✔ | ✔ | ✔ | mPCIe | ||||
AM57xx | PRUSS1 | PRU_ETH0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | PRUSS2 | PRU_ETH1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | QSPI | QSPI NOR | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | optional placement option | |
AM57xx | SATA | Serial ATA Revision 3.0 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | UART3 | RS232 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Default console | |
AM57xx | UART10 | RS485 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
AM57xx | USB2 | OTG | ✔ | ✔ | ✔ | MBa57xx REV.0202 required | |||||
AM57xx | USB3 | Host USB Hub TUSB8041 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
MBa57xx | TUSB8041 | USB3.0 | Host 1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |
TUSB8041 | USB3.0 | Host 2 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
TUSB8041 | USB3.0 | Host 3 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
TUSB8041 | USB3.0 | USB4604 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
USB4604 | USB2.0 | Host 1 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available over X55 | ||
USB4604 | USB2.0 | Host 2 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available over X56 | ||
USB4604 | USB2.0 | USB SATA | Available over X26 | ||||||||
USB4604 | USB2.0 | USB PCIe | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | Available over X29 |
Yocto Images
Target Machine: tqma57xx-mba57xx
System Images
Boot Device | Symlink | File |
---|---|---|
SD Card/eMMC | tq-image-generic-tqma57xx-mba57xx.wic | tq-image-generic-tqma57xx-mba57xx-<build_timestamp>.rootfs.wic |
Bootloader Binaries
Boot Device | Symlink | File |
---|---|---|
SD/eMMC | u-boot-tqma57xx-mba57xx.img | u-boot-sd-2019.04-r0.img |
Linux Kernel Image
Symlink | File |
---|---|
zImage | zImage–5.4.43-r0-tqma57xx-mba57xx-<build_timestamp>.bin |
Devicetree Blobs
Symlink | Description |
---|---|
am571x-mba57xx.dtb | Default |
am571x-mba57xx-tianma-tm070jvhg33.dtb | device tree with activated LVDS channel and TM070JVHG33 display timing |
am571x-mba57xx-edt-etm0700g0edh6.dtb | device tree with activated parallel display channel and etm0700g0edh6 display timing |
am571x-mba57xx-cdtech-dc44.dtb | custom Devicetree |
Rootfs images
Symlink | File |
---|---|
tq-image-generic-tqma57xx-mba57xx.tar.xz | tq-image-generic-tqma57xx-mba57xx-<build_timestamp>.rootfs.tar.xz |
Yocto BSP Version Matrix
Please visit our Github for the latest updates and BSP releases.
BSP Version Matrix
BSP Revision | meta-tq release | Yocto Project / Poky Release | Target machine1) | U-Boot | Linux Kernel |
---|---|---|---|---|---|
0015 | kirkstone.TQMa57xx.BSP.SW.0015 | 4.0.16 - Kirkstone | tqma57xx-mba57xx tqma57xx-ecc-mba57xx | 2019.04 | ti-rt-linux-5.10.y |
0013 | zeus.TQMa57xx.BSP.SW.0013 | 3.0.3 - Zeus | tqma57xx-mba57xx tqma57xx-ecc-mba57xx | 2019.04 | TI-linux-5.4.y-07.00.00.005-rt |
0012 | zeus.TQMa57xx.BSP.SW.0012 | 3.0.3 - Zeus | tqma57xx-mba57xx tqma57xx-ecc-mba57xx | 2019.04 | TI-linux-5.4.y-07.00.00.005-rt |
0009 | warrior.TQMa57xx.BSP.SW.0009 | 2.7.1 - Warrior | tqma57xx-mba57xx tqma57xx-ecc-mba57xx | 2019.04 | v4.19.94-rt39-ti |
0008 | warrior.TQMa57xx.BSP.SW.0008 | 2.7.1 - Warrior | tqma57xx-mba57xx tqma574x-ecc-mba57xx | 2019.04 | 4.9.77 |
0007 | rocko.TQMa57xx.BSP.SW.0007 | 2.4.4 - Rocko | tqma571x-mba57xx tqma572x-mba57xx tqma574x-mba57xx | 2018.01 | 4.9.77 |
0006 | morty.TQMa57xx.BSP.SW.0006 | 2.2.1 - Morty | tqma571x-mba57xx tqma572x-mba57xx | 2018.01 | 4.9.77 |
Yocto Changelog
BSP Version History
0015
U-Boot
- Make the run netboot command work
- Do not attempt to load the environment from devices other than the boot source
- Fix the SPI-NOR partition list
Linux
- Fix display brightness
- Add missing input function for errata i863
- Add SPI test device
0013
U-Boot
- Add missing input function for errata i863
Linux
- Fix display brightness
- Add missing input function for errata i863
- Add SPI test device
0012
BSP
- Update to TI Linux 5.4 (tagged 07.00.00.05-rt)
- Added PCI to MACHINE_FEATURES
U-Boot
- Renamed extraversion
- Patched fatfs support
- Update U-Boot on vfat partition
- Implement errata i863 workaround: mmc2 no pullups
- Update to set PRU MAC from EEPROM
Linux
- Enable USB2 OTG mode on MBa57xx
- Implement errata i863 workaround: mmc2 no pullups
0009
- Update to TI 2019.06 (based on 4.19+rt)
- Update u-boot to unify tqma57xx variant configurations
- rename MACHINE tqma574x-ecc-mba57xx to tqma57xx-ecc-mba57xx.conf
0008
- Update to Yocto Warrior
- Renamed kernelimage in firmware partition
- Update linux-ti to branch TQMa57xx-TI-linux-v4.9
- Simplifyed machine definitions
- Update U-Boot version to 2019.04
0007
- Update to Yocto Rocko
- Added support for TQMa5748
0006
- initial BSP release
Yocto Deployment
Device assignment
Device assignment:
mmcdev 0 = SD Card
mmcdev 1 = eMMC
FAQ
PTXdist
Quickstart Yocto BSP
How-To yocto
Known Issues Yocto
MBa57x
RS485
RS485 bus block in half-duplex mode | |
---|---|
Affects | RS485 via UARTx on MBa57xx Revsion 01xx |
Issue | During AM57xx reset the UARTx.CTS# pin is low by default (CPU internal pull down) |
Effect | Using the AM57xx RS485 circuitry in a half-duplex slave device or half-duplex multi-master environment may block the RS485 bus during AM57xx reset. The bus is released as soon as the UARTx.CTS# pin is properly configured by software (e.g. U-Boot, Linux, etc.) |
Solution / Workaround | Add a 10k pull up to the UARTx.CTS# signal on carrier board This behaviour will be fixed with MBa57xx REV.02xx |
Yocto specific command Update eMMC
1. Run the following commands in the Uboot shell to create update script:
setenv root_loop 'setenv start 12001 && 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 0 && mmc read $loadaddr $start $count && mmc dev 1 && 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 0 && mmc read $loadaddr 0 1 && mmc dev 1 && mmc write $loadaddr 0 1 && echo U-Boot... && mmc dev 0 && mmc read $loadaddr 2 7FE && mmc dev 1 && mmc write $loadaddr 2 7FE && echo U-Boot environment... && mmc dev 0 && mmc read $loadaddr 801 800 && mmc dev 1 &&mmc write $loadaddr 801 800 && echo reserved... && mmc dev 0 && mmc read $loadaddr 1001 1000 && mmc dev 1 &&mmc write $loadaddr 1001 1000 && echo Firmware Partition... && mmc dev 0 && mmc read $loadaddr 2001 10000 && mmc dev 1 && mmc write $loadaddr 2001 10000 && 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 307MB.
To calculate the value of rootblks16 devide the size of the image in byte by 512 and convert the result into a hex value.
307 * 1024 * 1024 = 321912832
321912832 / 512 = 628736
628736 = 99800HEX
setenv rootblks16 0x99800
uboot command to start netboot
=> run netboot