All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolai Buchwitz <nb@tipi-net.de>
To: James Clark <jjc@jclark.com>,
	Florian Fainelli <florian.fainelli@broadcom.com>
Cc: "David S. Miller" <davem@davemloft.net>,
	"Eric Dumazet" <edumazet@kernel.org>,
	"Jakub Kicinski" <kuba@kernel.org>,
	"Paolo Abeni" <pabeni@redhat.com>,
	"Andrew Lunn" <andrew+netdev@lunn.ch>,
	"Heiner Kallweit" <hkallweit1@gmail.com>,
	"Richard Cochran" <richardcochran@gmail.com>,
	"Doug Berger" <opendmb@gmail.com>,
	"Théo Lebrun" <theo.lebrun@bootlin.com>,
	"Russell King" <linux@armlinux.org.uk>,
	"Conor Dooley" <conor.dooley@microchip.com>,
	"Broadcom internal kernel review list"
	<bcm-kernel-feedback-list@broadcom.com>,
	"Thomas Gleixner" <tglx@kernel.org>,
	"Miroslav Lichvar" <mlichvar@redhat.com>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next 5/5] net: mdio: bcm-unimac: implement timestamped MDIO writes
Date: Sun, 11 Oct 2026 15:22:04 +0200	[thread overview]
Message-ID: <41c32f5a6f38ec9df8a79ce896912fb9@tipi-net.de> (raw)
In-Reply-To: <CANz3_EYfcBopo=HgRioXkhoT6P+4WWpfFT7UeWkXd5eM_RNpSA@mail.gmail.com>

Hi James

On 11.10.2026 09:20, James Clark wrote:
> On Sat, Oct 10, 2026 at 10:18 PM Nicolai Buchwitz <nb@tipi-net.de> 
> wrote:
>> I dug a bit deeper on a CM4: AFAIU the MDC runs off the GISB clock,
>> which the firmware sets to 200 MHz (CPRMAN 0x1d8, PLLD_PER 750 MHz /
>> 3.75). Bumping that divider to 4.0 at runtime moves the MDIO busy time
>> by exactly the same ratio, so that's the one. The 250 MHz you have in
>> mind is genet250 / genet125, the RGMII side, a different generator.
>> 
>> So instead of a fixed clock or a compatible match this could just be
>> BCM2711_CLOCK_GISB in clk-bcm2835 (critical, firmware owns it) and
>> clocks = <&clocks BCM2711_CLOCK_GISB> on the mdio node. I can send 
>> that
>> if it helps.

I've put together 3 patches, which do the clock plumbing:
https://github.com/nbuchwitz/linux/commits/devel/bcm2711-gisb-clk/

If we agree that this approach makes sense and Florian has verified that
my experimental findings match the actual implementation (+ naming), I
can send to the clk / stblinux people.

> Thank you very much for looking into this. I think this would solve
> the problem from my end.
> 
> Let me just confirm how I would need to adapt my patch with that fix:
> in the pdata branch of the probe, I would call devm_clk_get_optional
> to find the clock on the mdio node, falling back to pdata->clk. I
> would still add the chip-specific compatible string because the number
> of MDC periods has only been measured on that specific hardware.

In the unimac patch you would only need clk_get_rate() and can gate
write_sts() on it. Not sure about pdata->clk though: bcmgenet passes
its "enet" MAC clock there, which isn't necessarily the MDC reference.
If write_sts() only trusts a clock on the mdio node itself, you don't
need the compatible either.

Cheers
Nicolai

  reply	other threads:[~2026-10-11 13:22 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-09 14:35 [PATCH net-next 0/5] net: mdio: add timestamped MDIO writes for PHY gettimex64 James Clark
2026-10-09 14:35 ` [PATCH net-next 1/5] net: mdio: add timestamped write operation James Clark
2026-10-10 15:10   ` netdev-bot+sashiko
2026-10-11 14:03   ` Andrew Lunn
2026-10-11 14:33     ` James Clark
2026-10-09 14:35 ` [PATCH net-next 2/5] net: phy: broadcom: use timestamped MDIO writes in gettimex64 James Clark
2026-10-10 15:10   ` netdev-bot+sashiko
2026-10-09 14:35 ` [PATCH net-next 3/5] ptp: add functions to adjust system timestamps James Clark
2026-10-10 15:10   ` netdev-bot+sashiko
2026-10-09 14:35 ` [PATCH net-next 4/5] net: macb: implement timestamped MDIO writes James Clark
2026-10-10 15:10   ` netdev-bot+sashiko
2026-10-11  9:23   ` Théo Lebrun
2026-10-11 10:02     ` Théo Lebrun
2026-10-11 13:01     ` James Clark
2026-10-11 21:10     ` Andrew Lunn
2026-10-09 14:35 ` [PATCH net-next 5/5] net: mdio: bcm-unimac: " James Clark
2026-10-09 16:04   ` Florian Fainelli
2026-10-10  1:25     ` James Clark
2026-10-10 15:18     ` Nicolai Buchwitz
2026-10-11  7:20       ` James Clark
2026-10-11 13:22         ` Nicolai Buchwitz [this message]
2026-10-12  0:54           ` James Clark
2026-10-12 13:18             ` Nicolai Buchwitz
2026-10-12 11:51           ` Andrew Lunn
2026-10-12 13:21             ` Nicolai Buchwitz
2026-10-10 15:11   ` netdev-bot+sashiko
2026-10-12 12:03   ` Andrew Lunn
2026-10-10  4:55 ` [PATCH net-next 0/5] net: mdio: add timestamped MDIO writes for PHY gettimex64 James Clark
2026-10-11 13:50 ` Andrew Lunn
2026-10-11 14:00   ` James Clark
2026-10-11 18:07   ` Nicolai Buchwitz
2026-10-12 13:18     ` Andrew Lunn
2026-10-12 13:20       ` Nicolai Buchwitz

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=41c32f5a6f38ec9df8a79ce896912fb9@tipi-net.de \
    --to=nb@tipi-net.de \
    --cc=andrew+netdev@lunn.ch \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=conor.dooley@microchip.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@kernel.org \
    --cc=florian.fainelli@broadcom.com \
    --cc=hkallweit1@gmail.com \
    --cc=jjc@jclark.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mlichvar@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=opendmb@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=richardcochran@gmail.com \
    --cc=tglx@kernel.org \
    --cc=theo.lebrun@bootlin.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.