Netdev List
 help / color / mirror / Atom feed
From: Andrew Lunn <andrew@lunn.ch>
To: Yongzhao Chen <yongzhao.derek@gmail.com>
Cc: netdev@vger.kernel.org, Vladimir Oltean <olteanv@gmail.com>,
	Christian Marangi <ansuelsmth@gmail.com>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Russell King <linux@armlinux.org.uk>,
	Florian Fainelli <florian.fainelli@broadcom.com>,
	Jonas Gorski <jonas.gorski@gmail.com>,
	Woojung Huh <woojung.huh@microchip.com>,
	UNGLinuxDriver@microchip.com, Ziyang Huang <hzyitc@outlook.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Simon Horman <horms@kernel.org>
Subject: Re: [RFC PATCH net-next v2 5/5] net: phy: qca83xx: disable SmartSpeed before resetting CPU PHYs
Date: Thu, 24 Sep 2026 14:30:35 +0200	[thread overview]
Message-ID: <c09a810b-79a9-4a4a-b484-c26e1b4acb52@lunn.ch> (raw)
In-Reply-To: <20260923215735.234-1-yongzhao.derek@gmail.com>

On Wed, Sep 23, 2026 at 11:57:35PM +0200, Yongzhao Chen wrote:
> Hi Andrew,
> 
> Yes. In the RA74 trace, generic config_aneg() returned successfully with
> CTRL1000 at 0x0600. A later read found 0x0400, so 1000BASE-T full-duplex
> advertisement had been cleared by then. I did not capture when it
> changed. The instrumented Clause 22 BMCR/CTRL1000 path showed no
> intervening write; other paths were not ruled out.
> 
> SmartSpeed is the downshift feature. I have no evidence of a broken pair
> or a successful fallback to 100 Mb/s. The 0x0400 value describes
> advertised capability, not the negotiated speed. Clearing SmartSpeed
> before the initial reset kept the internal link at 1 Gb/s during the
> tested RA74 boot sequence. The trigger remains unknown.

It is operating different to most devices implementing downshift.

All the other PHYs don't change the contents of the standard
registers, LPA still indicates the link partner can do 1G, BMSR
indicate the link is running at 1G because that is what the
negotiation resolved to, but a vendor register indicates the link is
actually running at 100Mbps.

Now, downshift is not part of 802.3, so vendors are free to implement
it however they want.

But back to this patchset. We have to consider, is downshift in
general broken? If so, we can just disable it in the PHY driver, and
add a comment it is broken. The flag is not needed. We could also
implement the tuning API, but have it disabled by default. Again the
flag is not needed.

I would prefer not to add the flag, but we can if we must. I suggest
you reach out to the vendor and see if there is any errata.

    Andrew

  reply	other threads:[~2026-09-24 12:30 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-22 20:26 [RFC PATCH net-next v2 0/5] net: dsa: qca8k: add a QCA8337 CPU PHY consumer Yongzhao Chen
2026-09-22 20:26 ` [RFC PATCH net-next v2 1/5] net: dsa: pass PHY flags when connecting shared ports Yongzhao Chen
2026-09-22 21:49   ` Florian Fainelli
2026-09-22 20:26 ` [RFC PATCH net-next v2 2/5] net: dsa: qca8k: support an internal PHY as the CPU port Yongzhao Chen
2026-09-22 20:26 ` [RFC PATCH net-next v2 3/5] net: dsa: qca8k: serialize CPU MAC pause during MTU changes Yongzhao Chen
2026-09-22 20:58   ` Andrew Lunn
2026-09-23 21:57     ` Yongzhao Chen
2026-09-22 20:26 ` [RFC PATCH net-next v2 4/5] net: dsa: qca8k: flag QCA8337 internal CPU PHYs for SmartSpeed Yongzhao Chen
2026-09-22 21:00   ` Andrew Lunn
2026-09-23 21:57     ` Yongzhao Chen
2026-09-22 20:26 ` [RFC PATCH net-next v2 5/5] net: phy: qca83xx: disable SmartSpeed before resetting CPU PHYs Yongzhao Chen
2026-09-22 21:06   ` Andrew Lunn
2026-09-23 21:57     ` Yongzhao Chen
2026-09-24 12:30       ` Andrew Lunn [this message]
2026-09-24 23:48         ` Yongzhao Chen

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=c09a810b-79a9-4a4a-b484-c26e1b4acb52@lunn.ch \
    --to=andrew@lunn.ch \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=ansuelsmth@gmail.com \
    --cc=florian.fainelli@broadcom.com \
    --cc=hkallweit1@gmail.com \
    --cc=horms@kernel.org \
    --cc=hzyitc@outlook.com \
    --cc=jonas.gorski@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=woojung.huh@microchip.com \
    --cc=yongzhao.derek@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox