[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5829B999.9020109@laposte.net>
Date: Mon, 14 Nov 2016 14:18:17 +0100
From: Sebastian Frias <sf84@...oste.net>
To: Florian Fainelli <f.fainelli@...il.com>, afleming@...escale.com,
jgarzik@...ox.com,
Måns Rullgård <mans@...sr.com>
Cc: netdev <netdev@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
"David S. Miller" <davem@...emloft.net>, Mason <slash.tmp@...e.fr>
Subject: Re: Is Documentation/networking/phy.txt still up-to-date?
On 11/09/2016 06:07 PM, Florian Fainelli wrote:
> On 11/09/2016 05:24 AM, Sebastian Frias wrote:
>> Hi,
>>
>> Documentation/networking/phy.txt discusses phy_connect and states that:
>>
>> "...
>>
>> interface is a u32 which specifies the connection type used
>> between the controller and the PHY. Examples are GMII, MII,
>> RGMII, and SGMII. For a full list, see include/linux/phy.h
>>
>> Now just make sure that phydev->supported and phydev->advertising have any
>> values pruned from them which don't make sense for your controller (a 10/100
>> controller may be connected to a gigabit capable PHY, so you would need to
>> mask off SUPPORTED_1000baseT*). See include/linux/ethtool.h for definitions
>> for these bitfields. Note that you should not SET any bits, or the PHY may
>> get put into an unsupported state.
>>
>> ..."
>>
>> However, 'drivers/net/ethernet/aurora/nb8800.c' for example, does SETs some
>> bits (in function 'nb8800_pause_adv').
>
> All pause/flow control related bits should be set by the Ethernet MAC
> driver because this is an Ethernet MAC, not PHY, thing. See this
> discussion for some details:
>
> https://www.mail-archive.com/netdev@vger.kernel.org/msg135347.html
>
> So the nb8800 drivers does the correct thing here, but the documentation
> should be updated to reflect that this applies to all bits, except the
> Pause capabilities because these need to come from the Ethernet MAC.
>
Ok, thanks.
>>
>> I checked 'drivers/net/ethernet/broadcom/genet/bcmmii.c' and that one CLEARs
>> bits (as per the documentation).
>>
>> Does anybody knows what is the correct/recommended approach?
>
> Both drivers do correct things, they just don't set the same things here.
>
Thanks!
Powered by blists - more mailing lists