netdev
[Top] [All Lists]

Re: RFC: PHY Abstraction Layer II

To: Stephen Hemminger <shemminger@xxxxxxxx>
Subject: Re: RFC: PHY Abstraction Layer II
From: Andy Fleming <afleming@xxxxxxxxxxxxx>
Date: Thu, 26 May 2005 13:45:20 -0500
Cc: Netdev <netdev@xxxxxxxxxxx>, Embedded PPC Linux list <linuxppc-embedded@xxxxxxxxxx>, Kumar Gala <kumar.gala@xxxxxxxxxxxxx>
In-reply-to: <20050526113218.23e44164@xxxxxxxxxxxxxxxxx>
References: <1107b64b01fb8e9a6c84359bb56881a6@xxxxxxxxxxxxx> <20050526113218.23e44164@xxxxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx

On May 26, 2005, at 13:32, Stephen Hemminger wrote:

I finally got around to looking at this for the new skge driver.
The Marvell phy code has several issues:
    * hard coded hex values rather than constants

These are hard-coded because it's errata. The errata doesn't name the registers, nor the bits being set, so the best I could do is something like:

phy_write(phydev, M88E1101_ERRATA_REGISTER1, M88E1101_ERRATA_REG1_VALUE1);

I'm not sure that's more useful.


    * doesn't handle restricted autonegotiation

I'm not quite sure what you mean by this one. ALL the PHYs support restricting auto-negotiation to certain values. See drivers/net/phy/ phy_device.c:genphy_config_advert(), which is called by marvell's config_aneg function (eventually).

    * it doesn't really help the driver that much there are too
      many other warts in the hardware.

Err... the skge hardware, or the Marvell hardware? Could you specify some warts, so I can look into what changes might need to be made?

Andy

<Prev in Thread] Current Thread [Next in Thread>