[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5b6eaff5-5358-46ff-8072-8a70af1e5d5f@tuxon.dev>
Date: Wed, 20 Dec 2023 14:02:57 +0200
From: claudiu beznea <claudiu.beznea@...on.dev>
To: Sergey Shtylyov <s.shtylyov@....ru>, davem@...emloft.net,
edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com,
richardcochran@...il.com, p.zabel@...gutronix.de,
yoshihiro.shimoda.uh@...esas.com, wsa+renesas@...g-engineering.com,
geert+renesas@...der.be
Cc: netdev@...r.kernel.org, linux-renesas-soc@...r.kernel.org,
linux-kernel@...r.kernel.org,
Claudiu Beznea <claudiu.beznea.uj@...renesas.com>
Subject: Re: [PATCH net-next v2 10/21] net: ravb: Move delay mode set in the
driver's ndo_open API
On 19.12.2023 20:40, Sergey Shtylyov wrote:
> On 12/17/23 3:49 PM, claudiu beznea wrote:
>
> [...]
>>>> From: Claudiu Beznea <claudiu.beznea.uj@...renesas.com>
>>>>
>>>> Delay parse and set were done in the driver's probe API. As some IP
>>>
>>> Parsing and setting?
>>>
>>>> variants switch to reset mode (and thus registers' content is lost) when
>>>
>>> Register.
>>>
>>>> setting clocks (due to module standby functionality) to be able to
>>>> implement runtime PM keep the delay parsing in the driver's probe function
>>>> and move the delay apply function to the driver's ndo_open API.
>>>
>>> Applying?
>>>
>>>> Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@...renesas.com>
>>> [...]
>>>
>>>> diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c
>>>> index 5e01e03e1b43..04eaa1967651 100644
>>>> --- a/drivers/net/ethernet/renesas/ravb_main.c
>>>> +++ b/drivers/net/ethernet/renesas/ravb_main.c
>>> [...]
>>>> @@ -1806,6 +1821,8 @@ static int ravb_open(struct net_device *ndev)
>>>> if (info->nc_queues)
>>>> napi_enable(&priv->napi[RAVB_NC]);
>>>>
>>>> + ravb_set_delay_mode(ndev);
>>>> +
>>>
>>> I suspect this belongs in ravb_dmac_init() now...
>>
>> I'm confused... Why? To me this seems more like MAC-PHY interface related.
>
> APSR's full name is AVB-DMAC product specific register. :-)
As ravb_dmac_init() is called in multiple places I don't think it worth
configuring delays more than once in ravb_open().
Moreover TX/RX delay is something specific to the MAC-PHY interface (and
could be influenced also by the wiring length b/w MAC and PHY).
Just because it is in the DMAC address space I don't think it worth having
it in ravb_dmac_init() (for the above mentioned reasons).
>
>> Though I'm not sure what ravb_dmac_init() purpose is.
>
> To configure and start the AVB-DMAC, apparently. :-)
>
> [...]
>
> MRB, Sergey
Powered by blists - more mailing lists