All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: "Sunil V L" <sunilvl@ventanamicro.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org,
	linux-acpi@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-serial@vger.kernel.org, acpica-devel@lists.linux.dev,
	"Catalin Marinas" <catalin.marinas@arm.com>,
	"Will Deacon" <will@kernel.org>,
	"Paul Walmsley" <paul.walmsley@sifive.com>,
	"Albert Ou" <aou@eecs.berkeley.edu>,
	"Rafael J . Wysocki" <rafael@kernel.org>,
	"Len Brown" <lenb@kernel.org>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Anup Patel" <anup@brainfault.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Samuel Holland" <samuel.holland@sifive.com>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Jiri Slaby" <jirislaby@kernel.org>,
	"Robert Moore" <robert.moore@intel.com>,
	"Conor Dooley" <conor.dooley@microchip.com>,
	"Andrew Jones" <ajones@ventanamicro.com>,
	"Marc Zyngier" <maz@kernel.org>,
	"Atish Kumar Patra" <atishp@rivosinc.com>,
	"Andrei Warkentin" <andrei.warkentin@intel.com>,
	"Haibo1 Xu" <haibo1.xu@intel.com>,
	"Björn Töpel" <bjorn@kernel.org>
Subject: Re: [PATCH v5 08/17] ACPI: pci_link: Clear the dependencies after probe
Date: Thu, 2 May 2024 12:25:35 +0300	[thread overview]
Message-ID: <ZjNcDyLRm9c7BAi3@smile.fi.intel.com> (raw)
In-Reply-To: <20240501165615.GA758227@bhelgaas>

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.

> 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



WARNING: multiple messages have this Message-ID (diff)
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: "Rafael J . Wysocki" <rafael@kernel.org>,
	linux-pci@vger.kernel.org,
	"Atish Kumar Patra" <atishp@rivosinc.com>,
	"Conor Dooley" <conor.dooley@microchip.com>,
	linux-riscv@lists.infradead.org,
	"Jiri Slaby" <jirislaby@kernel.org>,
	"Haibo1 Xu" <haibo1.xu@intel.com>,
	"Anup Patel" <anup@brainfault.org>,
	acpica-devel@lists.linux.dev,
	"Robert Moore" <robert.moore@intel.com>,
	linux-acpi@vger.kernel.org,
	"Andrei Warkentin" <andrei.warkentin@intel.com>,
	linux-serial@vger.kernel.org,
	"Catalin Marinas" <catalin.marinas@arm.com>,
	"Len Brown" <lenb@kernel.org>,
	"Albert Ou" <aou@eecs.berkeley.edu>,
	"Will Deacon" <will@kernel.org>,
	"Paul Walmsley" <paul.walmsley@sifive.com>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	linux-arm-kernel@lists.infradead.org,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org,
	"Samuel Holland" <samuel.holland@sifive.com>,
	"Björn Töpel" <bjorn@kernel.org>, "Marc Zyngier" <maz@kernel.org>,
	"Andrew Jones" <ajones@ventanamicro.com>
Subject: Re: [PATCH v5 08/17] ACPI: pci_link: Clear the dependencies after probe
Date: Thu, 2 May 2024 12:25:35 +0300	[thread overview]
Message-ID: <ZjNcDyLRm9c7BAi3@smile.fi.intel.com> (raw)
In-Reply-To: <20240501165615.GA758227@bhelgaas>

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.

> 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



