Differences

This shows you the differences between two versions of the page.


Previous revision
en:arm:tqma8xxs:data [2023/08/30 12:26] (current) – added pike OS liedmann
Line 1: Line 1:
 +~~NOCACHE~~
 +====== Entry Page ======
 +
 +===== Product URL list =====
 +
 +[[https://www.tq-group.com/en/products/tq-embedded/arm-architecture/tqma8xxs/|TQ product page TQMa8XxS]]\\  
 +
 +===== Board Support Packages =====
 +  * [[en:arm:tqma8xxs:linux:yocto:overview| YOCTO Linux BSP Documentation]]
 +  * [[.:pikeos:overview|PikeOS BSP Information]]
 +
 +----
 +
 +⠀⠀[[https://www.tq-group.com/en/products/tq-embedded/arm-architecture/tqma8xxs/#downloads |TQMa8XxPS Bootloader Fix: ERR051393]]
 +
 +
 +===== Third-Party Add-Ons =====
 +   * [[:en:third-party:ittia:db-sql|ITTIA DB SQL]]
 +<WRAP hide>
 +   * [[:en:third-party:systemcorp:iec61850|SystemCORP IEC 61850]]
 +   * [[:en:third-party:netmodule:iec62439|NetModule IEC 62439]]
 +</WRAP>
 +
 +===== Starterkit =====
 +
 +  * [[en:arm:tqma8xxs:mb-smarc-2:dip_switches|  MB-SMARC-2 DIP switch settings]]
 +
 +====== Hardware ======
 +
 +===== Debug Connection =====
 +
 +The TQMa8XxS debug UART is connected via a RS232 Tranceiver to X39 (Molex Connector) on the MB-SMARC-2. A Molex/Sub-D cable is part of the STKa8xxS accessory set. 
 +
 +===== Onboard I2C devices =====
 +<panel type="info" title="Onboard I2C devices" no-body="true">
 +
 +<accordion>
 +
 +<panel title="TQMa8XxS Rev.03xx / MB-SMARC-2 Rev.01xx">
 +^ I2C bus  ^  TQMa8XxS  ^^^^^^
 +^ I2C1  |  0x1B\\ Temperature sensor  |  0x33\\ EEPROM\\  (Protection Command)  |  0x48\\ Trust Secure Element (optional)  |  0x50\\  EEPROM  |  0x51\\ RTC (optional)  |  0x53\\  EEPROM  |  0x6A\\ PCIe clock generator  |
 +^ PMIC_I2C  |  0x08\\ PMIC  |||||||
 +^ DSI0_I2C  |  0x0F \\ eDP Bridge\\  <wrap important>Only placed on TQMa8XxS with Display Port support</wrap>  |||||||
 +
 +^ I2C bus  ^  MB-SMARC-2  ^^^
 +^ I2C1  |  0x30\\ Audio-Codec  |  0xA0\\ EEPROM  |  0xAE\\ EEPROM  |
 +</panel>
 +
 +<panel title="TQMa8XxS Rev.02xx / MB-SMARC-2 Rev.01xx">
 +^ I2C bus  ^  TQMa8XxS  ^^^^^^
 +^ I2C1  |  0x1B\\ Temperature sensor  |  0x33\\ EEPROM\\  (Protection Command)  |  0x48\\ Trust Secure Element (optional)  |  0x50\\  EEPROM  |  0x51\\ RTC (optional)  |  0x53\\  EEPROM  |  0x6A\\ PCIe clock generator  |
 +^ PMIC_I2C  |  0x08\\ PMIC  |||||||
 +^ DSI0_I2C  |  0x2C \\ eDP Bridge\\  <wrap important>Only placed on TQMa8XxS with Display Port support</wrap>  |||||||
 +
 +^ I2C bus  ^  MB-SMARC-2  ^^^
 +^ I2C1  |  0x30\\ Audio-Codec  |  0xA0\\ EEPROM  |  0xAE\\ EEPROM  |
 +</panel>
 +
 +<panel title="TQMa8XxS Rev.01xx / MB-SMARC-2 Rev.01xx">
 +^ I2C bus  ^  TQMa8XxS  ^^^^^^  
 +^ I2C1  |  0x19\\ Temperature sensor  |  0x2C \\ eDP Bridge\\  <wrap important>Only placed on TQMa8XxS with Display Port support</wrap>  |  0x31\\ EEPROM  |  0x50\\  EEPROM  |  0x51\\  EEPROM  |  0x68\\ RTC (optional)  |
 +^ PMIC_I2C  |  0x08\\ PMIC  ||||||
 +
 +^ I2C bus  ^  MB-SMARC-2  ^^^
 +^ I2C1  |  0x30\\ Audio-Codec  |  0xA0\\ EEPROM  |  0xAE\\ EEPROM  |
 +</panel>
 +
 +</accordion>
 +
 +</panel>
 +====== Hardware Issues ======
 +
 +====== Linux BSP ======
 +===== U-Boot =====
 +<panel type="primary" title="U-Boot">
 +^ Feature  ^^^^  TQMa8.BSP Revision  ^  Remarks  ^
 +^ TQ Product  ^ Chip   ^ Interface  ^ Function  ^ 0081 - 0091 ^ ::: ^
 +| TQMa8XxS  | i.MX8X  | ENET0  | GbE  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | ENET1  | GbE  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | GPIO  |  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | I²C  | EEPROM, Temperature Sensors  |  ✔  |  | 
 +| TQMa8XxS  | i.MX8X  | UART0  | Debug Console  |  ✔  |  default console  |
 +| TQMa8XxS  | i.MX8X  | USB  | Host  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | USB  | OTG  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | uSDHC  | eMMC / SD-Card  |  ✔  |  SD card / eMMC  |
 +| TQMa8XxS  | i.MX8X  | QSPI  | QSPI NOR  |  ✔  |   |
 +| TQMa8XxS  | i.MX8X  | Fuses  | OTP Fuses  |  ✔  |   |
 +</panel>
 +
 +<accordion collapsed="true">
 +<panel type="primary" title="U-Boot - Old Revision">
 +^ Feature  ^^^^ BSP Revision  ^^^^^^^^^^^^^ Remarks  ^
 +^ TQ Product  ^ Chip   ^ Interface  ^ Function  ^  0001  ^  0002  ^  0005  ^  0006  ^  0007  ^  0016  ^  0017  ^  0028  ^  0033  ^  0035  ^  0036  ^  0038  ^  0055  ^ ::: ^
 +| TQMa8XxS  | i.MX8X  | ENET0  | GbE  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | ENET1  | GbE  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | GPIO  |  |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | I²C  | EEPROM, Temperature Sensors  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  | 
 +| TQMa8XxS  | i.MX8X  | UART0  | Debug Console  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | default console  |
 +| TQMa8XxS  | i.MX8X  | USB  | Host  |    |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | USB  | OTG  |    |    |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| TQMa8XxS  | i.MX8X  | uSDHC  | eMMC / SD-Card  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | SD card / eMMC  |
 +| TQMa8XxS  | i.MX8X  | QSPI  | QSPI NOR  |    |      |    |      ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |   |
 +| TQMa8XxS  | i.MX8X  | Fuses  | OTP Fuses  |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |   |
 +</panel>
 +</accordion>
 +
 +<panel type="info" title="Supported boot devices" no-body="true">
 +^  Boot device  ^  supported  ^
 +|  eMMC  |  ✔  |
 +|  SD Card  |  ✔  |
 +|  QSPI NOR  |  ✔  |    
 +</panel>
 +
 +===== Operating System =====
 +<panel type="primary" title="Operating System">
 +^ Feature  ^^^^  TQMa8.BSP Revision  ^  Remarks  ^
 +^ TQ Product  ^ Chip  ^ Interface  ^ Function  ^  0081 - 0091  ^ ::: ^ 
 +| TQMa8XxS  | i.MX8X  | Cortex M4  | Microcontroller  |  ✔  |  |  
 +| :::  | i.MX8X  | ENET0  | GbE  |  ✔  |  |
 +| :::  | i.MX8X  | ENET1  | GbE  |  ✔  |  |
 +| :::  | i.MX8X  | FLEXCAN0  | CAN  |  ✔  |  CAN FD not supported 
 +| :::  | i.MX8X  | FLEXCAN1  | CAN  |  ✔  |  CAN FD not supported  |
 +| :::  | i.MX8X  | GPU  | Hardware Acceleration |  ✔  |  |
 +| :::  | i.MX8X  | I²C1  | Bus Access |  ✔  |  [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]]  |
 +| :::  | i.MX8X  | MIPI DSI  | LVDS  |  ✔  |  Only available on TQMa8XQPS-AA  |
 +| :::  | i.MX8X  | UART0  | Serial console  |  ✔  |  |
 +| :::  | i.MX8X  | uSDHC  | uSDHC0  eMMC  |  ✔  |  |  
 +| :::  | i.MX8X  | :::  | uSDHC1  SD Card  |  ✔  |  |
 +| :::  | i.MX8X  | USB 3.0  | TUSB8041I  |  ✔  |   |
 +| :::  | i.MX8X  | VPU  | Hardware Acceleration |  ✔  |  | 
 +| :::  | TUSB8041I  | USB1  | Host(USB 2.0)  |  ✔  |   |
 +| :::  | TUSB8041I  | USB2  | Host(USB 3.0)  |  ✔  |   |
 +| :::  | TUSB8041I  | USB3  | Host(USB 3.0)  |  ✔  |   |
 +| :::  | TUSB8041I  | USB4  | Host(USB 2.0)  |  ✔  |   |
 +| :::  | i.MX8X  | QSPI  | NOR Flash  |  ✔  | |
 +| :::  | i.MX8X  | PCIe  | Host  |  ✔  |  |
 +</panel>
 +
 +<accordion collapsed="true">
 +<panel type="primary" title="Operating System - Old Revisions">
 +^ Feature  ^^^^ BSP Revision  ^^^^^^^^^^^^^ Remarks  ^
 +^ TQ Product  ^ Chip  ^ Interface  ^ Function  ^  0001  ^  0002  ^  0005  ^  0006  ^  0007  ^  0016  ^  0017  ^  0028  ^  0033  ^  0035  ^  0036  ^  0038  ^  0055  ^ ::: ^ 
 +| TQMa8XxS  | i.MX8X  | Cortex M4  | Microcontroller  |    |    |    |    |    |    |    |    |    |    |    |    |  ✔  |  |  
 +| :::  | i.MX8X  | ENET0  | GbE  |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| :::  | i.MX8X  | ENET1  | GbE  |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| :::  | i.MX8X  | FLEXCAN0  | CAN  |    |    |            |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | CAN FD not supported 
 +| :::  | i.MX8X  | FLEXCAN1  | CAN  |    |    |            |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | CAN FD not supported  |
 +| :::  | i.MX8X  | GPU  | Hardware Acceleration |    |    |            |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| :::  | i.MX8X  | I²C1  | Bus Access |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | [[./linux/yocto/overview#onboard_i2c_devices|See onboard I2C devices]]  |
 +| :::  | i.MX8X  | MIPI DSI  | LVDS  |                      ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | Only available on TQMa8XQPS-AA  |
 +| :::  | i.MX8X  | UART0  | Serial console  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| :::  | i.MX8X  | uSDHC  | uSDHC0  eMMC  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |  
 +| :::  | i.MX8X  | :::  | uSDHC1  SD Card  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +| :::  | i.MX8X  | USB 3.0  | TUSB8041I  |      |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |   |
 +| :::  | i.MX8X  | VPU  | Hardware Acceleration |    |    |            |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  | 
 +| :::  | TUSB8041I  | USB1  | Host(USB 2.0)  |    |    |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔     |
 +| :::  | TUSB8041I  | USB2  | Host(USB 3.0)  |    |    |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |   |
 +| :::  | TUSB8041I  | USB3  | Host(USB 3.0)  |    |    |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |   |
 +| :::  | TUSB8041I  | USB4  | Host(USB 2.0)  |    |    |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |   |
 +| :::  | i.MX8X  | QSPI  | NOR Flash  |      |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  | |
 +| :::  | i.MX8X  | PCIe  | Host  |      |    |    |    |    |    |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  ✔  |  |
 +</panel>
 +</accordion>
 +
 +===== FAQ =====
 +===== Yocto =====
 +===== Yocto BSP Version Matrix - Old Revisions=====
 +<accordion collapsed="true">
 +<panel type="primary" title="BSP Version Matrix - Old Revisions">
 +^BSP Revision ^++meta-tq release|\\ [[https://github.com/tq-systems/meta-tq]]++ ^Yocto Project / Poky Release ^Target machine((i.e. value for [[https://www.yoctoproject.org/docs/2.4.4/ref-manual/ref-manual.html#var-MACHINE|MACHINE]] variable)) ^U-Boot ^Linux Kernel ^
 +
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0055|0055]]  |  3.0 - Zeus  |  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]]  |  ++tqma8xqps-mb-smarc-2|TQMa8XQPS REv.03xx on MB-SMARC-2++ \\  ++tqma8xqps-mb-smarc-2-r0200|TQMa8XQPS REv.02xx on MB-SMARC-2++ \\  ++tqma8xdps-mb-smarc-2|TQMa8XDPS on MB-SMARC-2++  |  [[https://github.com/tq-systems/u-boot-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0055|v2020.04-imx-5.4.47-2.2.0]]  |  [[https://github.com/tq-systems/linux-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0055|lf-5.4.y-1.0.0]]  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0038|0038]]  |  3.0 - Zeus  |  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]]  |  ++tqma8xqps-mb-smarc-2|TQMa8XQPS REv.03xx on MB-SMARC-2++ \\  ++tqma8xqps-mb-smarc-2-r0200|TQMa8XQPS REv.02xx on MB-SMARC-2++ \\  ++tqma8xdps-mb-smarc-2|TQMa8XDPS on MB-SMARC-2++  |  [[https://github.com/tq-systems/u-boot-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0038|v2020.04-imx-5.4.47-2.2.0]]  |  [[https://github.com/tq-systems/linux-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0038|lf-5.4.y-1.0.0]]  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0036|0036]]  |  3.0 - Zeus  |  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]]  |  ++tqma8xqps-mb-smarc-2|TQMa8XQPS REv.03xx on MB-SMARC-2++ \\  ++tqma8xqps-mb-smarc-2-r0200|TQMa8XQPS REv.02xx on MB-SMARC-2++  |  [[https://github.com/tq-systems/u-boot-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0036|v2020.04-imx-5.4.47-2.2.0]]  |  [[https://github.com/tq-systems/linux-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0036|lf-5.4.y-1.0.0]]  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0035|0035]]  |  3.0 - Zeus  |  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]]  |  ++tqma8xqps-mb-smarc-2|TQMa8XQPS REv.03xx on MB-SMARC-2++ \\  ++tqma8xqps-mb-smarc-2-r0200|TQMa8XQPS REv.02xx on MB-SMARC-2++  |  [[https://github.com/tq-systems/u-boot-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0035|v2020.04-imx-5.4.47-2.2.0]]  |  [[https://github.com/tq-systems/linux-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0035|lf-5.4.y-1.0.0]]  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0033|0033]]  |  3.0 - Zeus  |  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]]  |  ++tqma8xqps-mb-smarc-2|TQMa8XQPS REv.03xx on MB-SMARC-2++ \\  ++tqma8xqps-mb-smarc-2-r0200|TQMa8XQPS REv.02xx on MB-SMARC-2++  |  [[https://github.com/tq-systems/u-boot-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0033|v2020.04-imx-5.4.47-2.2.0]]  |  [[https://github.com/tq-systems/linux-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0033|lf-5.4.y-1.0.0]]  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0028|0028]]  |  3.0 - Zeus  |  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus-tqma8|zeus-tqma8]]  |  tqma8xqps-mb-smarc-2  |  [[https://github.com/tq-systems/u-boot-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0028|v2019.04-lf-5.4.y-1.0.0]]  |  [[https://github.com/tq-systems/linux-tqmaxx/tree/zeus.TQMa8XxS.BSP.SW.0028|lf-5.4.y-1.0.0]]  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8x.BSP.SW.0017|0017]]  |  2.5.2 - Sumo  |  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]]  |  tqma8xps-mb-smarc-2\\  tqma8xds-mb-smarc-2  |   v2018.03-rel_imx_4.14.98_2.2.0_ga  |  rel_imx_4.14.98_2.2.0_ga  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8x.BSP.SW.0016|0016]]  |  2.5.2 - Sumo  |  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]]  |  tqma8xps-mb-smarc-2\\  tqma8xds-mb-smarc-2  |   v2018.03-rel_imx_4.14.98_2.2.0_ga  |  rel_imx_4.14.98_2.2.0_ga  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8.BSP.SW.0007|0007]]  |  2.5.2 - Sumo  |  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]]  |  tqma8xps-mb-smarc-2\\  tqma8xds-mb-smarc-2    |  v2018.03 rel_imx_4.14.78_1.0.0_ga  |  rel_imx_4.14.78_1.0.0_ga  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8.BSP.SW.0006|0006]]  |  2.5.2 - Sumo  |  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]]  |  tqma8xps-mb-smarc-2  |  v2018.03 rel_imx_4.14.78_1.0.0_ga  |  rel_imx_4.14.78_1.0.0_ga  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8.BSP.SW.0005|0005]]  |  2.5.2 - Sumo  |  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]]  |  tqma8qxps-mb-smarc-2  |  v2018.03 rel_imx_4.14.78_1.0.0_ga  |  rel_imx_4.14.78_1.0.0_ga  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/releases/tag/sumo.TQMa8Xx.BSP.SW.0002|0002]]  |  2.5.2 - Sumo  |  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo-tqma8x|sumo-tqma8x]]  |  tqma8qxs-mb-smarc-2  |  v2018.03 rel_imx_4.14.78_1.0.0_ga  |  rel_imx_4.14.78_1.0.0_ga  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/releases/tag/rocko.TQMa8MQ.BSP.SW.0001|0001]]  |  2.4.4 - Rocko  |  [[https://github.com/tq-systems/ci-meta-tq/tree/rocko-tqma8x|rocko-tqma8x]]  |  tqma8qxs-mb-smarc-2  |  v2017.03 rel_4.9.88_imx_imx8qxp_beta2  |  rel_imx_4.9.88_imx8qxp_beta2 
 +</panel>
 +</accordion>
 +
 +<panel type="info" title="BSP / Hardware compatibility">
 +^ ^  TQMa8XxS  ^^^
 +^::: ^  Rev.01xx  ^  Rev.02xx  ^  Rev.03xx  ^
 +^  BSP Rev < 0028  |  ✔  |         |
 +^  BSP REV = 0028  |      ✔  |     |
 +^  BSP REV ≥ 0033  |      ✔  |  ✔  |
 +</panel>
 +
 +{{section>..:..:general_information:yocto:tips#bsp_release_auto_notification&noheader}}
 +
 +===== Yocto Target Machines =====
 +<panel type="primary" title="Yocto Target Machines" no-body="true">
 +
 +^  TQMa8.BSP Revision  ^  Target machine  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0038|≥0038]]    tqma8xqps-mb-smarc-2 \\ tqma8xqps-mb-smarc-2-r0200 \\ tqma8xdps-mb-smarc-2  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0033|≥0033]]    tqma8xqps-mb-smarc-2 \\ tqma8xqps-mb-smarc-2-r0200  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/zeus.TQMa8.BSP.SW.0028|0028]]    tqma8xqps-mb-smarc-2  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8.BSP.SW.0007|≥0007]]    tqma8xps-mb-smarc-2 \\ tqma8xds-mb-smarc-2  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8.BSP.SW.0006|0006]]    tqma8xps-mb-smarc-2  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/tree/sumo.TQMa8.BSP.SW.0005|0005]]    tqma8qxps-mb-smarc-2  |
 +|  [[https://github.com/tq-systems/ci-meta-tq/releases/tag/rocko.TQMa8MQ.BSP.SW.0001|≥0001]]    tqma8qxs-mb-smarc-2  |
 +
 +\\
 +</panel> 
 +
 +===== Yocto Changelog  =====
 +<panel type="info" title="BSP Version History" no-body="true">
 +<accordion collapsed="true">
 +<panel title="Rev.0087">
 +**BSP**
 +  * Update to Yocto Kirkstone
 +**U-Boot**
 +  * Update imx-seco
 +  * Update imx seco-libs
 +  * Update imx-sc-firmware  
 +  
 +**Linux**
 +  * Linux 5.15 support based on linux-fslc 5.15 + imx
 +</panel>
 +
 +<panel title="Rev.0082">
 +
 +**BSP**
 +  * Update to Yocto Hardknott
 +
 +**Linux**
 +  * Linux 5.10 support based on linux-fslc 5.10 + imx
 +
 +</panel>
 +
 +<panel title="Rev.0055">
 +
 +**BSP**
 +
 +  * Support for Cortex M4 enabled bootstream
 +  * Update SCFW version: basic CortexM4 support for TQMa8Xx[S]
 +  * Allow building bootstream with Cortex M4 demo for TQ Systems SOM
 +  * Disable packages only relevant for NXP STK:
 +    * nxp8987 WiFi
 +    * imx-m[4,7]-demos
 +
 +**U-Boot**
 +
 +  * Add reserved memory nodes in DT to prevent U-Boot accessing M4 reserved memory
 +  * Fix location U-Boot config node in DT
 +  * Prevent voltage switch error message for e-MMC. This is not a real error but ugly behaviour which was fixed for other SOM before
 +  * Add GPIO_OPEN_DRAIN to I2C GPIO to prevent warnings (sync with kernel)
 +  * Fixed TQMa8XDPS board name handling
 +  * DSR support for Micron SPI NOR
 +  * I2C recovery gpio
 +
 +**Linux**
 +
 +  * Device trees for Cortex M4 demos
 +  * Add GPIO_OPEN_DRAIN to I2C GPIO to prevent warnings
 +  * Improve kernel config:
 +    * Remove ACPI
 +    * Remove unused audio stuff
 +    * Remove unused net devices
 +    * Enable Vision Components GmbH MIPI CSI cameras
 +  * DSR support for Micron SPI NOR
 +  * I2C recovery gpio
 +
 +</panel>
 +
 +
 +<panel title="Rev.0038">
 +
 +**BSP**
 +  * Add support for new machine TQMa8XDPS
 +
 +**U-Boot**
 +  * fix tqma8xxs_get_boardname for TQMa8DXPS again
 +
 +**Linux**
 +  * Add support for TQMa8XDPS
 +  * I2C recovery gpio for TQMa8XxS
 +  * Port fixes for Codec on STK to prevent race condition that could cause driver load failure
 +
 +</panel>
 +
 +<panel title="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
 +
 +</panel>
 +
 +<panel title="Rev.0035">
 +
 +**BSP**
 +  * Support for tqma8xdp[4]-mba8xx
 +
 +**U-Boot**
 +  * Fix board name for TQMa8XDP[4]
 +
 +**Linux**
 +  * Support for tqma8xdp[4]-mba8xx
 +
 +
 +
 +
 +</panel>
 +
 +<panel title="Rev.0033">
 +**BSP**
 +  * Initial production release for TQMa8XQPS
 +  * Prepare REV.0300 Support, support for REV.0200 moved to separate config (tqma8xqps-mb-smarc-2-r0200)
 +  * Drop support for imx-scu firmware v1.3.1
 +  * Drop support for imx-seco firmware v2.5.6
 +
 +**U-Boot**
 +  * Fix not working update scripts when exchanging an SD card just before start updating
 +  * Allow DSR for Macronix SPI NOR on all supported TQ-Systems SOM
 +
 +
 +**Linux**
 +  * Cleanup LVDS support device trees
 +  * Add missing I2C GPIO recovery
 +  * Fix earlycon bootarg
 +  * Add support for LVDS AUO G133HAN.01 full HD panel
 +  * Allow DSR for Macronix SPI NOR on all supported TQ-Systems SOM
 +  * Enable VPU support
 +  * Add SMARC-2 GPIO
 +  * Add SMARC-2 DSI0 I2C
 +  * Add SMARC-2 LVDS1 with example
 +  * Add support for second UART
 +</panel>
 +
 +<panel title="Rev.0028">
 +**BSP**
 +  * Update to Yocto Zeus
 +  * Update to SCU firmware 1.3.1
 +  * Update to U-Boot v2019.04-lf-5.4.y-1.0.0
 +  * Update to Linux kernel lf-5.4.y-1.0.0
 +  * Support bootstream for FlexSPI 
 +  * Support bootstream for mfgtool config
 +
 +**U-Boot**
 +  * Display CPU info
 +  * Add mfgtool config
 +  * Single config for SD / e-MMC / FlexSPI Boot device
 +
 +**Linux**
 +  * Added USB support
 +  * Added PCIe support 
 +</panel>
 +
 +<panel title="Rev.0017">
 +**BSP**
 +  * Update to SCU firmware 1.2.10
 +  * added support for PMIC info in SCU firmware 
 +
 +**U-Boot**
 +  * added support for SCU PMIC info
 +  * added initial USB support
 +  * added support for module EEPROM readout
 +
 +**Linux**
 +  * added initial USB support
 +  * fix QSPI NOR access for tqma8xxs
 +</panel>
 +
 +<panel title="Rev.0016">
 +
 +  * Added LVDS Support
 +  * Added CAN Support
 +  * Updated to U-Boot v2018.03-rel_imx_4.14.98_2.2.0_ga
 +  * Updated to Linux Kernel rel_imx_4.14.98_2.2.0_ga
 +</panel>
 +
 +<panel title="Rev.0007">
 +
 +  * TQMa8XDS support
 +  * CAN / Ethernet preconfigured via systemd service
 +  * Ethernet PHY LED config fix
 +  * Better reserved memory config for TQMa8XDS
 +</panel>
 +
 +<panel title="Rev.0006">
 +
 +  * Rename configs / DT to reflect module name
 +  * SCU firmware with internal PCIe clk
 +</panel>
 +
 +<panel title="Rev.0005">
 +
 +  * test network support in linux - support net boot (GBE0)
 +</panel>
 +
 +<panel title="Rev.0002">
 +
 +  * port to yocto sumo 
 +</panel>
 +
 +<panel title="Rev.0001">
 +
 +  * initial release
 +</panel>
 +</accordion>
 +</panel>
 +
 +===== Yocto Partitions =====
 +
 +<panel type="primary" title="SD / eMMC Image Partitioning">
 +
 +  * sector size 512 Byte
 +  * unpartitioned area: 8MiB (0x4000 sectors)
 +
 +^ Offset  ^ Size  ^ Usage  ^
 +|0x00000  | 0x00001 sectors  / 512 Byte  | MBR / Partition Table  |
 +|0x00001  | 0x00040 sectors  / 32 KiB  | bootstream  |
 +|0x00800  | 0x00800 sectors / 4 MiB  | env  |
 +|0x20800  | 0x20000 sectors / 64 MiB  | /boot  |
 +|0x24000  | - sectors / - MiB  | /rootFS  |
 +</panel>
 +
 +===== Yocto images =====
 +<accordion collapsed="true">
 +<panel title="Target Machine: tqma8xdps-mb-smarc-2">
 +
 +
 +**System Images**
 +
 +<grid>
 +<col sm="12">
 +^ Boot Device  ^ Symlink  ^ File  ^
 +^ SD Card/eMMC  | tq-image-weston-tqma8xdps-mb-smarc-2.wic | tq-image-weston-tqma8xdps-mb-smarc-2-<build_timestamp>.rootfs.wic |
 +</col>
 +</grid>
 +
 +
 +**Bootloader Binaries**
 +
 +<grid>
 +<col sm="12">
 +^ Boot Device  ^ Symlink  ^ File  ^
 +^ SD/eMMC  | imx-boot  | imx-boot-tqma8xdps-mb-smarc-2-sd.bin-flash_spl |
 +</col>
 +</grid>
 +
 +**Linux Kernel Image**
 +
 +<grid>
 +<col sm="12">
 +^ Symlink  ^ File  ^
 +| Image  | Image--5.10.74+git0+a988e804a1-r0-tqma8xdps-mb-smarc-2-<build_timestamp>.bin  |
 +</col>
 +</grid>
 +
 +**Devicetree Blobs**
 +<grid>
 +<col sm="12">
 +^ Symlink  ^ Description  ^
 +| imx8dxp-tqma8xdps-mb-smarc-2.dtb | Default |
 +| imx8dxp-tqma8xdps-mb-smarc-2-lvds0-tm070jvhg33.dtb  | Default with LVDS0 interface activated  |
 +| imx8dxp-tqma8xdps-mb-smarc-2-lvds1-tm070jvhg33.dtb  | Default with LVDS1 interface activated  |
 +| imx8dxp-tqma8xdps-mb-smarc-2-rpmsg.dtb  | Default with RPMSG support  |
 +
 +</col>
 +</grid>
 +
 +
 +**Rootfs images**
 +<grid>
 +<col sm="12">
 +^ Symlink  ^ File  ^
 +| tq-image-weston-tqma8xdps-mb-smarc-2.ext4  | tq-image-weston-tqma8xdps-mb-smarc-2-<build_timestamp>.rootfs.ext4   |
 +| tq-image-weston-tqma8xdps-mb-smarc-2.tar.gz  | tq-image-weston-tqma8xdps-mb-smarc-2-<build_timestamp>.rootfs.tar.gz  |
 +</col>
 +</grid>
 +</panel>
 +
 +
 +
 +<panel title="Target Machine: tqma8xqps-mb-smarc-2">
 +
 +
 +**System Images**
 +
 +<grid>
 +<col sm="12">
 +^ Boot Device  ^ Symlink  ^ File  ^
 +^ SD Card/eMMC  | tq-image-weston-tqma8xqps-mb-smarc-2.wic | tq-image-weston-tqma8xqps-mb-smarc-2-<build_timestamp>.rootfs.wic |
 +</col>
 +</grid>
 +
 +
 +**Bootloader Binaries**
 +
 +<grid>
 +<col sm="12">
 +^ Boot Device  ^ Symlink  ^ File  ^
 +^ SD/eMMC  | imx-boot  | imx-boot-tqma8xqps-mb-smarc-2-sd.bin-flash_spl |
 +</col>
 +</grid>
 +
 +**Linux Kernel Image**
 +
 +<grid>
 +<col sm="12">
 +^ Symlink  ^ File  ^
 +| Image  | Image--5.10.74+git0+a988e804a1-r0-tqma8xqps-mb-smarc-2-<build_timestamp>.bin  |
 +</col>
 +</grid>
 +
 +**Devicetree Blobs**
 +<grid>
 +<col sm="12">
 +^ Symlink  ^ Description  ^
 +| imx8qxp-tqma8xqps-mb-smarc-2.dtb | Default |
 +| imx8qxp-tqma8xqps-mb-smarc-2-lvds0-tm070jvhg33.dtb  | Default with LVDS0 interface activated  |
 +| imx8qxp-tqma8xqps-mb-smarc-2-lvds1-tm070jvhg33.dtb  | Default with LVDS1 interface activated  |
 +| imx8qxp-tqma8xqps-mb-smarc-2-rpmsg.dtb  | Default with RPMSG support  |
 +
 +</col>
 +</grid>
 +
 +
 +**Rootfs images**
 +<grid>
 +<col sm="12">
 +^ Symlink  ^ File  ^
 +| tq-image-weston-tqma8xqps-mb-smarc-2.ext4  | tq-image-weston-tqma8xqps-mb-smarc-2-<build_timestamp>.rootfs.ext4   |
 +| tq-image-weston-tqma8xqps-mb-smarc-2.tar.gz  | tq-image-weston-tqma8xqps-mb-smarc-2-<build_timestamp>.rootfs.tar.gz  |
 +</col>
 +</grid>
 +</panel>
 +</accordion>
 +
 +
 +===== Deployment Yocto =====
 +
 +
 +
 +
 +
 +==== Updating existing firmware over ethernet ====
 +=== Device assignment ===
 +<WRAP round info 40%>__Device assignment:__\\
 +//mmcdev 0// = eMMC\\
 +//mmcdev 1// = SD Card\\
 +</WRAP>
 +
 +===Yocto specific command Update eMMC=== 
 +1. Run the following commands in the Uboot shell to create update script: 
 +<code> 
 +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'
 +</code> 
 +
 +<code> 
 +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'
 +</code> 
 +
 +  * create  the environment variable **rootblks16** and set the value accordingly to the size of the RootFS in this case 2070MB.
 +<WRAP round important> 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 = 40B000<sub>HEX</sub>
 +
 +</WRAP>
 +<code>
 +setenv rootblks16 0x205800
 +</code>
 +
 +==== NFS Boot ====
 +
 +=== uboot command to start netboot ===
 +
 +<code>
 +=> run netboot
 +</code>
  
  • Last modified: 2022/08/04 15:04