From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 178103A7DEA for ; Tue, 20 Jan 2026 20:39:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768941555; cv=none; b=EJIQnEy/tX+fntfLWBkoHTMwM5dXZk7/DJLHhnbcbaVp2VXBIBrG5lphOajooLSriSHoPdvkPbbxWTVM2sxLpBBbexmDrunZ7k1iYg/Zv0s/U3nBKnWQFxPkqV3IsTtlkk6Y4bkhzec4QA+DDMQ7p11928ARAFjdTB3cPwYztvI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768941555; c=relaxed/simple; bh=xHOEY7pj9A80Sy6IzpJUThtTf0+b2ch1RqET3iZnUTA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=usQBu/kriwNKLss9NAT3iYjY1k6ktK7N7HcpF7mojS6ksNIKh5zPHO47LhglE392fI3h8Dzf52j5rFNOXYj20X2bgqteAj1L20KqQ3BfAzZClUNeqE3VN5or3ZgQaOeVfH+fWTr/NDxJKJa03uJ9ZAeA+xla/v3rQ9fGdANSaUo= 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=kscLbviV; arc=none smtp.client-ip=209.85.128.53 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="kscLbviV" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-47d63594f7eso41730115e9.0 for ; Tue, 20 Jan 2026 12:39:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768941550; x=1769546350; 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=b2eD+o7ZJqt8UHgxhoi1YhoZ79UecJ91Sm+qVMqrNb8=; b=kscLbviVEzBLFLSmc97ezJNsrGTqeKo1p+isy8Q0Cf/aZbdsrw8iZD1gPfqoppW9Fx 0DD3sBGOjCrDCKJ07PWZDEdTsntFjCwbuuXGxa8UPGwF//pTYSrW4DFrNEEXG4u/rnq4 ePuuUWEmF6u/xv/1Wcrt2UECMUpAs+r1ZOnT54ejlYDxGmBJrhPgD3byUvA1qc4b1+cK XEk09HqQa6w20yH4E0YSWlKdq5pwEUHPRgZp1t+aKYFMbfBDwYNU5WnbbR1fpbkdmNK2 VGbjQSXbHDiW2NhlTkg0UIIAUOtLwti0SE0uir1qycwGOVQg0Z75dJmMJMFZOJEdu6nH 1dJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768941550; x=1769546350; 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=b2eD+o7ZJqt8UHgxhoi1YhoZ79UecJ91Sm+qVMqrNb8=; b=D/Dt9ja/ncD98TrNX80gMlzKUi7SfearVEtRPGfByLQpveZVYjvrVSCoxSlI0wjJr/ vK5Y+rBf6Yhi5RZMGc+Ilg0aDKKVxm28ejPp5MXieNQZvbn7kYWVMjLWlpUgB0B+dTzk KijLbXS9A/PwowlGORsSzSie/xQDtRZX6dnGDDQt/dT9/ky1na4rWXW5RNX89BtPU2xa te5MwFZcpD3Zmo5Jq1OzxBbgqgghCJHjAdUhBPnICoxcM8FqJy6E5gA8AoFYNW+JUUNL uXehMa6unzWYpCKkS8tDRLAMqu+LKQBG34BxRcrzru9I6Q7k1hw3Ks0AMr1Q9nxHetJ2 o0Mg== X-Forwarded-Encrypted: i=1; AJvYcCVlmPRjnw8Matph0HhQ0TYg1QDq/4uyfWs2cnIrKLTZTwk5LZJ8csBG/CKUwBz3HbiXy5PdJoLxM8Nu+JU=@vger.kernel.org X-Gm-Message-State: AOJu0YzeVUWSv0hddn45DjiXrUE+VlLOi9sO+ZzI21im8RjFwBC/Q5RO 9CvlnP8nz1L8thC2cKKJVMxqa66npfRNfbJ5UxIWRUJ+V7ZcHhAtYGyp X-Gm-Gg: AY/fxX6cCSHS7qr4qzjwaQa/8u6gu3wnEsucD8noT7l72+mjJXpMpHJXI4Cb4t+XWHd 7++nJtzPFlEse7BJl8bOH37yWqvUpc4mzTlp02+qCA0dOW9E6PuMJ/PqWkt5yiVKO2bQHFwjXug SM4MBJs92ydWhuuxHbI6egPpJ4VjmiuysnqUxAmSGXI5eixTV9OpY4wZYOMBpvS5QKDJ12WZKU9 AC6kQ8Ky7jiN0mNgT3nGisFlImoBIKyu+PgGywKc+AdgJQtkudbK6njwPY7ChVUEFXMPQdRoy0b jble65IQdbJkk7wlv9Gm3M2PxQSTjUY+fPLb2Tw9riiIVmThbAP5l9bZ5TBnRY1QV5NCXRjIfAK 6N36gRWmqgnBnsDbkZ4symKh5/hE0hRk0YH7rOM14gYYYHXkBG0eKwUN7qMWW/WVEEV8xPczbqo 0gnctuIz+gZvXLH/II X-Received: by 2002:a05:600c:8b55:b0:477:9f34:17b8 with SMTP id 5b1f17b1804b1-4801e2fbd61mr211779815e9.1.1768941550130; Tue, 20 Jan 2026 12:39:10 -0800 (PST) Received: from eichest-laptop.lan ([2a02:168:af72:0:378b:c660:2f9c:b651]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48042c3a7c1sm850425e9.13.2026.01.20.12.39.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jan 2026 12:39:09 -0800 (PST) From: Stefan Eichenberger To: andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, mcoquelin.stm32@gmail.com, alexandre.torgue@foss.st.com, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, hkallweit1@gmail.com, linux@armlinux.org.uk, linux-stm32@st-md-mailman.stormreply.com, maxime.chevallier@bootlin.com, francesco.dolcini@toradex.com Cc: netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org, imx@lists.linux.dev, linux-kernel@vger.kernel.org, Stefan Eichenberger Subject: [PATCH net-next v3 2/3] net: phy: micrel: add option to keep the preamble before sfd for KSZ9131 Date: Tue, 20 Jan 2026 21:30:03 +0100 Message-ID: <20260120203905.23805-3-eichest@gmail.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260120203905.23805-1-eichest@gmail.com> References: <20260120203905.23805-1-eichest@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Stefan Eichenberger If the PHY_F_KEEP_PREAMBLE_BEFORE_SFD flag is set in the phy_device::dev_flags field, the preamble will be kept before the start frame delimiter (SFD) on the KSZ9131 PHY. This flag is not officially documented by Micrel. However, information provided by NXP and Micrel indicates that this flag ensures the PHY sends the full preamble instead of removing it. The full discussion can be found on the NXP forum: https://community.nxp.com/t5/i-MX-Processors/iMX8MP-eqos-not-working-for-10base-t/m-p/2151032 Signed-off-by: Stefan Eichenberger --- drivers/net/phy/micrel.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c index 05de68b9f7191..a51bfe4a8d7b5 100644 --- a/drivers/net/phy/micrel.c +++ b/drivers/net/phy/micrel.c @@ -101,6 +101,14 @@ #define LAN8814_CABLE_DIAG_VCT_DATA_MASK GENMASK(7, 0) #define LAN8814_PAIR_BIT_SHIFT 12 +/* KSZ9x31 remote loopback register */ +#define KSZ9x31_REMOTE_LOOPBACK 0x11 +/* This is an undocumented bit of the KSZ9131RNX. + * It was reported by NXP in cooperation with Micrel. + */ +#define KSZ9x31_REMOTE_LOOPBACK_KEEP_PREAMBLE BIT(2) +#define KSZ9x31_REMOTE_LOOPBACK_EN BIT(8) + #define LAN8814_SKUS 0xB #define LAN8814_WIRE_PAIR_MASK 0xF @@ -1500,7 +1508,11 @@ static int ksz9131_config_init(struct phy_device *phydev) if (ret < 0) return ret; - return 0; + if (phydev->dev_flags & PHY_F_KEEP_PREAMBLE_BEFORE_SFD) + ret = phy_modify(phydev, KSZ9x31_REMOTE_LOOPBACK, 0, + KSZ9x31_REMOTE_LOOPBACK_KEEP_PREAMBLE); + + return ret; } #define MII_KSZ9131_AUTO_MDIX 0x1C -- 2.51.0