Re: Multitude of resource assignment functions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 30, 2019 at 02:57:37AM +0000, Nicholas Johnson wrote:

> - Should pci=noacpi imply pci=nocrs? It does not appear to, and I feel 
> like it should, as CRS is part of ACPI and relates to PCI.

"pci=noacpi" means "Do not use ACPI for IRQ routing or for PCI
scanning."

"pci=nocrs" means "Ignore PCI host bridge windows from ACPI."  If we
ignore _CRS, we have no idea what the PCI host bridge apertures are,
so we cannot allocate resources for devices on the root bus.

The "Do not use ACPI for ... PCI scanning" part indeed does suggest
that "pci=noacpi" could imply "pci=nocrs", but I don't think there's
anything to be gained by changing that now.

We probably *should* remove "or for PCI scanning" from the
documentation, because "pci=noacpi" only affects IRQs.

The only reason these exist at all is as a debugging aid to
temporarily work around issues in firmware or Linux until we can
develop a real fix or quirk that works without the user specifying a
kernel parameter.

> - Does anybody know why with pci=noacpi, you get dmesg warnings about 
> cannot find PCI int A mapping - but they do not seem to cause the 
> devices any issues in functioning? Is it because they are using MSI?

I doubt it.  I think you're just lucky.  In general the information
from _PRT and _CRS is essential for correct operation.

> - Does pci=ignorefw sound good for a future proposal?

No, at least not without more description of what this would
accomplish.

It sounds like you would want this to turn off _PRT, _CRS, and other
information from ACPI.  You may not like ACPI, but that information is
there for good reason, and if we didn't get it from ACPI we would have
to get it from somewhere else.

There is always "acpi=off" if you just don't want ACPI at all.

Bjorn



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux