[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<LV3PR11MB874269079536CDB53183760DEC49A@LV3PR11MB8742.namprd11.prod.outlook.com>
Date: Wed, 9 Jul 2025 22:59:58 +0000
From: <Tristram.Ha@...rochip.com>
To: <olteanv@...il.com>
CC: <Woojung.Huh@...rochip.com>, <andrew@...n.ch>, <robh@...nel.org>,
<krzk+dt@...nel.org>, <conor+dt@...nel.org>, <maxime.chevallier@...tlin.com>,
<davem@...emloft.net>, <edumazet@...gle.com>, <kuba@...nel.org>,
<pabeni@...hat.com>, <marex@...x.de>, <UNGLinuxDriver@...rochip.com>,
<devicetree@...r.kernel.org>, <netdev@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: RE: [PATCH net-next v3 7/7] net: dsa: microchip: Disable PTP function
of KSZ8463
> On Tue, Jul 08, 2025 at 05:32:33PM -0700, Tristram.Ha@...rochip.com wrote:
> > From: Tristram Ha <tristram.ha@...rochip.com>
> >
> > The PTP function of KSZ8463 is on by default. However, its proprietary
> > way of storing timestamp directly in a reserved field inside the PTP
> > message header is not suitable for use with the current Linux PTP stack
> > implementation. It is necessary to disable the PTP function to not
> > interfere the normal operation of the MAC.
> >
> > Signed-off-by: Tristram Ha <tristram.ha@...rochip.com>
> > ---
> > drivers/net/dsa/microchip/ksz8.c | 11 +++++++++++
> > 1 file changed, 11 insertions(+)
> >
> > diff --git a/drivers/net/dsa/microchip/ksz8.c b/drivers/net/dsa/microchip/ksz8.c
> > index ddbd05c44ce5..fd4a000487d6 100644
> > --- a/drivers/net/dsa/microchip/ksz8.c
> > +++ b/drivers/net/dsa/microchip/ksz8.c
> > @@ -1761,6 +1761,17 @@ void ksz8_config_cpu_port(struct dsa_switch *ds)
> > reg16(dev, KSZ8463_REG_DSP_CTRL_6),
> > COPPER_RECEIVE_ADJUSTMENT, 0);
> > }
> > +
> > + /* Turn off PTP function as the switch's proprietary way of
> > + * handling timestamp is not supported in current Linux PTP
> > + * stack implementation.
> > + */
> > + regmap_update_bits(ksz_regmap_16(dev),
> > + reg16(dev, KSZ8463_PTP_MSG_CONF1),
> > + PTP_ENABLE, 0);
> > + regmap_update_bits(ksz_regmap_16(dev),
> > + reg16(dev, KSZ8463_PTP_CLK_CTRL),
> > + PTP_CLK_ENABLE, 0);
> > }
> > }
> >
> > --
> > 2.34.1
> >
>
> What prevents the user from later enabling this through
> ksz_set_hwtstamp_config(HWTSTAMP_TX_ONESTEP_P2P)?
The PTP engine in KSZ8463 is first generation. The DSA PTP driver used
by KSZ9477 and LAN937X is for second generation, which uses tail tag to
pass along receive/transmit timestamp and port information.
It is not likely the PTP driver will be updated to support KSZ8463.
Currently that driver code is not activated except for KSZ9477 and
LAN937X.
Powered by blists - more mailing lists