[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e3fca0f385e489cc30fc79c09d642c110125fd89.camel@microchip.com>
Date: Mon, 30 Sep 2024 15:03:56 +0200
From: Steen Hegelund <steen.hegelund@...rochip.com>
To: Herve Codina <herve.codina@...tlin.com>, Geert Uytterhoeven
<geert@...ux-m68k.org>, Andy Shevchenko <andy.shevchenko@...il.com>, "Simon
Horman" <horms@...nel.org>, Lee Jones <lee@...nel.org>, Arnd Bergmann
<arnd@...db.de>, Derek Kiernan <derek.kiernan@....com>, Dragan Cvetic
<dragan.cvetic@....com>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Bjorn Helgaas <bhelgaas@...gle.com>, Philipp Zabel <p.zabel@...gutronix.de>,
Lars Povlsen <lars.povlsen@...rochip.com>, Daniel Machon
<daniel.machon@...rochip.com>, <UNGLinuxDriver@...rochip.com>, Rob Herring
<robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley
<conor+dt@...nel.org>, Saravana Kannan <saravanak@...gle.com>
CC: "David S. Miller" <davem@...emloft.net>, Eric Dumazet
<edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni
<pabeni@...hat.com>, Horatiu Vultur <horatiu.vultur@...rochip.com>, "Andrew
Lunn" <andrew@...n.ch>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <netdev@...r.kernel.org>,
<linux-pci@...r.kernel.org>, <linux-arm-kernel@...ts.infradead.org>, "Allan
Nielsen" <allan.nielsen@...rochip.com>, Luca Ceresoli
<luca.ceresoli@...tlin.com>, Thomas Petazzoni <thomas.petazzoni@...tlin.com>
Subject: Re: [PATCH v6 2/7] reset: mchp: sparx5: Use the second reg item
when cpu-syscon is not present
Hi Herve,
On Mon, 2024-09-30 at 14:15 +0200, Herve Codina wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you
> know the content is safe
>
> In the LAN966x PCI device use case, syscon cannot be used as syscon
> devices do not support removal [1]. A syscon device is a core
> "system"
> device and not a device available in some addon boards and so, it is
> not
> supposed to be removed.
>
> In order to remove the syscon usage, use a local mapping of a reg
> address range when cpu-syscon is not present.
>
> Link:
> https://lore.kernel.org/all/20240923100741.11277439@bootlin.com/ [1]
> Signed-off-by: Herve Codina <herve.codina@...tlin.com>
> ---
> drivers/reset/reset-microchip-sparx5.c | 16 +++++++++++++++-
> 1 file changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/reset/reset-microchip-sparx5.c
> b/drivers/reset/reset-microchip-sparx5.c
> index 636e85c388b0..1c095fa41d69 100644
> --- a/drivers/reset/reset-microchip-sparx5.c
> +++ b/drivers/reset/reset-microchip-sparx5.c
> @@ -114,8 +114,22 @@ static int mchp_sparx5_reset_probe(struct
> platform_device *pdev)
> return -ENOMEM;
>
> err = mchp_sparx5_map_syscon(pdev, "cpu-syscon", &ctx-
> >cpu_ctrl);
> - if (err)
> + switch (err) {
> + case 0:
> + break;
> + case -ENODEV:
> + /*
> + * The cpu-syscon device is not available.
> + * Fall back with IO mapping (i.e. mapping from reg
> property).
> + */
> + err = mchp_sparx5_map_io(pdev, 1, &ctx->cpu_ctrl);
> + if (err)
> + return err;
> + break;
> + default:
> return err;
> + }
> +
> err = mchp_sparx5_map_io(pdev, 0, &ctx->gcb_ctrl);
> if (err)
> return err;
> --
> 2.46.1
>
LGTM
Reviewed-by: Steen Hegelund <Steen.Hegelund@...rochip.com>
BR
Steen
Powered by blists - more mailing lists