[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6a052004-e5d4-e63b-4a20-5e7a2381c726@gmail.com>
Date: Fri, 5 Apr 2019 23:16:41 +0200
From: Heiner Kallweit <hkallweit1@...il.com>
To: Florian Fainelli <f.fainelli@...il.com>,
Andrew Lunn <andrew@...n.ch>
Cc: David Miller <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH net-next] net: phy: improve link partner capability
detection
On 05.04.2019 23:11, Florian Fainelli wrote:
> On 4/5/19 1:51 PM, Heiner Kallweit wrote:
>> On 05.04.2019 22:43, Andrew Lunn wrote:
>>>> Right. BMSR_ESTATEN should not be set on a Fast PHY. Handling of this
>>>> case didn't change.
>>>>
>>>>> A Fast MAC connected to a Giga PHY. The MAC driver will of used
>>>>> phy_set_max_speed() to indicate its limits. In that case, MII_STAT1000
>>>>> does exist and we should report what the peer is advertising.
>>>>>
>>>> That's what we're doing now with this patch.
>>>
>>> Hi Heiner
>>>
>>> What i don't get is why we need to do anything based on the MAC. All
>>> we need to do is look at BMSR_ESTATEN, and from that decided if we
>>> should look at MII_STAT1000 or not. When reporting what the peer can
>>> do, we should not care what the local MAC can do.
>>>
>> Do we have a misunderstanding? What you describe is exactly what we're
>> doing now. BMSR_ESTATEN is read by genphy_read_abilities().
>> I just don't want to read BMSR whenever genphy_read_status() is called.
>
> You have to read the BMSR to determine the link status anyway, did you
> mean: have to check BMSR_ESTATEN whenever genphy_read_status() is called?
>
I would have to add extra logic to propagate BMSR_ESTATEN from
genphy_update_link() to genphy_read_status(). BMSR_ESTATEN has a fixed
value and therefore it's sufficient to read it initially.
Powered by blists - more mailing lists