Messages in this thread |  | | Date | Tue, 5 May 2026 11:35:18 -0400 | | From | Frank Li <> | | Subject | Re: [PATCH v4 1/1] arm64: dts: add tqma9596la-mba95xxca |
| |
On Tue, May 05, 2026 at 08:13:42AM +0200, Alexander Stein wrote: > From: Markus Niebel <Markus.Niebel@ew.tq-group.com> > > This adds support for TQMa95xxLA modules, designed to be soldered > on a carrier board. MBa95xxCA is a carrier reference board / starter kit > design. > > There is a common device tree for all variants with e.g. reduced > CPU core / feature count. > > Enable the external accessible PCIe controllers as host, > add clocking and reset GPIO. While at it, add hogs for GPIO > lines from the M.2 slots until M.2 connector driver is available. > > Signed-off-by: Markus Niebel <Markus.Niebel@ew.tq-group.com> > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > --- > Changes in v4: > * Fix LPSPI4 pad muxing and control > > Changes in v3: > * Moved reserved-memory to board-lebel > * Remove VPU reserved memory (unused for now) > * Fix typo in connector comment > > Changes in v2: > * removed useless regulator > * added USB PD source configuration > * Removed unused uart-has-rtscts properties (unused by LPUART) > * Fixed RTS/CTS pullups in pinctrl > * Added thermalzone on module > > arch/arm64/boot/dts/freescale/Makefile | 1 + > .../freescale/imx95-tqma9596la-mba95xxca.dts | 961 ++++++++++++++++++ > .../boot/dts/freescale/imx95-tqma9596la.dtsi | 278 +++++ > 3 files changed, 1240 insertions(+) > create mode 100644 arch/arm64/boot/dts/freescale/imx95-tqma9596la-mba95xxca.dts > create mode 100644 arch/arm64/boot/dts/freescale/imx95-tqma9596la.dtsi > > diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile > index 711e36cc2c990..b47db26224bb9 100644 > --- a/arch/arm64/boot/dts/freescale/Makefile > +++ b/arch/arm64/boot/dts/freescale/Makefile > @@ -507,6 +507,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx95-15x15-frdm.dtb > dtb-$(CONFIG_ARCH_MXC) += imx95-19x19-evk.dtb > dtb-$(CONFIG_ARCH_MXC) += imx95-19x19-evk-sof.dtb > dtb-$(CONFIG_ARCH_MXC) += imx95-toradex-smarc-dev.dtb > +dtb-$(CONFIG_ARCH_MXC) += imx95-tqma9596la-mba95xxca.dtb > dtb-$(CONFIG_ARCH_MXC) += imx95-tqma9596sa-mb-smarc-2.dtb > dtb-$(CONFIG_ARCH_MXC) += imx95-var-dart-sonata.dtb > dtb-$(CONFIG_ARCH_MXC) += imx95-verdin-nonwifi-dahlia.dtb > diff --git a/arch/arm64/boot/dts/freescale/imx95-tqma9596la-mba95xxca.dts b/arch/arm64/boot/dts/freescale/imx95-tqma9596la-mba95xxca.dts > new file mode 100644 > index 0000000000000..1894c2b7db1f0 > --- /dev/null > +++ b/arch/arm64/boot/dts/freescale/imx95-tqma9596la-mba95xxca.dts > @@ -0,0 +1,961 @@ > +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) > +/* > + * Copyright (c) 2024-2026 TQ-Systems GmbH <linux@ew.tq-group.com>, > + * D-82229 Seefeld, Germany. > + * Author: Alexander Stein > + * Author: Markus Niebel > + */ > + ... > + > + m2-keyb-wdisable1-hog { > + gpio-hog; > + gpios = <12 GPIO_ACTIVE_LOW>; > + output-low; > + line-name = "M2_KEYB_WDISABLE1#"; > + };
These GPIOs have not been refered, so ti,tca9539 may probe after pci driver. Please monitor thread about m.2 key e https://lore.kernel.org/linux-pci/7kpwgrxgtrpavmm2aezv66csuumma6wzsqtwvmojwgrtiqasjf@gczv34l6pnma/
> + }; > + ... > + > +/* X16 M2 / E-Key mPCIe */ > +&pcie0 { > + pinctrl-0 = <&pinctrl_pcie0>; > + pinctrl-names = "default"; > + clocks = <&scmi_clk IMX95_CLK_HSIO>, > + <&scmi_clk IMX95_CLK_HSIOPLL>, > + <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, > + <&scmi_clk IMX95_CLK_HSIOPCIEAUX>, > + <&pcieclk 1>; > + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "ref";
use "extref", refer pci-imx6.c to use external clock.
clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "ref", "extref"
otherwise pcie controller will use internal pll by default.
> + reset-gpios = <&expander2 8 GPIO_ACTIVE_LOW>; > + /* Not supported on REV.0100 */ > + /* supports-clkreq; */ > + status = "okay"; > +}; > + > +/* X17 M2 / B-Key PCIe */ > +&pcie1 { > + pinctrl-0 = <&pinctrl_pcie1>; > + pinctrl-names = "default"; > + clocks = <&scmi_clk IMX95_CLK_HSIO>, > + <&scmi_clk IMX95_CLK_HSIOPLL>, > + <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, > + <&scmi_clk IMX95_CLK_HSIOPCIEAUX>, > + <&pcieclk 0>; > + clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "ref";
the same here.
Frank >
|  |