[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cab82f78-a331-b607-3505-4a03f8db9d50@gmail.com>
Date: Tue, 22 Jan 2019 20:09:08 +0100
From: Heiner Kallweit <hkallweit1@...il.com>
To: "Lendacky, Thomas" <Thomas.Lendacky@....com>,
Andrew Lunn <andrew@...n.ch>
Cc: Florian Fainelli <f.fainelli@...il.com>,
David Miller <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"S-k, Shyam-sundar" <Shyam-sundar.S-k@....com>
Subject: Re: [PATCH net-next v2 1/4] net: phy: start state machine in
phy_start only
On 22.01.2019 15:46, Lendacky, Thomas wrote:
> On 1/21/19 12:36 PM, Heiner Kallweit wrote:
>> On 21.01.2019 17:35, Andrew Lunn wrote:
>>> On Sun, Jan 20, 2019 at 10:01:15AM +0100, Heiner Kallweit wrote:
>>>> The state machine is a no-op before phy_start() has been called.
>>>> Therefore let's enable it in phy_start() only. In phy_start()
>>>> let's call phy_start_machine() instead of phy_trigger_machine().
>>>> phy_start_machine is an alias for phy_trigger_machine but it makes
>>>> clearer that we start the state machine here instead of just
>>>> triggering a run.
>>>
>>> Hi Heiner
>>>
>>> Documentation/networking/phy.txt has a section "Doing it all yourself"
>>> It would be good to review that, and make sure that documentation is
>>> still valid. I'm not sure any MAC driver actually does do it all
>>> itself. So it might be worth reviewing the whole document and making
>>> updates to remove parts of the text.
>>>
>> Right. I figured out that I have update phy.txt anyway because I
>> recently removed phy_stop_interrupts which is referenced in the
>> documentation. OK if we leave the patch series as is and I submit
>> the documentation update as a separate patch?
>
> I think you need to be careful here and not break what is allowed in the
> "Doing it all yourself" section. The amd-xgbe driver makes use of this
> functionality and does not use phy_start()/phy_stop(). Specifically, it
> does:
> get_phy_device();
> phy_device_register();
> phy_attach_direct();
>
> At which point it uses phy_start_aneg(), phy_read(), phy_write(),
> phy_read_status() and phy_aneg_done().
>
Thanks for the hint, Tom. I *think* the changes should be safe.
However, if AMD has a regression test suite I'd appreciate if you could
test the changes upfront or once they reach net-next.
> I'm not sure what other drivers out there that make use of this support
> within phylib.
>
> Btw, I did notice this revert that was applied that eliminated a warning
> that I started seeing in 5.0, so that is good:
> d9f903f6af3d ("net: phy: fix too strict check in phy_start_aneg")
>
> Thanks,
> Tom
>
>>
>>> Andrew
>>>
>>>
>> Heiner
>>
Powered by blists - more mailing lists