Entry Page
Third-Party Add-Ons
Board Support Packages
Product URL list
Starterkit
Hardware
Onboard I2C devices
Hardware Issues
Linux BSP
U-Boot
U-Boot
Supported FeaturesBuildsystem | BSP Revision | Remarks | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PTXdist | • | • | • | • | • | • | • | • | • | ||||||
Yocto | • | • | • | • | • | • | |||||||||
TQ Product | Chip | Interface | Function | Prerelease 7a3ec3d | 0004 | 0005 | 0100 | 0102 | 0109 | 0110 | 0111 | 0112 | 0115 | 0116 | |
TQMLS102xA | LS102xA | eSDHC | eMMC / SD-Card | • | • | • | • | • | • | • | • | • | • | • | mutually exclusive (cf user's manual) |
TQMLS102xA | LS102xA | ETSEC | RGMII / SGMII | • | • | • | • | • | • | • | • | • | • | • | For SGMII MBLS102xA Rev. ≥ 0200 required |
TQMLS102xA | LS102xA | I2C1 | EEPROM / PMC (System Reset Request) | • | • | • | • | • | • | • | • | • | • | • | |
TQMLS102xA | LS102xA | QSPI | QSPI NOR Flash | • | • | • | • | • | • | • | • | • | • | • | up to 2 Devices |
TQMLS102xA | LS102xA | SATA | Host | • | • | • | • | • | • | • | • | • | SSD/HDD | ||
TQMLS102xA | LS102xA | UART1 | RS232 | • | • | • | • | • | • | • | • | • | • | • | default console |
TQMLS102xA | LS102xA | USB XHCI | USB 3.0/2.0 | • | • | • | • | • | • | • | • | • | • | • | USB Storage Device |
Supported Boot Devices
Boot device | BSP Revision | Remarks | |||||
---|---|---|---|---|---|---|---|
0102 | 0109 | 0110 | 0111 | 0112 | 0115 | ||
eMMC / SD | • | • | • | • | • | • | mutually exclusive |
QSPI NOR-Flash | • | • | • | • | • |
Kernel
Operating System
When using BSP Rev. 0100 on a MBLS102xA Rev.01xx, please see How to Use BSP Rev.0100 on MBLS102xA Rev.01xx.
Linux
Supported FeaturesBuildsystem | BSP Revision | Remarks | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PTXdist | • | • | • | • | • | • | • | • | • | ||||||
Yocto | • | • | • | • | • | • | |||||||||
TQ Product | Chip | Interface | Function(s) | Prerelease 7a3ec3d | 0004 | 0005 | 0100 | 0102 | 0109 | 0110 | 0111 | 0112 | 0115 | 0116 | |
TQMLS102xA | LS102x | 2D-ACE | 24 Bit RGB | • | • | • | • | • | • | • | • | • | Pin header X17 on MBLS102xA | ||
LS102x | 2D-ACE | SiI9022A | • | • | • | • | • | • | • | • | • | HDMI | |||
LS102x | 2D-ACE | SN75LVDS83B | • | • | • | • | • | • | • | • | • | LVDS | |||
LS102x | CAN1 | CAN 2.0 B | • | • | • | • | • | • | • | • | |||||
LS102x | CAN2 | CAN 2.0 B | • | • | • | • | • | • | • | • | |||||
LS102x | eSDHC | eMMC | • | • | • | • | • | • | • | • | • | • | • | mutually exclusive (cf user's manual) | |
LS102x | eSDHC | SD card | • | • | • | • | • | • | • | • | • | • | • | ||
LS102x | eTSEC0 | RGMII (10/100/1000 Mbit/s) | • | • | • | • | • | • | • | • | • | • | • | ||
LS102x | eTSEC1 | SGMII (10/100/1000 Mbit/s) | • | • | • | • | • | • | • | • | MBLS102xA Rev. ≥ 0200 required | ||||
LS102x | eTSEC2 | RGMII (10/100/1000 Mbit/s) | • | • | • | • | • | • | • | • | • | • | • | ||
LS102x | GPIO | Digital I/O | • | • | • | • | • | • | • | • | • | • | • | ||
LS102x | I2C1 | Bus access | • | • | • | • | • | • | • | • | • | ||||
LS102x | I2C1 | EEPROM (M24C64) | • | • | • | • | • | • | • | • | • | EEPROM | |||
LS102x | I2C1 | RTC (PCF85063) | • | • | • | • | • | • | • | • | • | RTC | |||
LS102x | I2C1 | TEMP-Sensor (SA56004X) | • | • | • | • | • | • | • | • | • | TEMP-Sensor | |||
LS102x | LPUART1 | TTL | • | • | • | • | • | ||||||||
LS102x | PCIe | PCI Express™ Base Specification, Revision 3.0 | • | • | • | • | • | • | • | • | PCIe slot (X35) on MBLS102xA Mini-PCIe slot (X24) on MBLS102xA |
||||
LS102x | QSPI | QSPI NOR Flash | • | • | • | • | • | • | • | • | • | ||||
LS102x | SATA | Serial ATA Revision 3.0 | • | • | • | • | • | • | • | • | |||||
LS102x | UART1 | TTL | • | • | • | • | • | • | • | • | • | • | • | ||
LS102x | USB1 | USB 3.0 OTG | • | • | • | • | • | • | • | • | • | • | • | ||
LS102x | USB2 | USB2517 on MBLS102xA | • | • | • | • | • | • | • | • | • | • | |||
MBLS102xA | MBED/OpenSDA | miniUSB | Console | • | • | • | • | • | • | • | • | • | • | • | Console available on X43 xor X5 (LPUART) |
TLV320AIC3204 | SAI1 | Audio Codec | • | • | • | • | U-Boot image with SAI muxing in RCW and SAI CPLD configuration required | ||||||||
SiI9022A | HDMI | Ext. Monitor | • | • | • | • | • | • | • | MBLS102xA REV.0202 and TQMLS102xA ≥ REV.0203 required |
|||||
SN75LVDS83B | LVDS | Ext. Display | • | • | • | • | • | • | • | • | • | X10 / X32 | |||
SP3222E | UART1 | RS232 | • | • | • | • | • | • | • | • | • | • | • | ||
SP491E | LPUART1 | RS485 | • | • | • | • | • | • | • | • | • | ||||
STMPE811 | I2C1 | Touch | |||||||||||||
USB2517 | USB2_H4 | Host | • | • | • | • | • | • | • | • | • | ||||
USB2517 | USB2_H5 | Host | • | • | • | • | • | • | • | • | • | ||||
USB2517 | USB2_H6 | Host | • | • | • | • | • | • | • | • | • | assembly option: Safenet HL Chip Sentinel |
FAQ
PTXdist
PTXdist BSP Version Matrix
BSP Version Matrix
BSP revision | Prerelease 7a3ec3d | 0004 | 0005 | 0100 | 0102 | 0109 | 0110 | 0111 | 0112 |
---|---|---|---|---|---|---|---|---|---|
PTXdist | 2015.02 | 2015.05 | 2015.05 | 2015.05 | 2016.04 | 2016.04 | 2018.09 | 2019.01 | 2019.01 |
OSELAS Toolchain | 2013.12.2 | 2013.12.2 | 2013.12.2 | 2013.12.2 | 2013.12.2 | 2013.12.2 | 2018.02 | 2018.02 | 2018.12 |
Platform | MBLS102xA | MBLS102xA | MBLS102xA | MBLS102xA | MBLS102xA | MBLS102xA | MBLS102xA | MBLS102xA | MBLS102xA |
U-boot | 2015.04 | 2015.04 | 2015.04 | 2016.05 | 2016.05 | 2017.07 | 2017.11 | 2017.11 | 2017.11 |
Linux Kernel | 3.12 | 3.12 | 4.4 | 4.4 | 4.4 | 4.4 | 4.14 | 4.14 | 4.14 |
PTXdist Changelog
BSP Version History
2019-09-10 - REV.0112
BSP
- Upgrade toolchain to 2018.12.0 / gcc 8.2.1
- Use PTXDIST_BSP_AUTOVERSION in configs
- Enable PTXCONF_PROJECT_CHECK_LICENSES in configs
Linux
- Fixed RS485 support in LPUART driver
- Fix reboot issue
- Disable CONFIG_MTD_CFI and CONFIG_MTD_NAND
- Disable CONFIG_UEVENT_HELPER
- Enable IPv6
- Enable CRYPTO_USER and CRYPTO_USER_API
- Disable SND_SUPPORT_OLD_API and enable SND_HRTIMER
2019-06-21 - REV.0111
BSP
- Added U-Boot variants for SAI muxing
U-Boot
- RCW: added SAI muxing
Linux
- improved Kernel config
- added TLV320 codec driver
- DTB: added audio codec support
RootFS
- Added asound.state file
2019-03-14 - REV.0110
BSP
- OSELAS Toolchain Update to 2018.2.0 / gcc-7.3.1
- PTXdist Update to 2018.09.0
U-Boot
- combined image (RCW/PBI + U-Boot-Binary)
- e-MMC boot partition access (not bootable)
- UBI: supports RootFS update in U-Boot
Linux
- Update to v4.14.78
- Extended display support
Parallel dispalys (incl. touch):
Glyn ETM0700G0EDH6 (800×480)
DMB S070PWS19HP-FC21 (1024×600)
DMB S070SWV29HG-DC44 (800×480)
LVDS display (incl. touch):
Tianma TM070JVHG3 (1024×768)
- Enable RS485 at boot
- set USB3 to OTG
- PHY DP83867 reset via SW_RESTART now optional
2018-06-14 - REV.0109
TQMLS102xA-BSP
- OSELAS Toolchain Update from 2013.12.2 to 2014.12.2
SD Card Image
- devicetree and kernel in firmware partition
U-Boot
- using internal dtb
- added support for -ae variant
- fixed comments in rcw source file
- new version: v2017.07
- e-MMC DSR detection
- support for module identification eeprom (default address 0x54)
- system boot from qspi flash → u-boot/dtb/kernel/rootfs
- dspi0 enabled in kernel
- renamed dtb file: ls1021a-tqmls1021a-mbls102xa.dts
- RX ethernet workaround message
Linux
- removed u-boot compatibility changes from linux device tree
- set lpuart0 to original clock source sysclk
- cpu speed throttling via die temperature
- fixed e-mmc bus width
- dspi0 enabled in kernel
2016-11-23 - REV.0102
TQMLS102xA-BSP
- Build ecc and non-ecc u-boot variant, install non-ecc by default
Build Tools
- PTXdist 2016.04
U-Boot
- QSPI: RCW+U-Boot in a single image
- QSPI: RCW built from U-Boot sources
- QSPI: fix kernel crash when two qspi flashes in devtree but only one chip placed
- Split module and board source files
- AHCI: non-queued error recovery
- Support DDR3 ECC
- PCIe: allow 5G links
- Probe MBLS102xA CPLD mux mode and dis-/enable HDMI in DRM system
- Show MBLS102xA CPLD mux mode via LEDs
Linux
- add gpio expander new on board revision 200
- add on-die temperature sensor
- enable always-on timer
- fix dp83867 device tree required properties
- fix PCIe MSI support
- enabled CPU frequency scaling
2016-05-19 - REV.0100
TQMLS102xA-BSP
BSP
- Kernelconfig: LZO image compression (reduced boot time)
- Kernelconfig: build PREEMPT
- Kernelconfig: enable PHY timestamping for IEEE1588
- Add linuxptp for IEEE1588
- Readme update
- RCW: update and sync QSPI to SD RCW
- RCW: remove USB3.0 overcurrent reporting
- Add U-Boot 2016.05-rc1
- Do not compile reference device trees for QDS and TWR boards
Kernel
- fsl-dcu: support inverted pixel clock (ETM0700G0EDH6 display)
- hdmi: add driver for sii9022 transceiver
- touchscreen: update driver for M12 type (Hycon controller)
- DT: add msi-parent node for pcie
- I2C: workaround to recover from a bus stall (SDA held low)
- DT: support MBLS102xA.0200 PHYs
- DT: Gianfar buffer descriptors no longer little-endian
- DT: Add ptp node for IEEE1588 support
- DT: Add dspi0 and generic spidev nodes
U-Boot
- QSPI quad mode (1-1-4) support (for SD Boot)
- I2C: workaround to recover from a bus stall (SDA held low)
- SATA: stability improved, not reliably tested
- Support for MBLS102xA.0200 PHYs
- Support for module EEPROM parsing (like TQMa6)
2016-03-23 - REV.0005
TQMLS102xA-BSP
Build tools
- PTXdist 2015.05
- OSELAS.Toolchain-2013.12.2
- Linux Kernel 4.4
- U-Boot 2013.04
- Remove kernel fsl-sdk-1.7
- Remove u-boot fsl-sdk-1.7
U-Boot
- Allow to update SPI U-Boot from MMC U-Boot
- XHCI Interface support (supports USB2.0)
- Fix e-MMC write hangs
- Add function to reset board
Linux
- DP83867: LED config
- Parallel display support using DRM panel subsystem
- Static backlight support via LED driver
- Gianfar: use little endian buffer descriptors
- Add LS1021A GPIO controller support
- Add support for port expanders
- RTC support
- XHCI and EHCI support
- Add function to reset board
- Add support for QSPI flash
- Prepare SGMII support
PTXdist Platform
Configure the BSP for the desired hardware platform and software configuration using the correpsonding command from the following table:
Platform | Configuration | Command |
---|---|---|
MBLS102xA | Minimal rootfs w/ busybox | /tools/config-mbls102xa |
Building the BSP:
Execute in the BSP root directory
$ ./tools/config-mbls102xa $ ./p images
or
$ ptxdist platform configs/platform-tq-tqmls102xa/mbls102xa/platformconfig $ ptxdist select configs/platform-tq-tqmls102xa/ptxconfig.bb $ ptxdist go --git $ ptxdist images
PTXdist Partitions
SD / eMMC Image
- sector size 512 Byte
- unpartitioned area: 4MiB (0x2000 sectors)
Sector numbers are in hexadecimal (as expected by U-Boot's mmc
command), size is given in hex (=number of sectors) and dezimal (= size in byte).
Sector | Size | Usage |
---|---|---|
0x00000 … 0x000000 | 0x0001 sector / 512 Byte | MBR / Partition Table |
0x00001 … 0x000001 | 0x0001 sector / 512 Byte | free |
0x00002 … 0x0007FF | 0x07FE sectors / 1023 KiB | u-boot |
0x00800 … 0x000FFF | 0x0800 sectors / 1MiB | environment |
0x01000 … 0x001FFF | 0x1000 sectors / 2 MiB | free |
0x02000 … 0x00BFFF | 0xA000 sectors / 20 MiB | boot /firmware (Kernel,devicetrees) |
0x0C000 … 0x08BFFF | 0x80000 sectors / 256 MiB | root |
0x8C000 … 0x10BFFF | 0x80000 sectors / 256 MiB | spare, unformated |
The partition scheme is defined using the config file config/platform-tq-mbls102xa/config/images/uboot-hd.config.
To create the image the genimage host tool is used. This tool is automatically selected and built. You can find the build directory under <BSPROOT>/platform-MBLS102x/build-host/genimage. See the README file for how to use this tool.
QSPI NOR
- sector size 64 KiB
Sector | Size | Usage |
---|---|---|
0x0000 … 0x0013 | 0x000E sectors / 896 KiB | U-Boot |
0x0014 … 0x0014 | 0x0001 sector / 64 KiB | environment0 |
0x0015 … 0x0015 | 0x0005 sectors / 64 KiB | devicetree |
0x0016 … 0x0086 | 0x0070 sectors / 7 MiB | Kernel |
0x0087 … 0x0467 | 0x0380 sectors / 56 MiB | RootFS |
PTXdist Deployment
Create SD Card with BSP Image
To install a new firmware use SD cards. To copy the built images on the host system to a connected card type:
$ cd <BSP project>/platform-<platform_name>/images $ sudo dd if=@mod_name_code@_hd.img of=/dev/sdf bs=1M conv=fsync #Assuming the SD card is assigned to /dev/sdf
To find out what device file the SD card has, type “dmesg” after you connect the card to see the system messages. At the bottom you'll see some “Attached scsi …” messages along with something like:
[ 8197.588395] sdf: sdf1
Updating existing firmware over ethernet
To update bootloader / kernel / devicetree in a running system you have to copy the images to a tftp directory and upload them to the eMMC or SD Card.
Please see How to setup TFTP Server
1. Boot from eMMC or SD and stop autoboot in U-Boot
Hit any key to stop autoboot: 0 =>
2. Set U-Boot variable mmcdev according to the drive you want to write to
=> setenv mmcdev <Nr.>
mmcdev depends on the placement of eMMC on TQMLS102xA module
Device assignment:
mmcdev 0 = SD Card (if eMMC ist not placed)
mmcdev 0 = eMMC (if eMMC ist placed)
3. Connect device via ethernet to a tftp server supplying the image
4. Provide the correct network configuration in U-Boot:
- ⇒ setenv autoload no
- ⇒ setenv serverip <serverip> (e.g.: setenv serverip 192.168.100.110)
- ⇒ setenv ipaddr <ipaddr> (e.g.: setenv ipaddr 192.168.100.111)
- ⇒ setenv netmask <netmask> (e.g.: setenv netmask 255.255.255.0)
5. Provide U-Boot the file name of the desired image on the tftp server:
- For U-Boot update on eMMC/SD Card : ⇒ setenv uboot <filename>
- For U-Boot update on QSPI NOR : ⇒ setenv uboot-qspi <filename>
- For Device Tree update on eMMC/SD Card and QSPI NOR : ⇒ setenv fdt_file <filename>
- For Kernel update on eMMC/SD Card and QSPI NOR : ⇒ setenv zimage <filename>
6. Perform Update:
- U-Boot update on eMMC /SD Card : ⇒ run update_uboot
- U-Boot update on QSPI NOR : ⇒ run update_uboot-qspi
- Device Tree update on eMMC /SD Card : ⇒ run update_fdt
- Device Tree update on QSPI NOR : ⇒ run update_fdt-qspi
- Kernel update on eMMC /SD Card : ⇒ run update_kernel
- Kernel update on QSPI NOR : ⇒ run update_kernel-qspi
The u-boot update scripts automatically implement the selection of the primary copy to boot.
Using NFS boot
Prerequisites
To boot the @mod_name@ from network you need a working bootloader in eMMC/SD-card or SPI-NOR (placement option on @mod_name@) which is able to get the kernel image over tftp and to provide the kernel with commandline settings for NFS.
The dtb-file and kernel image have to be provided via tftp and the rootfs via nfs.
Configuration of U-Boot Environment
The bootloader environment needs to be modified to work with your tftp-server and your nfs-server.
- setenv autoload no
- setenv serverip <serverip> (e.g.: setenv serverip 192.168.100.1)
- setenv ipaddr <ipaddr> (e.g.: setenv ipaddr 192.168.0.10)
- setenv netmask <netmask> (e.g.: setenv netmask 255.255.255.0)
- setenv rootpath <rootpath> (NFS share has to set in /etc/exports on the Computer that runs the NFS server first)
- setenv fdt_file <fdt_file> (name of devicetree file to be downloaded from the tftp server)
- setenv zimage <zimage> (name of the Linux kernel image to be downloaded from the tftp server)
PTXdist Images
Finally, you will find the built images in platform-<platformname>/images.
Complete system images:
- uboot-sd.img
The complete system images are intend for:
- development system initialisation
- deployment
Bootloader images:
- u-boot.bin
- u-boot-with-spl-pbl-mmcsd-2017.07.bin
- u-boot-with-spl-pbl-ecc-mmcsd-2017.07.bin
- u-boot-pbl.bin.bswap
- u-boot-pbl.bin.ecc.bswap
- u-boot-pbl.bin.ae.ecc.bswap
Linux images:
- linuximage : Kernel (zImage)
- linuximage-rt : Preempt-RT Kernel (zImage)
Device tree blobs:
* **ls1021a-mbls1021a.dtb** : default device tree without display * **ls1021a-mbls1021a-dmb-ct21.dtb** : with parallel display (DMB S070PWS19HP-FC21) * **ls1021a-mbls1021a-dmb-ct44.dtb** : with parallel display (DMB S070SWV29HG-DC44) * **ls1021a-mbls1021a-glyn-etm0700g0edh6.dtb** : with parallel display (Glyn ETM0700G0EDH6) * **ls1021a-mbls1021a-lvds-tm070jvhg33.dtb** : with LVDS display (Tianma TM070JVHG33) * **ls1021a-mbls1021a-hdmi.dtb** : with HDMI display
Rootfs images:
- root.tgz : Root file system archive (for NFS etc.)
- root.ext2 : Root file system partition image (for system update)
- root.ubi : ubi partition for QSPI NOR
- root.ubifs: ubifs image for QSPI NOR
Firmware images:
- firmware.tgz : firmware image contains all devicetree blobs and linux kernel image
- firmware.img : firmware image archive (for firmware image creation)
PTXdist Downloads
TQ Board Support Packages
The Board Support Packages (BSPs) usually provide source code as well as precompiled images for one or more platforms.
Please see the version matrix for details of each BSP revision.
TQMLS102xA BSP Rev.0112☚ current revision
MD5SUM: 09B5CFAB263070F06C82C791812037FE
TQMLS102xA BSP Rev.0111
MD5SUM: 965464329762A1634C739678F36EB765
TQMLS102xA BSP Rev.0110
MD5SUM: 265CD64894ECF83DA600AC99BD5DECC6
TQMLS102xA BSP Rev.0109
MD5SUM: CFAFA4F29B4C427E82EA7544F90A7AD9
TQMLS102xA BSP Rev.0102
MD5SUM: 1F6BB7DC98E2E10AEB5C528382187971
Linux BSP Rev.0102 for TQMLS102xA - Hotfix QSPI Boot
MD5SUM: 699E8B791D9E25CA3C0CEC31A43200E6
TQMLS102xA BSP Rev.0100
MD5SUM: FA1BDF3A2E42725709DD6F6A61323D7F
TQMLS102xA BSP Prerelease Rev.0005
MD5SUM: 8F8D58F445107A031883ACB222C9875C
TQMLS102xA BSP Prerelease Rev.0004
MD5SUM: B8361BCA27933080939CFF98120EE204
Build System / Toolchains
PTXdist version XXXX.YY.0 is required to compile an OSELAS Toolchain XXXX.YY.Z.
The version of PTXdist and toolchain required to build a given BSP revision is shown in the version matrix.
Documentation
How-to PTXdist
BSP Rev.0106 add second QSPI NOR chip
In BSP Rev.0106 the second QSPI NOR chip has been removed from the default BSP configuration.
If a second device is placed on the TQMLS102xA module please apply the following changes in the
devicetree source file ls1021a-tqmls1021a.dtsi.
&qspi { + fsl,qspi-has-second-chip; status = "okay"; qflash0: mt25ql512@0 { @@ -139,12 +138,4 @@ }; }; }; + qflash1: mt25ql512@1 { + compatible = "micron,n25q512ax3", "cfi-flash"; + #address-cells = <1>; + #size-cells = <1>; + spi-max-frequency = <20000000>; + reg = <1>; + }; };
Use BSP Rev.0100 on MBLS102xA Rev.01xx
BSP Rev.0100 was designed to be run on Rev.0200 of the MBLS012xA.
On Rev.0200 of the MBLS102xA a different package type of the ethernet PHY is used than on Rev.01xx.
This results in different PHY addresses:
Connector | Controller | MBLS102xA Rev.01xx | MBLS102xA Rev.02xx |
---|---|---|---|
X12 | EC1 | 0x0D | 0x0C |
X13 | EC2 | 0x13 | 0x03 |
X11 | EC3 | 0x05 | 0x04 |
In order to use BSP Rev.0100 on MBLS102xA Rev.01xx the following patches must not be applied:
- U-Boot
- 0010-tqmls102xa-set-phy-addresses-for-mbls1021a.0200.patch
- 0011-phy_ti-adapt-hard-coded-skew-to-custom-values.patch
- Linux
- 0110-arm-dt-mbls102xa-set-phy-addresses-for-rev.0200.patch
- 0111-dt-mbls102xa-adapt-phy-timing-to-rev0200.patch
To “disable” these patches, simply comment them out in the corresponding series file:
Please note that the following interfaces cannot be used when using Rev.01xx of the MBLS102xA:
- EC2
- SATA
Use BSP Rev.0100 on MBLS102xA Rev.01xx
BSP Rev.0100 was designed to be run on Rev.0200 of the MBLS012xA.
On Rev.0200 of the MBLS102xA a different package type of the ethernet PHY is used than on Rev.01xx.
This results in different PHY addresses:
Connector | Controller | MBLS102xA Rev.01xx | MBLS102xA Rev.02xx |
---|---|---|---|
X12 | EC1 | 0x0D | 0x0C |
X13 | EC2 | 0x13 | 0x03 |
X11 | EC3 | 0x05 | 0x04 |
In order to use BSP Rev.0100 on MBLS102xA Rev.01xx the following patches must not be applied:
- U-Boot
- 0010-tqmls102xa-set-phy-addresses-for-mbls1021a.0200.patch
- 0011-phy_ti-adapt-hard-coded-skew-to-custom-values.patch
- Linux
- 0110-arm-dt-mbls102xa-set-phy-addresses-for-rev.0200.patch
- 0111-dt-mbls102xa-adapt-phy-timing-to-rev0200.patch
To “disable” these patches, simply comment them out in the corresponding series file:
- EC2
- SATA
Load / Change / Save the Device Tree under U-Boot
Devicetree can be edit with the fdt commands under U-Boot.
Therefore you can have a look at the following tutorial.
1) At first the fdt file has to be loaded from the current boot medium (mmc) into RAM.
=> run loadfdt
2) Next step is to set the predefined U-Boot environment variable fdt_addr through the fdt addr command.
=> fdt addr $fdt_addr
3) Afterwards the size of the fdt has to be increased (to the next 4K divider) in order to have some space for modifications. This is simply done by entering:
=> fdt resize
4) List device in the tree you want to change to have a look at the default settings.
5) To modify a value of a propertie use the fdt set command.
=> fdt set <path> <property> <value>
6) Optional: If you want to save your modified Devicetree back to mmc you'll have to run the following command:
=> mmc dev $mmcdev; mmc write $fdt_addr $fdt_start $fdt_size
* BSP Rev. >0102 <code>⇒ fatwrite mmc $mmcdev:$firmwarepart $fdt_addr $fdt_file <totalsize></code> You can find out <totalsize> of the modified fdt by entering the command fdt header Otherwise you can boot your module with the changed Devicetree right after the modification.
Known Issues PTXdist
TQMLS102xA BSP Rev.0102
Affects | TQMLS102xA with eMMC assembled |
---|---|
Issue | Sporadic kernel messages from eMMC driver:mmc0: Got data interrupt 0x00000002 even though no data operation was in progress |
Effect | No known effect regarding usability and performance of the eMMC |
Solution / Workaround | add patch emmc-remove-interrupt-0x00000002-message.zip |
MBLS102xA Rev.01xx EC2, HDMI, SATA
Affects | EC2, HDMI, SATA on MBLS102xA Rev.01xx |
---|---|
Issue | EC2, HDMI, SATA are not useable on MBLS102xA Rev.01xx |
Effect | EC2, HDMI, SATA are not useable on MBLS102xA Rev.01xx |
Solution / Workaround | Due to a hardware issue there is no workaround |
MBLS102xA Rev.01xx and Rev.0200 JTAG interface
Affects | JTAG interface on MBLS102xA Rev.01xx and Rev.0200 |
---|---|
Issue | Some Debuggers might require VREF voltage at X37_1 |
Effect | Some Debuggers can't establish a connection to the LS102xA |
Solution / Workaround | Place resistor R646 (100R, 0402) on MBLS102xA ![]() |
MBLS102xA Rev.0200 and Rev.0201 JTAG interface
Affects | MBLS102xA Rev.0200 and Rev.0201 |
---|---|
Issue | JTAG interface does not work due to an issue with the signal CPU_3V3_TRST# |
Solution / Workaround | Remove D40 on MBLS102xA Rev.0200 and Rev.0201 ![]() |
MBLS102xA Rev.01xx and TQMLS102xA Rev.02xx SD Card Boot
Affects | MBLS102xA Rev.01xx and TQMLS102xA Rev.02xx |
---|---|
Issue | Booting from SD Card/eMMC is not possible |
Solution / Workaround | Replace resistor R167 (10K, 0402) with (1K, 0402) on MBLS102xA REV.01xx ![]() |
TQMLS102XA-BSP-REV.0100 2nd CPU does not start
Affects | 2nd CPU Core LS102x |
---|---|
Issue | 2nd CPU Core Linux Kernel does not start the 2nd CPU Core |
Effect | only one CPU Core is useable |
Solution / Workaround | Kernel option CONFIG_ARM_PSCI must be selected in the ptxdist kernelconfig |
MBaLS102x
RS485
Yocto
Yocto BSP Version Matrix
BSP Version Matrix
BSP Revision | meta-tq release | Yocto Project / Poky Release | Target machine1) | U-Boot | Linux Kernel |
---|---|---|---|---|---|
0116 | kirkstone | 4.0.18 - Kirkstone | tqmls102xa-mbls102xa | v2017.11 | linux-5.4.y |
0115 | zeus | 3.0.3 - Zeus | tqmls102xa-mbls102xa | v2017.11 | 5.4.23 5.4.23 + rt23 |
0112 | warrior | 2.7.3 - Warrior | tqmls102xa-mbls102xa | v2017.11 | 4.14.78 |
0111 | warrior | 2.7.3 - Warrior | tqmls102xa-mbls102xa | v2017.11 | 4.14.78 |
0110 | rocko | 2.4.4 - Rocko | tqmls102xa-mbls102xa | v2017.11 | 4.14.78 |
0109 | rocko | 2.4.4 - Rocko | tqmls102xa-mbls102xa | v2017.07 | 4.4 |
Yocto Changelog
BSP Version History
REV.0115
BSP
- Update to Yocto Zeus
- Update to Linux Kernel 5.4
- Added kernel linux-tq 5.4
- Added kernel linux-rt-tq 5.4
REV.0112
Linux
- Fixed RS485 support in LPUART driver
- Fix reboot issue
- Disable CONFIG_MTD_CFI and CONFIG_MTD_NAND
- Disable CONFIG_UEVENT_HELPER
- Enable IPv6
- Enable CRYPTO_USER and CRYPTO_USER_API
- Disable SND_SUPPORT_OLD_API and enable SND_HRTIMER
REV.0111
BSP
- Update to Yocto Warrior
U-Boot
- RCW: added SAI muxing
- Added U-Boot variants for SAI muxing
Linux
- improved Kernel config
- added TLV320 codec driver
- DTB: added audio codec support
REV.0110
U-Boot
- combined image (RCW/PBI + U-Boot-Binary)
- e-MMC boot partition access (not bootable)
- UBI: supports RootFS update in U-Boot
Linux
- Update to v4.14.78
- Extended display support
Parallel dispalys (incl. touch):
Glyn ETM0700G0EDH6 (800×480)
DMB S070PWS19HP-FC21 (1024×600)
DMB S070SWV29HG-DC44 (800×480)
LVDS display (incl. touch):
Tianma TM070JVHG3 (1024×768)
- Enable RS485 at boot
- set USB3 to OTG
- PHY DP83867 reset via SW_RESTART now optional
REV.0109
TQMLS102xA-BSP
U-Boot
- using internal dtb
- added support for -ae variant
- fixed comments in rcw source file
- new version: v2017.07
- e-MMC DSR detection
- support for module identification eeprom (default address 0x54)
- system boot from qspi flash → u-boot/dtb/kernel/rootfs
- dspi0 enabled in kernel
- renamed dtb file: ls1021a-tqmls1021a-mbls102xa.dts
- RX ethernet workaround message
Linux
- removed u-boot compatibility changes from linux device tree
- set lpuart0 to original clock source sysclk
- cpu speed throttling via die temperature
- fixed e-mmc bus width
- dspi0 enabled in kernel
Yocto Images
Target Machine: tqmls102xa-mbls102xa
System Images
Boot Device | Symlink | File |
---|---|---|
SD Card/eMMC | ||
SD Card/eMMC | tq-image-generic-tqmls102xa-mbls102xa.wic | tq-image-generic-tqmls102xa-mbls102xa-<build_timestamp>.rootfs.wic |
Bootloader Binaries
Boot Device | Symlink | File |
---|---|---|
QSPI NOR | u-boot.bin | u-boot-ae_qspi_ecc_can-2017.11-r0.bin |
QSPI NOR | u-boot.bin-qspi | u-boot-qspi-2017.11-r0.bin |
QSPI NOR | u-boot.bin-qspi_sai | u-boot-qspi_sai-2017.11-r0.bin |
QSPI NOR | u-boot.bin-qspi_ecc | u-boot-qspi_ecc-2017.11-r0.bin |
QSPI NOR | u-boot.bin-qspi_can | u-boot-qspi_can-2017.11-r0.bin |
QSPI NOR | u-boot.bin-qspi_ecc_can | u-boot-qspi_ecc_can-2017.11-r0.bin |
QSPI NOR | u-boot.bin-ae_qspi_ecc | u-boot-ae_qspi_ecc-2017.11-r0.bin |
SD/eMMC | u-boot.bin-sd | u-boot-sd-2017.11-r0.bin |
SD/eMMC | u-boot.bin-sd_sai | u-boot-sd_sai-2017.11-r0.bin |
SD/eMMC | u-boot.bin-sd_ecc | u-boot-sd_ecc-2017.11-r0.bin |
SD/eMMC | u-boot.bin-sd_can | u-boot-sd_can-2017.11-r0.bin |
SD/eMMC | u-boot.bin-sd_ecc_can | u-boot-sd_ecc_can-2017.11-r0.bin |
Linux Kernel Image
Symlink | File |
---|---|
zImage | zImage–5.4-r0-tqmls102xa-mbls102xa-<build_timestamp>.bin |
Devicetree Blobs
Symlink | Description |
---|---|
ls1021a-mbls1021a.dtb | Default |
ls1021a-mbls1021a-dmb-ct21.dtb | Default for DMB-Display |
ls1021a-mbls1021a-dmb-ct44.dtb | Default for DMB-Display |
ls1021a-mbls1021a-glyn-etm0700g0edh6.dtb | Default for GLYN-Display |
ls1021a-mbls1021a-hdmi.dtb | Default with HDMI interface activated |
ls1021a-mbls1021a-lvds-tm070jvhg33.dtb | Default with LVDS interface activated |
Rootfs images
Symlink | File |
---|---|
tq-image-generic-tqmls102xa-mbls102xa.ext4 | tq-image-generic-tqmls102xa-mbls102xa-<build_timestamp>.rootfs.ext4 |
tq-image-generic-tqmls102xa-mbls102xa.tar.gz | tq-image-generic-tqmls102xa-mbls102xa-<build_timestamp>.rootfs.tar.gz |