From nobody Thu Apr 9 16:24:27 2026 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 56FED3A4F51 for ; Sat, 7 Mar 2026 15:55:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772898919; cv=none; b=EaBZTH47MtGPnwKcvhr5mGQI9zx5wbu1NBMcpgYBqBxXxWAb0aoFtlvyT53Q/ecpHqEO40VSg+xL2ZsQdYjsps+84tRJRhF+6S7Jh0hLax+UUzUMQ1OHmn4FEHa1oiO8ngUN08UVyntFeUify5PALStxgvUuj2JUOggdDlkKPDw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772898919; c=relaxed/simple; bh=QT4IbwlNAm1QHdgTk1/doFRjJm7ZCtbktCMd9e4q2ek=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rDmP23wbdOeIeNDcZXLkXL+E1m9JlnRT+d3Pr6U9c24z8S8fhSO2N3VJEjMgW8eN2mn60PcvEJouXJZc0SVnaCfIKPmfNbh4ZUe98XIblTftv6WRVXyLHactAZHRgIvTemdBHdLDY0s5w1E0bkduHHTJYxP3DveRnkiG4AtssjY= 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=eMNDHXlv; arc=none smtp.client-ip=209.85.128.52 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="eMNDHXlv" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-48374014a77so122880825e9.3 for ; Sat, 07 Mar 2026 07:55:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772898915; x=1773503715; 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=+K/4EeJCxe92O1jpes4D7vWhHNljpVjuEnxrJp6Jybk=; b=eMNDHXlvxGcRB52ASeydXFmHmi8IS+mWVrTGsIEp+VBN83IXqL34rwVYvqEaI6FW+S CqaOk/DgLD9ADAQD5MODBGaLOmARdBQ25eIL8HhljvI7sOKQoN+MMisp7PlzOipvTJk7 Y/AK3AzFlb+GEXNeymEGMtw7wxvV6v6LzlbyA+nNI9zt8/j7xscyBheW0Ed2J5xOfJFj it4/NGZcusrV+Y7Q1+DJSLce+QCd4meYLrW9PTHQMZwyRskcLYxvTAombwCe8i/FuqHW 9AXvN03tmk4tqMjdc6hYAGhg41LkjGC62w8QS4RuzfMzGNwH0n3gYXPszldyh9iVUlhv rHvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772898915; x=1773503715; 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=+K/4EeJCxe92O1jpes4D7vWhHNljpVjuEnxrJp6Jybk=; b=KXVWcR9tkB/FNLXVDLJTIERFw6v/Rs8QZAQBhY2VrMvgd5NG4wQ7QC2qFMxdvLihD1 4xb9tLqAcpAhzBjgsxpCo8DBs8/fZnb+PWKIcg/U44enLg/uva/acm25KeX3bsDPOuUk D+Au0G2E1lkhmfjC0XQ1oCUamfbEyFoizVbGGfVg5aSmr7ElN7BfikspJivXdbIIvlZE FT9Niptwx1iW5AX5yFXde1tJd5bszEx150t1PChVpTef/DUXeSuUkJeGPWdl2r3VdCDN 18vV4X2NSGl8+v3PmtAr8l1e6cYZvVz6/n+Am904sUdlk2C+XX6frhGxPP9OjpW/iEhR 6Pbg== X-Forwarded-Encrypted: i=1; AJvYcCVLVZxhXREELNHpyPHutPsLGNNtJ6TJ6YYtUT/Xe0SW9fmFNegFdR6B/L4/YVR5TsCIOMtT3y/x5cSaAEg=@vger.kernel.org X-Gm-Message-State: AOJu0YxwUxIRdOQniSeNJow8SX8qIcIP06aHBe5htOvKtoOS0PX+OxTc wLxgaix55mFWaAztbO5mXG9L1WPvCAap4ebKY6dEFr7HbtBM+nwEAf0I X-Gm-Gg: ATEYQzzggT63fdYiJr2l4s2PYc4TOSIHzn/0rLYDK0Pj8lnROr5xkJBqwsFVydKy6TA wL6TdBorQCoYkDzW9LQP0cIYeDc728+k71TLPCeNnQVIA9h/EKMOTjpSVuBiphD3bHAnVcFy2Et 5FfyCrv0UsAER7SBfaO6fmo6NbXPsODDOUN1EGRNO0W87RpyTdKtP28IOmfUpwLYJuit0+oUhll 4F+PkSamcdFFcyJ8e5Bf/RxdF/esIfXk2vD83h55g9ORqemiGR0Fi1T/HXf2gtrfcDZcHzdCrpL 9LIrRiIoAZve3YRrHv+H/lzuB7gIG4MrN71Z9nyRJsh08B+nrQc+aVKq1eoDxBKO7VrsSRRjZvj XVMKD/KNMRushpU13AbxjB2CZYupIlBHB5gezzwF/2TxjPZs+20fmChN+BDGTGaXWEOODbNdvqb 606zeOIfQpGZunxraB1BYfYL43xo9iOCdftyKNWQZaJ/FvpDL0uJ9a26cvygs3yVANP0+MXUIcz LCNwOWuVSuHR4cVeLkosEwkRA== X-Received: by 2002:a05:600c:a117:b0:483:7eea:b185 with SMTP id 5b1f17b1804b1-4852695aedemr76798135e9.16.1772898914633; Sat, 07 Mar 2026 07:55:14 -0800 (PST) Received: from GLaDOS.lan (93-35-179-236.ip56.fastwebnet.it. [93.35.179.236]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48527681a3esm261097785e9.4.2026.03.07.07.55.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 07 Mar 2026 07:55:14 -0800 (PST) From: Stefano Radaelli To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Cc: pierluigi.p@variscite.com, Stefano Radaelli , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Subject: [PATCH v3 03/11] arm64: dts: freescale: imx8mm-var-som: Update FEC support with MaxLinear PHY Date: Sat, 7 Mar 2026 16:54:39 +0100 Message-ID: <24d31e0ca71c9b2dcb64d39117a8501d85cf945f.1772898346.git.stefano.radaelli21@gmail.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 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. Add the PHY VDDIO supply regulator, adjust reset timings and add a pinctrl sleep state for low-power operation. The PHY LED signals originate on the SOM, but the actual LEDs are part of the carrier implementation (RJ45 connector). Move the LED configuration to the Symphony carrier device tree, matching the evaluation board LED wiring. 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 --- v2->v3: -=20 v1->v2: - Moved phy LED configurations to symphony dts .../dts/freescale/imx8mm-var-som-symphony.dts | 27 ++++++++++++- .../boot/dts/freescale/imx8mm-var-som.dtsi | 39 +++++++++++++++++-- 2 files changed, 62 insertions(+), 4 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..712892edba8f 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts @@ -5,6 +5,7 @@ =20 /dts-v1/; =20 +#include #include "imx8mm-var-som.dtsi" =20 / { @@ -71,7 +72,24 @@ led { }; =20 ðphy { - reset-gpios =3D <&pca9534 5 GPIO_ACTIVE_HIGH>; + 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"; + }; + }; }; =20 &i2c2 { @@ -99,6 +117,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..24924ee1e8c7 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi @@ -24,6 +24,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 +106,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 +128,8 @@ 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>; }; }; }; @@ -366,6 +379,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