Re: [PATCH v5 08/17] ACPI: pci_link: Clear the dependencies after probe

Sunil V L
2024-05-02T09:32:48Z

On Thu, May 02, 2024 at 12:25:35PM +0300, Andy Shevchenko wrote:
> On Wed, May 01, 2024 at 11:56:15AM -0500, Bjorn Helgaas wrote:
> > On Wed, May 01, 2024 at 05:47:33PM +0530, Sunil V L wrote:
> > > RISC-V platforms need to use dependencies between PCI host bridge, Link
> > > devices and the interrupt controllers to ensure probe order. The
> > > dependency is like below.
> > >
> > > Interrupt controller <-- Link Device <-- PCI Host bridge.
> > >
> > > If there is no dependency added between Link device and PCI Host Bridge,
> > > then the PCI end points can get probed prior to link device, unable to
> > > get mapping for INTx.
> > >
> > > So, add the link device's HID to dependency honor list and also clear it
> > > after its probe.
> > >
> > > Since this is required only for architectures like RISC-V, enable this
> > > code under a new config option and set this only in RISC-V.
>
> ...
>
> > > + if (IS_ENABLED(CONFIG_ARCH_ACPI_DEFERRED_GSI))
> > > + acpi_dev_clear_dependencies(device);
> >
> > This is really a question for Rafael, but it doesn't seem right that
> > this completely depends on a config option.
>
> +1 here, fells like a hack and looks like a hack.
>
I can remove the config option. I just thought this would probably never
required to be called on other architectures.

Unless there is an objection, I will remove it in next version.

Thanks!
Sunil
> > Is there a reason this wouldn't work for all architectures, i.e., what
> > would happen if you just called acpi_dev_clear_dependencies()
> > unconditionally?
>
> --
> With Best Regards,
> Andy Shevchenko
>
>