All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolai Buchwitz <nb@tipi-net.de>
To: Fidelio Lawson <lawson.fidelio@gmail.com>
Cc: Woojung Huh <woojung.huh@microchip.com>,
	UNGLinuxDriver@microchip.com, Andrew Lunn <andrew@lunn.ch>,
	Vladimir Oltean <olteanv@gmail.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Marek Vasut <marex@denx.de>,
	Maxime Chevallier <maxime.chevallier@bootlin.com>,
	Simon Horman <horms@kernel.org>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Russell King <linux@armlinux.org.uk>,
	Tristram Ha <Tristram.Ha@microchip.com>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	Fidelio Lawson <fidelio.lawson@exotec.com>,
	Marek Vasut <marex@nabladev.com>
Subject: Re: [PATCH net-next v9 0/3] ksz87xx: add support for low-loss cable equalizer errata
Date: Mon, 01 Jun 2026 17:43:27 +0200	[thread overview]
Message-ID: <018a05a2cfffe4f9a7df608676ec554d@tipi-net.de> (raw)
In-Reply-To: <20260601-ksz87xx_errata_low_loss_connections-v9-0-fdbbb15592cb@exotec.com>

Hi Fidelio

On 1.6.2026 17:19, Fidelio Lawson wrote:
> Hello,
> 
> This patch implements the KSZ87xx short cable erratum
> described in Microchip document DS80000687C for KSZ87xx switches
> and the following support article:
> 
> Link: 
> https://support.microchip.com/s/article/Solution-for-Using-CAT-5E-or-CAT-6-Short-Cable-with-a-Link-Issue-for-the-KSZ8795-Family
> 
> According to the erratum, the embedded PHY receiver in KSZ87xx switches 
> is
> tuned by default for long, high-loss Ethernet cables. When operating 
> with
> short or low-loss cables (for example CAT5e or CAT6), the PHY equalizer 
> may
> over-amplify the incoming signal, leading to internal distortion and 
> link
> establishment failures.
> 
> Microchip documents two independent mechanisms to mitigate this issue:
> adjusting the receiver low‑pass filter bandwidth and reducing the DSP
> equalizer initial value. These registers are located in the switch’s
> internal LinkMD table and cannot be accessed directly through a
> stand‑alone PHY driver.
> 
> To keep the PHY‑facing API clean, this series models the erratum 
> handling
> as vendor‑specific Clause 22 PHY registers, virtualized by the KSZ8 DSA
> driver. Accesses are intercepted by ksz8_r_phy() / ksz8_w_phy() and
> translated into the appropriate indirect LinkMD register writes. The
> erratum affects the shared PHY analog front‑end and therefore applies
> globally to the switch.
> 
> Based on review feedback, the user‑visible interface is kept 
> deliberately
> simple and predictable:
> 
> - A boolean “short‑cable” PHY tunable applies a documented and
>   conservative preset (LPF bandwidth 62MHz, DSP EQ initial value 0).
>   This is the recommended KISS interface for the common short‑cable
>   scenario.
> 
> - Two additional integer PHY tunables allow advanced or experimental
>   tuning of the LPF bandwidth and the DSP EQ initial value. These
>   controls are orthogonal, have no ordering requirements, and simply
>   override the corresponding setting when written.
> 
> The tunables act as simple setters with no implicit state machine or
> invalid combinations, avoiding surprises for userspace and not relying
> on extended error reporting or netlink ethtool support.
> 
> This series contains:
> 
>   1. Support for the KSZ87xx low‑loss cable erratum in the KSZ8 DSA 
> driver,
>      including the short‑cable preset and orthogonal tuning controls.
> 
>   2. Addition of vendor‑specific PHY tunable identifiers for the
>      short‑cable preset, LPF bandwidth, and DSP EQ initial value.
> 
>   3. Exposure of these tunables through the Micrel PHY driver via
>      get_tunable / set_tunable callbacks.
> 
> This version follows the design agreed upon during v3 review and
> reworks the interface accordingly.
> 
> This series is based on net-next.
> 
> Signed-off-by: Fidelio Lawson <fidelio.lawson@exotec.com>
> ---
> Changes in v9:
> - Drop incorrect Fixes tag
> - Fix typo in comment
> - Link to v8: 
> https://patch.msgid.link/20260601-ksz87xx_errata_low_loss_connections-v8-0-cfa102cf62c0@exotec.com

Please don't re-send patched within the 24h grace period as stated in 
the netdev FAQ [1]

Thanks
Nicolai

[1] 
https://www.kernel.org/doc/html/v6.1/process/maintainer-netdev.html#tl-dr

      parent reply	other threads:[~2026-06-01 15:43 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-01 15:19 [PATCH net-next v9 0/3] ksz87xx: add support for low-loss cable equalizer errata Fidelio Lawson
2026-06-01 15:19 ` [PATCH net-next v9 1/3] net: dsa: microchip: implement KSZ87xx Module 3 low-loss cable errata Fidelio Lawson
2026-06-01 15:19 ` [PATCH net-next v9 2/3] net: ethtool: add KSZ87xx low-loss cable PHY tunables Fidelio Lawson
2026-06-04 11:41   ` Paolo Abeni
2026-06-04 12:11     ` Andrew Lunn
2026-06-05  2:35     ` Jakub Kicinski
2026-06-05  3:16       ` Marek Vasut
2026-06-05 23:31         ` Jakub Kicinski
2026-06-09 15:03           ` Fidelio LAWSON
2026-06-01 15:19 ` [PATCH net-next v9 3/3] net: phy: micrel: expose KSZ87xx low-loss cable tunables Fidelio Lawson
2026-06-04 11:41   ` Paolo Abeni
2026-06-04 12:15     ` Andrew Lunn
2026-06-01 15:43 ` Nicolai Buchwitz [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=018a05a2cfffe4f9a7df608676ec554d@tipi-net.de \
    --to=nb@tipi-net.de \
    --cc=Tristram.Ha@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=fidelio.lawson@exotec.com \
    --cc=hkallweit1@gmail.com \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=lawson.fidelio@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=marex@denx.de \
    --cc=marex@nabladev.com \
    --cc=maxime.chevallier@bootlin.com \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=woojung.huh@microchip.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.