_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: "Sunil V L" <sunilvl@ventanamicro.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org,
	linux-acpi@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-serial@vger.kernel.org, acpica-devel@lists.linux.dev,
	"Catalin Marinas" <catalin.marinas@arm.com>,
	"Will Deacon" <will@kernel.org>,
	"Paul Walmsley" <paul.walmsley@sifive.com>,
	"Albert Ou" <aou@eecs.berkeley.edu>,
	"Rafael J . Wysocki" <rafael@kernel.org>,
	"Len Brown" <lenb@kernel.org>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Anup Patel" <anup@brainfault.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Samuel Holland" <samuel.holland@sifive.com>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Jiri Slaby" <jirislaby@kernel.org>,
	"Robert Moore" <robert.moore@intel.com>,
	"Conor Dooley" <conor.dooley@microchip.com>,
	"Andrew Jones" <ajones@ventanamicro.com>,
	"Marc Zyngier" <maz@kernel.org>,
	"Atish Kumar Patra" <atishp@rivosinc.com>,
	"Andrei Warkentin" <andrei.warkentin@intel.com>,
	"Haibo1 Xu" <haibo1.xu@intel.com>,
	"Björn Töpel" <bjorn@kernel.org>
Subject: Re: [PATCH v5 08/17] ACPI: pci_link: Clear the dependencies after probe
Date: Thu, 2 May 2024 12:25:35 +0300	[thread overview]
Message-ID: <ZjNcDyLRm9c7BAi3@smile.fi.intel.com> (raw)
In-Reply-To: <20240501165615.GA758227@bhelgaas>

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.

> 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



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2024-05-02  9:25 UTC|newest]

