lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 5 Apr 2019 14:28:25 -0700
From:   Florian Fainelli <f.fainelli@...il.com>
To:     Heiner Kallweit <hkallweit1@...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 4/5/19 2:20 PM, Heiner Kallweit wrote:
> On 05.04.2019 23:16, Heiner Kallweit wrote:
>> 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.
>>
> In addition: BMSR_ESTATEN being set isn't a guarantee yet that the PHY
> supports gigabit. Still in MII_ESTATUS the gigabit bits couldn't be set.
> A Fast PHY could use some IP which is gigabit-prepared.
> I don't know if such a PHY exists, but it would be totally compliant
> with C22.
> 

There are Gigabit PHYs that are being limited in software to 10/100
because the Ethernet MAC is not capable, yet it's easier/cheaper to
populate a gigabit capable PHY (Simmon's use case is one of them I
believe, but I have come across that too).
-- 
Florian

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