From nobody Sun Apr 5 13:26:25 2026 Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A573F37416F for ; Tue, 17 Feb 2026 18:43:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771353812; cv=none; b=V4xsQemjhHcz3KYAM3d3cwVtcGDgwU65aEbBr9j0dYuSZLxUGpqOlTP/YMZOrqsQNOkA2EW+pODPRawKySqwSeLAqnOgGKvxoB3pZ1LWUFXRBDnAEkfFr/coxCupOtX+awdjD/+XL5lWExx56qwA/jcrauYLcApFe36fcmvVeoU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771353812; c=relaxed/simple; bh=sH3g/D/feOy6HRPpZvgse1l8RLfsseXya0OCko0vim8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cxBbL5WceJ7UvnhEcSc5wxQF+PJ/BPOXwEwpnTdfz8f0f7mqYbchFiG5VyezuEfr5lzEA9XouaN1j6sfPNaZ0mwM6X9L7iEpIVrK6U1nGPWr59IQi/UMjldvXwgKBXCb2DIUqnHBwg2oWjLUUjKcm6DGNodH802aTBOINhTVS8s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=XzKq87dM; arc=none smtp.client-ip=209.85.221.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="XzKq87dM" Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-436309f1ad7so3693894f8f.3 for ; Tue, 17 Feb 2026 10:43:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771353809; x=1771958609; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zsvZHHMHNdlwLacCrgd+fOKcEC9NeExJe/PUTUm5+0c=; b=XzKq87dMCgXjoHxn8icFMSIUPsm7IFo8ZHdKHJZ2DVLQOvHvW/2HiYppafQLIVGBKV Irq3aikxMGyRLpz3Iyj1aJ5GZy0RjavsGTWLTAJ5mWT6bV1q7LFsG9LnyW5yE541PGUh kQbiMaXfH9HaP0QIVFj6tQhuQkp4KSZBH753gnI+/1xNquOsbokBOVyR3+S2hADS0ifX +5823ULrbCE3tP46YFoA0b5lYQl3J0Q3yCOnUOLZ5VW6gf/XAVSbmd0YKtdzzhOLQDxK 10oC25hzbd0bzMx7r1FzNTDWTEhS4B2dV1TYMYt/AN//vBUakDAGiToDDGDLpKnYkSru O+3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771353809; x=1771958609; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=zsvZHHMHNdlwLacCrgd+fOKcEC9NeExJe/PUTUm5+0c=; b=TKOx7mLs2lX/bIFkpedY1cHtbuAVOzP1rhehVNqfVYrKj9Tz8dHPrJlEDNVj4b06oF thEF1D76vc7oLoZKTZFFQNr+UzzUt5ckj9ebJLbYIWOFTWUQzCtwFGnWzijZa7hoU2Zx 6w/WU/XBsmoPzZzrQ0HwEPXKYfM27Q0GPfScR1T+OErCm9okvbS9GZCUIDLmsEZ0mWu7 wz3wGJybiTXNEsuMP3pPoz6H6eu5EwIivlLV+Pto907njXQRJchdI6rwmukevBVU1Ig3 IA1dlzXxQT2RfRQCtYXd+LPHQxdk1h0l4TQDgWZS4K1bf+i96uUN9Eovnjxy5bDFnaqP QwgA== X-Gm-Message-State: AOJu0YyKYVs+aY9ot06srNH6RNx2N5sZ3cp078OGdfHN7iRTvVEVc+bW Hd0UsSoERXcEa4ldQnsazKjS+cmsLRg5udsMDJ0HlrsJdveui4mCiBbPix4AVg== X-Gm-Gg: AZuq6aLC4H7N6J+Zj+WIJbLTB/TrEN5b84LsPzHrDEfaBGTLfcd7Wl+T0JY65mVyYRy pgu82QmjIqzULBHLwZ5NXeIGu/qDsjYTPhOPfFNJaGOtkqKrLScsL4lkR/lSUDeGfUGqsNWvTu6 t4FjMfKjPLGvVoGTLcG/GfSSDlOIrcpdkop4O4UyYm27MCVhRZvIFltOh6pg8KSyTyZyzIqOp5U 5DnSa29cgqzDo884zNsVQPmNieMgi3N+gQ3yQ82KPItj5yW/sEXXdOpTPklyrPA0qphkh0P6qGk FjRF2dDT7zFwKS9xkc/2owXROdb9pDkOke1pPubxHd+4GeD9D+PjK38yqOiVlIRO2fe1/cpkSzB 6PGnQY+hGK5L7FhfEd02atnqJB8P2euYVUlvIeJkasabfPyt+4q1Cscr2yWfo+dZpbg2/FtOwbT LdD2uXmt0MUP8IsVtfUoNdsK0vJzH9p2+KvuvcV358QbAERzBD6xk5IX7V73/ohoHiChwK6RkLc vsEomtwqjy49/bQipbxdureVhCTWJP2dw/wOgxL X-Received: by 2002:a05:6000:2f83:b0:437:6e0b:7147 with SMTP id ffacd0b85a97d-4379db352e5mr19506480f8f.7.1771353808829; Tue, 17 Feb 2026 10:43:28 -0800 (PST) Received: from Lord-Beerus.station (net-188-152-100-94.cust.vodafonedsl.it. [188.152.100.94]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4839731d7c3sm1096185e9.18.2026.02.17.10.43.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Feb 2026 10:43:28 -0800 (PST) From: Stefano Radaelli X-Google-Original-From: Stefano Radaelli To: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Cc: Stefano Radaelli , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Subject: [PATCH v1 03/11] arm64: dts: freescale: imx8mm-var-som: Update FEC support with MaxLinear PHY Date: Tue, 17 Feb 2026 19:42:37 +0100 Message-ID: <3b984b93a43a07bc9c4f6414a08a3a0f45daaaa8.1771353301.git.stefano.r@variscite.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stefano Radaelli Update the FEC Ethernet controller on the i.MX8MM VAR-SOM to match the latest SOM hardware revision using the integrated MaxLinear MXL86110 PHY. This patch adds: - PHY VDDIO 1.8V supply regulator. - Proper reset timings for the MXL86110. - LED configuration for link/activity indication via the LED subsystem under /sys/class/leds/, leveraging the support in the MXL86110 PHY driver. Two LEDs are defined to match the VAR-SOM carrier design: * LED@0: Yellow, netdev trigger. * LED@1: Green, netdev trigger. - A pinctrl sleep state for low-power operation. The PHY reset is now handled in the SOM .dtsi using the SoC GPIO. The previous carrier-specific reset-gpios property in the Symphony device tree is therefore removed. The enet_rst GPIO hog on the carrier is kept to ensure a defined board-level reset line state during boot. Wake-on-LAN via magic packet is not supported at the VAR-SOM level and is therefore not enabled in the SOM device tree nor in the official evaluation carrier board configuration (symphony). Designs requiring WoL support may enable it in their own carrier-specific device trees if properly integrated at the hardware level. Signed-off-by: Stefano Radaelli --- .../dts/freescale/imx8mm-var-som-symphony.dts | 11 ++-- .../boot/dts/freescale/imx8mm-var-som.dtsi | 59 ++++++++++++++++++- 2 files changed, 63 insertions(+), 7 deletions(-) diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts b/ar= ch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts index 819707e6f3bf..689894405b27 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts @@ -70,10 +70,6 @@ led { }; }; =20 -ðphy { - reset-gpios =3D <&pca9534 5 GPIO_ACTIVE_HIGH>; -}; - &i2c2 { clock-frequency =3D <400000>; pinctrl-names =3D "default"; @@ -99,6 +95,13 @@ usb3-sata-sel-hog { line-name =3D "usb3_sata_sel"; }; =20 + enet-rst-hog { + gpio-hog; + gpios =3D <5 GPIO_ACTIVE_HIGH>; + output-low; + line-name =3D "enet_rst"; + }; + som-vselect-hog { gpio-hog; gpios =3D <6 GPIO_ACTIVE_HIGH>; diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi b/arch/arm64= /boot/dts/freescale/imx8mm-var-som.dtsi index da3c7332ec34..23045f54e00e 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi @@ -4,6 +4,7 @@ * Copyright (C) 2020 Krzysztof Kozlowski */ =20 +#include #include "imx8mm.dtsi" =20 / { @@ -24,6 +25,13 @@ reg_eth_phy: regulator-eth-phy { gpio =3D <&gpio2 9 GPIO_ACTIVE_HIGH>; enable-active-high; }; + + reg_phy_vddio: regulator-phy-vddio { + compatible =3D "regulator-fixed"; + regulator-name =3D "vddio-1v8"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + }; }; =20 &A53_0 { @@ -99,12 +107,17 @@ touchscreen@0 { }; =20 &fec1 { - pinctrl-names =3D "default"; + pinctrl-names =3D "default", "sleep"; pinctrl-0 =3D <&pinctrl_fec1>; + pinctrl-1 =3D <&pinctrl_fec1_sleep>; + /* + * The required RGMII TX and RX 2ns delays are implemented directly + * in hardware via passive delay elements on the SOM PCB. + * No delay configuration is needed in software via PHY driver. + */ phy-mode =3D "rgmii"; phy-handle =3D <ðphy>; phy-supply =3D <®_eth_phy>; - fsl,magic-packet; status =3D "okay"; =20 mdio { @@ -116,7 +129,27 @@ ethphy: ethernet-phy@4 { reg =3D <4>; reset-gpios =3D <&gpio1 9 GPIO_ACTIVE_LOW>; reset-assert-us =3D <10000>; - reset-deassert-us =3D <10000>; + reset-deassert-us =3D <100000>; + vddio-supply =3D <®_phy_vddio>; + + leds { + #address-cells =3D <1>; + #size-cells =3D <0>; + + led@0 { + reg =3D <0>; + color =3D ; + function =3D LED_FUNCTION_LAN; + linux,default-trigger =3D "netdev"; + }; + + led@1 { + reg =3D <1>; + color =3D ; + function =3D LED_FUNCTION_LAN; + linux,default-trigger =3D "netdev"; + }; + }; }; }; }; @@ -366,6 +399,26 @@ MX8MM_IOMUXC_GPIO1_IO09_GPIO1_IO9 0x19 >; }; =20 + pinctrl_fec1_sleep: fec1sleepgrp { + fsl,pins =3D < + MX8MM_IOMUXC_ENET_MDC_GPIO1_IO16 0x120 + MX8MM_IOMUXC_ENET_MDIO_GPIO1_IO17 0x120 + MX8MM_IOMUXC_ENET_TD3_GPIO1_IO18 0x120 + MX8MM_IOMUXC_ENET_TD2_GPIO1_IO19 0x120 + MX8MM_IOMUXC_ENET_TD1_GPIO1_IO20 0x120 + MX8MM_IOMUXC_ENET_TD0_GPIO1_IO21 0x120 + MX8MM_IOMUXC_ENET_RD3_GPIO1_IO29 0x120 + MX8MM_IOMUXC_ENET_RD2_GPIO1_IO28 0x120 + MX8MM_IOMUXC_ENET_RD1_GPIO1_IO27 0x120 + MX8MM_IOMUXC_ENET_RD0_GPIO1_IO26 0x120 + MX8MM_IOMUXC_ENET_TXC_GPIO1_IO23 0x120 + MX8MM_IOMUXC_ENET_RXC_GPIO1_IO25 0x120 + MX8MM_IOMUXC_ENET_RX_CTL_GPIO1_IO24 0x120 + MX8MM_IOMUXC_ENET_TX_CTL_GPIO1_IO22 0x120 + MX8MM_IOMUXC_GPIO1_IO09_GPIO1_IO9 0x100 + >; + }; + pinctrl_i2c1: i2c1grp { fsl,pins =3D < MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x400001c3 --=20 2.47.3