[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200418142336.GB804711@lunn.ch>
Date: Sat, 18 Apr 2020 16:23:36 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Florian Fainelli <f.fainelli@...il.com>
Cc: David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Heiner Kallweit <hkallweit1@...il.com>, fugang.duan@....com,
Chris Healy <Chris.Healy@....aero>
Subject: Re: [PATCH net-next v2 2/3] net: ethernet: fec: Allow configuration
of MDIO bus speed
On Fri, Apr 17, 2020 at 05:34:56PM -0700, Florian Fainelli wrote:
> Hi Andrew,
>
> On 4/17/2020 5:03 PM, Andrew Lunn wrote:
> > MDIO busses typically operate at 2.5MHz. However many devices can
> > operate at faster speeds. This then allows more MDIO transactions per
> > second, useful for Ethernet switch statistics, or Ethernet PHY TDR
> > data. Allow the bus speed to be configured, using the standard
> > "clock-frequency" property, which i2c busses use to indicate the bus
> > speed.
> >
> > Suggested-by: Chris Healy <Chris.Healy@....aero>
> > Signed-off-by: Andrew Lunn <andrew@...n.ch>
>
> This does look good to me, however if we go down that road, it looks like we
> should also support a 'mdio-max-frequency' per MDIO child node in order to
> scale up and down the frequency accordingly.
Hi Florian
I don't see how that would work. Each device on the bus needs to be
able to receiver the transaction in order to decode the device
address, and then either discard it, or act on it. So the same as I2C
where the device address is part of the transaction. You need the bus
to run as fast as the slowest device on the bus. So a bus property is
the simplest. You could have per device properties, and during the bus
scan, figure out what the slowest device is, but that seems to add
complexity for no real gain. I2C does not have this either.
If MDIO was more like SPI, with per device chip select lines, then a
per device frequency would make sense.
Andrew
Powered by blists - more mailing lists