From: claudiu beznea <claudiu.beznea@tuxon.dev>
To: Sergey Shtylyov <s.shtylyov@omp.ru>,
davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, richardcochran@gmail.com,
p.zabel@pengutronix.de, yoshihiro.shimoda.uh@renesas.com,
wsa+renesas@sang-engineering.com, geert+renesas@glider.be
Cc: netdev@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
linux-kernel@vger.kernel.org,
Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Subject: Re: [PATCH net-next v2 09/21] net: ravb: Split GTI computation and set operations
Date: Sun, 17 Dec 2023 14:40:39 +0200 [thread overview]
Message-ID: <53c90a2a-c43b-40e7-a9b2-55aab55541d7@tuxon.dev> (raw)
In-Reply-To: <3e8f65e3-3aab-ddf4-2b05-16b275af6021@omp.ru>
On 16.12.2023 18:38, Sergey Shtylyov wrote:
> On 12/14/23 2:45 PM, Claudiu wrote:
>
>> From: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
>>
>> ravb_set_gti() was computing the value of GTI based on the reference clock
>> rate and then applied it to register. This was done on the driver's probe
>> function. In order to implement runtime PM for all IP variants (as some IP
>> variants switches to reset operation mode (and thus the register's content
>
> Again, operating mode...
>
>> is lost) when module standby is configured through clock APIs) the GTI was
>
> The GTI what? Setup?
>
>> split in 2 parts: one computing the value of the GTI register (done in the
>> driver's probe function) and one applying the computed value to register
>> (done in the driver's ndo_open API).
>>
>> Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
> [...]
>
>> diff --git a/drivers/net/ethernet/renesas/ravb.h b/drivers/net/ethernet/renesas/ravb.h
>> index e0f8276cffed..76202395b68d 100644
>> --- a/drivers/net/ethernet/renesas/ravb.h
>> +++ b/drivers/net/ethernet/renesas/ravb.h
>> @@ -1106,6 +1106,8 @@ struct ravb_private {
>>
>> const struct ravb_hw_info *info;
>> struct reset_control *rstc;
>> +
>> + uint64_t gti_tiv;
>
> Please use the kernel type, u64; uint64_t is for userland, IIRC.
I just kept the initial type here. Anyway, uint64_t should translate to u64
AFAICT.
Looking at it again the field here is enough to be 32 bit as the register
field is no longer than that. It is needed on 64 bits when checking the
ranges in compute function.
>
> [...]
>> diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c
>> index d7f6e8ea8e79..5e01e03e1b43 100644
>> --- a/drivers/net/ethernet/renesas/ravb_main.c
>> +++ b/drivers/net/ethernet/renesas/ravb_main.c
>> @@ -1750,6 +1750,51 @@ static int ravb_set_reset_mode(struct net_device *ndev)
>> return error;
>> }
>>
>> +static int ravb_set_gti(struct net_device *ndev)
>> +{
> [...]
>> + /* Request GTI loading */
>> + ravb_modify(ndev, GCCR, GCCR_LTI, GCCR_LTI);
>> +
>> + /* Check completion status. */
>> + return ravb_wait(ndev, GCCR, GCCR_LTI, 0);
>
> Is this really necessary?
I've just updated it to respect the manual specifications. Please let me
know if you want me to drop it. For this series it should be harmless
keeping it as it was previously (I will double check it).
>
> [...]
>> @@ -1767,6 +1812,10 @@ static int ravb_open(struct net_device *ndev)
>> goto out_napi_off;
>> ravb_emac_init(ndev);
>>
>> + error = ravb_set_gti(ndev);
>> + if (error)
>> + goto out_dma_stop;
>> +
>
> Hm... belongs in ravb_dmac_init() now, as it seems...
Isn't it PTP specific?
>
> [...]
>
> MBR, Sergey
next prev parent reply other threads:[~2023-12-17 12:40 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-14 11:45 [PATCH net-next v2 00/21] net: ravb: Add suspend to RAM and runtime PM support for RZ/G3S Claudiu
2023-12-14 11:45 ` [PATCH net-next v2 01/21] net: ravb: Let IP-specific receive function to interrogate descriptors Claudiu
2023-12-14 20:39 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 02/21] net: ravb: Rely on PM domain to enable gptp_clk Claudiu
2023-12-14 11:45 ` [PATCH net-next v2 03/21] net: ravb: Make reset controller support mandatory Claudiu
2023-12-14 11:45 ` [PATCH net-next v2 04/21] net: ravb: Switch to SYSTEM_SLEEP_PM_OPS()/RUNTIME_PM_OPS() and pm_ptr() Claudiu
2023-12-14 11:45 ` [PATCH net-next v2 05/21] net: ravb: Use tabs instead of spaces Claudiu
2023-12-14 11:45 ` [PATCH net-next v2 06/21] net: ravb: Assert/de-assert reset on suspend/resume Claudiu
2023-12-14 20:58 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 07/21] net: ravb: Move reference clock enable/disable on runtime PM APIs Claudiu
2023-12-15 17:24 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 08/21] net: ravb: Move the IRQs get and request in the probe function Claudiu
2023-12-16 15:53 ` Sergey Shtylyov
2023-12-17 11:56 ` claudiu beznea
2023-12-14 11:45 ` [PATCH net-next v2 09/21] net: ravb: Split GTI computation and set operations Claudiu
2023-12-16 16:38 ` Sergey Shtylyov
2023-12-17 12:40 ` claudiu beznea [this message]
2023-12-19 18:20 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 10/21] net: ravb: Move delay mode set in the driver's ndo_open API Claudiu
2023-12-15 19:58 ` Sergey Shtylyov
2023-12-15 19:58 ` Sergey Shtylyov
2023-12-17 12:49 ` claudiu beznea
2023-12-19 18:40 ` Sergey Shtylyov
2023-12-20 12:02 ` claudiu beznea
2023-12-14 11:45 ` [PATCH net-next v2 11/21] net: ravb: Move DBAT configuration to " Claudiu
2023-12-14 21:03 ` Sergey Shtylyov
2023-12-15 20:01 ` Sergey Shtylyov
2023-12-17 12:54 ` claudiu beznea
2023-12-19 18:54 ` Sergey Shtylyov
2023-12-20 11:41 ` claudiu beznea
2023-12-21 19:54 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 12/21] net: ravb: Move ptp initialization in the driver's ndo_open API for ccc_gac platorms Claudiu
2023-12-16 17:10 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 13/21] net: ravb: Set config mode in ndo_open and reset mode in ndo_close Claudiu
2023-12-16 17:28 ` Sergey Shtylyov
2023-12-17 13:15 ` claudiu beznea
2023-12-21 19:40 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 14/21] net: ravb: Simplify ravb_suspend() Claudiu
2023-12-16 17:47 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 15/21] net: ravb: Simplify ravb_resume() Claudiu
2023-12-16 19:26 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 16/21] net: ravb: Keep the reverse order of operations in ravb_close() Claudiu
2023-12-16 19:38 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 17/21] net: ravb: Keep clock request operations grouped together Claudiu
2023-12-16 19:43 ` Sergey Shtylyov
2023-12-17 13:22 ` claudiu beznea
2023-12-19 20:29 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 18/21] net: ravb: Return cached statistics if the interface is down Claudiu
2023-12-16 20:02 ` Sergey Shtylyov
2023-12-17 13:54 ` claudiu beznea
2023-12-20 20:00 ` Sergey Shtylyov
2023-12-16 20:02 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 19/21] net: ravb: Do not set promiscuous mode " Claudiu
2023-12-16 20:16 ` Sergey Shtylyov
2023-12-17 14:02 ` claudiu beznea
2023-12-20 20:44 ` Sergey Shtylyov
2023-12-14 11:45 ` [PATCH net-next v2 20/21] net: ravb: Do not apply RX CSUM settings to hardware " Claudiu
2023-12-16 20:36 ` Sergey Shtylyov
2023-12-17 14:34 ` claudiu beznea
2023-12-21 18:50 ` Sergey Shtylyov
2023-12-14 11:46 ` [PATCH net-next v2 21/21] net: ravb: Add runtime PM support Claudiu
2023-12-16 20:56 ` Sergey Shtylyov
2023-12-14 11:56 ` [PATCH net-next v2 00/21] net: ravb: Add suspend to RAM and runtime PM support for RZ/G3S claudiu beznea
2023-12-14 19:26 ` Jakub Kicinski
2023-12-15 9:44 ` claudiu beznea
2023-12-15 16:52 ` Jakub Kicinski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53c90a2a-c43b-40e7-a9b2-55aab55541d7@tuxon.dev \
--to=claudiu.beznea@tuxon.dev \
--cc=claudiu.beznea.uj@bp.renesas.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=geert+renesas@glider.be \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=pabeni@redhat.com \
--cc=richardcochran@gmail.com \
--cc=s.shtylyov@omp.ru \
--cc=wsa+renesas@sang-engineering.com \
--cc=yoshihiro.shimoda.uh@renesas.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).