Thread overview: 138+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-01 12:17 [PATCH v5 00/17] RISC-V: ACPI: Add external interrupt controller support Sunil V L
2024-05-01 12:17 ` Sunil V L
2024-05-01 12:17 ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 01/17] arm64: PCI: Migrate ACPI related functions to pci-acpi.c Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:59   ` Will Deacon
2024-05-01 12:59     ` Will Deacon
2024-05-01 12:59     ` Will Deacon
2024-05-02  9:22   ` Andy Shevchenko
2024-05-02  9:22     ` Andy Shevchenko
2024-05-02  9:22     ` Andy Shevchenko
2024-05-02  9:56     ` Sunil V L
2024-05-02  9:56       ` Sunil V L
2024-05-02  9:56       ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 02/17] ACPI: scan: Add a weak function to reorder the IRQCHIP probe Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 03/17] ACPI: bus: Add acpi_riscv_init function Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-02  9:24   ` Andy Shevchenko
2024-05-02  9:24     ` Andy Shevchenko
2024-05-02  9:24     ` Andy Shevchenko
2024-05-02 10:02     ` Sunil V L
2024-05-02 10:02       ` Sunil V L
2024-05-02 10:02       ` Sunil V L
2024-05-02 10:12       ` Sudeep Holla
2024-05-02 10:12         ` Sudeep Holla
2024-05-02 10:12         ` Sudeep Holla
2024-05-02 10:19         ` Andy Shevchenko
2024-05-02 10:19           ` Andy Shevchenko
2024-05-02 10:19           ` Andy Shevchenko
2024-05-02 11:00           ` Sunil V L
2024-05-02 11:00             ` Sunil V L
2024-05-02 11:00             ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 04/17] ACPI: scan: Refactor dependency creation Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-02  9:20   ` Andy Shevchenko
2024-05-02  9:20     ` Andy Shevchenko
2024-05-02  9:20     ` Andy Shevchenko
2024-05-02  9:55     ` Sunil V L
2024-05-02  9:55       ` Sunil V L
2024-05-02  9:55       ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 05/17] ACPI: scan: Add RISC-V interrupt controllers to honor list Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 06/17] ACPI: scan: Define weak function to populate dependencies Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 07/17] ACPI: bus: Add RINTC IRQ model for RISC-V Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-23 21:59   ` Bjorn Helgaas
2024-05-23 21:59     ` Bjorn Helgaas
2024-05-23 21:59     ` Bjorn Helgaas
2024-05-27  4:35     ` Sunil V L
2024-05-27  4:35       ` Sunil V L
2024-05-27  4:35       ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 08/17] ACPI: pci_link: Clear the dependencies after probe Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 16:56   ` Bjorn Helgaas
2024-05-01 16:56     ` Bjorn Helgaas
2024-05-01 16:56     ` Bjorn Helgaas
2024-05-02  9:25     ` Andy Shevchenko [this message]
2024-05-02  9:25       ` Andy Shevchenko
2024-05-02  9:25       ` Andy Shevchenko
2024-05-02  9:32       ` Sunil V L
2024-05-02  9:32         ` Sunil V L
2024-05-02  9:32         ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 09/17] ACPI: RISC-V: Implement PCI related functionality Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 10/17] ACPI: RISC-V: Implement function to reorder irqchip probe entries Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 11/17] ACPI: RISC-V: Initialize GSI mapping structures Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 12/17] ACPI: RISC-V: Implement function to add implicit dependencies Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 13/17] irqchip/riscv-intc: Add ACPI support for AIA Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-23 21:47   ` Thomas Gleixner
2024-05-23 21:47     ` Thomas Gleixner
2024-05-23 21:47     ` Thomas Gleixner
2024-05-27  4:39     ` Sunil V L
2024-05-27  4:39       ` Sunil V L
2024-05-27  4:39       ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 14/17] irqchip/riscv-imsic: Add ACPI support Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-23 22:00   ` Thomas Gleixner
2024-05-23 22:00     ` Thomas Gleixner
2024-05-23 22:00     ` Thomas Gleixner
2024-05-27  4:52     ` Sunil V L
2024-05-27  4:52       ` Sunil V L
2024-05-27  4:52       ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 15/17] irqchip/riscv-aplic: " Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 16/17] irqchip/sifive-plic: " Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17 ` [PATCH v5 17/17] serial: 8250: Add 8250_acpi driver Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-01 12:17   ` Sunil V L
2024-05-02  9:17   ` Andy Shevchenko
2024-05-02  9:17     ` Andy Shevchenko
2024-05-02  9:17     ` Andy Shevchenko
2024-05-02  9:50     ` Sunil V L
2024-05-02  9:50       ` Sunil V L
2024-05-02  9:50       ` Sunil V L
2024-05-02 10:09       ` Andy Shevchenko
2024-05-02 10:09         ` Andy Shevchenko
2024-05-02 10:09         ` Andy Shevchenko
2024-05-02 11:20         ` Sunil V L
2024-05-02 11:20           ` Sunil V L
2024-05-02 11:20           ` Sunil V L
2024-05-02 15:35           ` Andy Shevchenko
2024-05-02 15:35             ` Andy Shevchenko
2024-05-02 15:35             ` Andy Shevchenko
2024-05-03 13:59             ` Sunil V L
2024-05-03 13:59               ` Sunil V L
2024-05-03 13:59               ` Sunil V L
2024-05-03 15:32               ` Andy Shevchenko
2024-05-03 15:32                 ` Andy Shevchenko
2024-05-03 15:32                 ` Andy Shevchenko
2024-05-06 11:45                 ` Sunil V L
2024-05-06 11:45                   ` Sunil V L
2024-05-06 11:45                   ` Sunil V L
2024-05-04 15:53   ` Greg Kroah-Hartman
2024-05-04 15:53     ` Greg Kroah-Hartman
2024-05-04 15:53     ` Greg Kroah-Hartman

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=ZjNcDyLRm9c7BAi3@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=acpica-devel@lists.linux.dev \
    --cc=ajones@ventanamicro.com \
    --cc=andrei.warkentin@intel.com \
    --cc=anup@brainfault.org \
    --cc=aou@eecs.berkeley.edu \
    --cc=atishp@rivosinc.com \
    --cc=bhelgaas@google.com \
    --cc=bjorn@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=conor.dooley@microchip.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=haibo1.xu@intel.com \
    --cc=helgaas@kernel.org \
    --cc=jirislaby@kernel.org \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=paul.walmsley@sifive.com \
    --cc=rafael@kernel.org \
    --cc=robert.moore@intel.com \
    --cc=samuel.holland@sifive.com \
    --cc=sunilvl@ventanamicro.com \
    --cc=tglx@linutronix.de \
    --cc=will@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.