[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z6GVDuhNyjFQ4OKT@sunil-laptop>
Date: Tue, 4 Feb 2025 09:48:22 +0530
From: Sunil V L <sunilvl@...tanamicro.com>
To: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Cc: Anup Patel <apatel@...tanamicro.com>,
Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Jassi Brar <jassisinghbrar@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
"Rafael J . Wysocki" <rafael@...nel.org>,
Mika Westerberg <mika.westerberg@...ux.intel.com>,
Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <brgl@...ev.pl>,
Uwe Kleine-König <ukleinek@...nel.org>,
Palmer Dabbelt <palmer@...belt.com>,
Paul Walmsley <paul.walmsley@...ive.com>,
Len Brown <lenb@...nel.org>,
Rahul Pathak <rpathak@...tanamicro.com>,
Leyfoon Tan <leyfoon.tan@...rfivetech.com>,
Atish Patra <atishp@...shpatra.org>,
Andrew Jones <ajones@...tanamicro.com>,
Samuel Holland <samuel.holland@...ive.com>,
Anup Patel <anup@...infault.org>, linux-clk@...r.kernel.org,
devicetree@...r.kernel.org, linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH v2 16/17] irqchip/riscv-rpmi-sysmsi: Add ACPI support
On Mon, Feb 03, 2025 at 11:38:28AM +0200, Andy Shevchenko wrote:
> On Mon, Feb 03, 2025 at 02:19:05PM +0530, Anup Patel wrote:
> > From: Sunil V L <sunilvl@...tanamicro.com>
> >
> > Add ACPI support for the RISC-V RPMI system MSI based irqchip driver.
>
> ...
>
> > + if (!is_of_node(dev->fwnode)) {
>
> Please, use dev_fwnode(),
>
> But why do you need this? Can't the below simply become a no-op without
> this check?
>
> > + rc = riscv_acpi_get_gsi_info(dev->fwnode, &priv->gsi_base, &id,
>
> Ditto.
>
> > + &priv->nr_irqs, NULL);
> > + if (rc) {
> > + dev_err(dev, "failed to find GSI mapping\n");
> > + return rc;
> > + }
> > + }
>
> ...
>
> > * then we need to set it explicitly before using any platform
> > * MSI functions.
> > */
> > - if (is_of_node(dev->fwnode))
> > + if (is_of_node(dev->fwnode)) {
> > of_msi_configure(dev, to_of_node(dev->fwnode));
> > + } else {
> > + struct irq_domain *msi_domain;
> > +
> > + msi_domain = irq_find_matching_fwnode(imsic_acpi_get_fwnode(dev),
> > + DOMAIN_BUS_PLATFORM_MSI);
>
> > + if (msi_domain)
>
> Hmm... The OF case above assumes this check is not needed. Why is it special
> otherwise?
>
> > + dev_set_msi_domain(dev, msi_domain);
> > + }
> >
> > if (!dev_get_msi_domain(dev))
>
> Even here you have a check for NULL, so I believe the conditional is simply
> redundant.
>
> ...
>
> > +#ifdef CONFIG_ACPI
>
> > + if (!acpi_disabled)
>
> Why?
>
> > + acpi_dev_clear_dependencies(ACPI_COMPANION(dev));
> > +#endif
>
> ...
>
> > +#ifdef CONFIG_ACPI
>
> Drop this ugly ifdeffery along with ACPI_PTR(). They are more harmful than
> useful.
>
> ...
>
> > +static const struct acpi_device_id acpi_rpmi_sysmsi_match[] = {
> > + { "RSCV0006", 0 },
>
> Drop ', 0' part as it may be converted to a pointer in the future.
>
Thanks!. Let me address your comments in next revision.
Thanks,
Sunil
Powered by blists - more mailing lists