[PATCH v3 0/5] Support for TQMa6ULx & TQMa6ULxL modules

Shawn Guo shawnguo at kernel.org
Wed Apr 6 06:02:04 PDT 2022


On Tue, Feb 22, 2022 at 08:09:40AM +0100, Alexander Stein wrote:
> Hi everyone,
> 
> thanks for your feedback on v2.
> 
> Changes in v3:
> * Reviewed-by: Krzysztof Kozlowski to PATCH 1
> * Fixed gpio-keys DT node names in PATCH 2
> 
> Changes in v2:
> * Acked-by: Rob Herring to PATCH 1
> * Removed 'status' property for non-disabled devices in PATCH 2
> * Removed superfluous blank lines in PATCH 2
> * Removed doubled status = "disabled" in PATCH 2
> * Moved 'chosen' node up in PATCH 2
> * Removed unit-address for GPIO buttons in PATCH 2
> * Removed internal (und unsupported) SPI device node in PATCH 2
> * Removed QSPI flash partitions in PATCH 2
> * Rename audio-codec node name in PATCH 2
> 
> Below is the summary from v1 which has not changed.
> 
> This patch series adds support for the TQ-Systems TQMa6ULx & TQMa6ULxL modules.
> Admittedly the name can be confusing, so I'll explain in more detail.
> 
> TQMa6ULx [1] is the module series using i.MX6UL. The 'x' is a placeholder for
> different variants which have a different µC. TQMa6UL1 is using MCIMX6G1 which
> has some peripheries disabled, more about it below. TQMa6UL2 (and TQMa6UL3)
> has a full feature set and are treated identical on Linux side.
> 
> TQMa6ULxL [2] is the LGA variant of TQMa6ULx with a differnt module PCB, but
> still common parts. There is no variant using MCIMX6G1.
> 
> TQMa6ULLx [1] is identical to TQMa6ULx, but using an i.MX6ULL instead.
> There is no TQMa6UL1L.
> 
> TQMa6ULLxL [2] is identical to TQMa6ULxL, but using an i.MX6ULL instead.
> There is no TQMa6ULL1L.
> 
> There are also 2 different mainboards namely MBAa6ULx & MBa6ULxL ('x' here is
> not a placeholder, but part of the name). MBAa6ULx is for non-LGA variants
> TQMa6ULx & TQMa6ULLx, while MBa6ULxL is used for TQMa6ULxL & TQMa6ULLxL.
> It is also possible to mount a TQMa6ULxL to MBa6ULx using an LGA adapter
> providing the sockets.
> 
> TQMa6UL1 uses MCIMX6G1 which has FEC2, CAN2, CSI and LCDIF disabled by fuses.
> This wouldn't be a problem at all, iff fec would support EPROBE_DEFER for
> Ethernet PHYs on a different MDIO bus. Both PHYs are connected to the same MDIO
> bus. This is not a proble, but as FEC2 has the lower base address than FEC1
> it is probed first. For this reason the PHYs have to be attached to FEC2 or
> things wont work. But exactly this breaks on TQMa6UL1 which has no FEC2 at all.
> There is a suggestion for fec driver at [3] but without solution (yet).
> This is the single reason there is a 'tq,imx6ul-tqma6ul1' compatible.
> In order for things to work, the PHYs have to be deleted from fec2 & mdio
> subnode and added to fec1 again.
> 
> Regardings the file structure there is a .dtsi file for
> * common common parts on all 4 module variants (LGA & non-LGA, imx6ul & imx6ull):
>   imx6ul-tqma6ul-common.dtsi
> * common to non-LGA variants only: imx6ul-tqma6ulx-common.dtsi
> * common to LGA variants only: imx6ul-tqma6ulxl-common.dtsi
> 
> This is valid for both TQMa6ULx and TQMa6ULLx. To not introduce another file
> name separation, 'imx6ul-' is the prefix for common parts for imx6ul as well
> as imx6ull.
> 
> Best regards,
> Alexander
> 
> [1] https://www.tq-group.com/de/produkte/tq-embedded/arm-architektur/tqma6ulx/
> [2] https://www.tq-group.com/de/produkte/tq-embedded/arm-architektur/tqma6ulxl/
> [3] https://lkml.org/lkml/2021/10/14/430
> 
> Alexander Stein (4):
>   ARM: dts: imx6ul: add TQ-Systems MBa6ULx device trees
>   ARM: dts: imx6ul: add TQ-Systems MBa6ULxL device trees
>   ARM: dts: imx6ull: add TQ-Systems MBa6ULLx device trees
>   ARM: dts: imx6ull: add TQ-Systems MBa6ULLxL device trees
> 
> Matthias Schiffer (1):
>   dt-bindings: arm: fsl: add TQ Systems boards based on i.MX6UL(L)

Applied all, thanks!



More information about the linux-arm-kernel mailing list