Re: [PATCH net-next v3 03/19] net: ravb: Make reset controller support mandatory

From: Geert Uytterhoeven
Date: Fri Jan 05 2024 - 04:39:19 EST


Hi Claudiu,

On Fri, Jan 5, 2024 at 9:24 AM Claudiu <claudiu.beznea@xxxxxxxxx> wrote:
> From: Claudiu Beznea <claudiu.beznea.uj@xxxxxxxxxxxxxx>
>
> On the RZ/G3S SoC the reset controller is mandatory for the IP to work.
> The device tree binding documentation for the ravb driver specifies that
> the resets are mandatory. Based on this, make the resets mandatory also in
> driver for all ravb devices.
>
> Reviewed-by: Sergey Shtylyov <s.shtylyov@xxxxxx>
> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@xxxxxxxxxxxxxx>

> --- a/drivers/net/ethernet/renesas/ravb_main.c
> +++ b/drivers/net/ethernet/renesas/ravb_main.c
> @@ -2645,7 +2645,7 @@ static int ravb_probe(struct platform_device *pdev)
> return -EINVAL;
> }
>
> - rstc = devm_reset_control_get_optional_exclusive(&pdev->dev, NULL);
> + rstc = devm_reset_control_get_exclusive(&pdev->dev, NULL);
> if (IS_ERR(rstc))
> return dev_err_probe(&pdev->dev, PTR_ERR(rstc),
> "failed to get cpg reset\n");

Upon second look, you also have to make config RAVB select
RESET_CONTROLLER.
Currently, you can build an R-Car Gen[234] kernel with RESET_CONTROLLER
disabled, causing devm_reset_control_get_exclusive() to fail
unconditionally.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds