Subject: Re: [PATCH v2 1/2] r8169: fix RTL8111EVL EEE and green settings

From: Andrew Lunn <[email-masked]>
Date: Sat, 16 Dec 2017 19:03:33 +0100

On Sat, Dec 16, 2017 at 06:11:01PM +0100, Heiner Kallweit wrote:
> Am 21.11.2017 um 02:34 schrieb Andrew Lunn:
> > Hi Heiner
> > 
> > Do you have access to the data sheet?
> > 
> > I had a quick look through the driver. It would be nice to refactor it
> > to follow the usual Linux conventions:
> > 
> > Turn the MDIO read/write functions into an MDIO bus driver.
> > 
> > Move the PHY code into drivers/net/phy/realtek.c, and in the process,
> > replace all the magic numbers with #defines.
> > 
> > Do you have any interest in doing this?
> > 
> >    Andrew
> > 
> Hi Andrew,
> 
> I worked a little on this topic and meanwhile have an experimental
> patch set for switching the driver to phylib, incl. MDIO bus driver.
> It works well on a RTL8168evl (RTL_GIGA_MAC_VER_34).
> Will submit this patch set as RfC in the next days.
> 
> Still open is factoring out all phy init stuff to drivers/net/phy.
> There are open issues where I would appreciate advice from the
> Realtek guys.

Hi Heiner

> The PHY in RTL8168evl identifies as RTL8211E. Question would be
> whether such an internal PHY with this id is identical to an
> external PHY with the same id.

I cannot make a 100% reliable recommendation, but i would say it is
likely the internal and the external PHY are compatible. I've seen
similar situations with Marvell Ethernet switches with Internal PHYs,
which use the same ID as discreet PHYs, and the same driver has
worked.

> In this case one option would be to move the firmware handling to
> drivers/firmware so that it can be used from PHY drivers and from
> NIC drivers as well.

If the core is the same for MAC and PHY, then moving it somewhere it
can be shared would be good.

    Andrew