aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/PCI
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2016-09-06 17:24:37 -0400
committerBjorn Helgaas <bhelgaas@google.com>2016-09-14 16:27:49 -0400
commit7ece14175376051b18a9b97f0e6125cb8b864155 (patch)
treebcfcc5f761bf26b4356634c67e74bd9ae2e44163 /Documentation/PCI
parent9ff25e6b3eb0012297288dfa87930c7b62ef6ab1 (diff)
PCI/AER: Remove aerdriver.forceload kernel parameter
Per the PCI Firmware spec, r3.0, sec 4.5.1, on ACPI systems, the OS must not use AER unless _OSC is present and _OSC grants AER control to the OS. The aerdriver.forceload kernel parameter was a way to enable Linux AER support on ACPI systems that lack _OSC or fail to grant control the the OS. Enabling Linux AER support when the firmware doesn't want us to is a recipe for problems, e.g., the firmware might be handling AER itself. Remove the aerdriver.forceload kernel parameter and related supporting code. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'Documentation/PCI')
-rw-r--r--Documentation/PCI/pcieaer-howto.txt22
1 files changed, 9 insertions, 13 deletions
diff --git a/Documentation/PCI/pcieaer-howto.txt b/Documentation/PCI/pcieaer-howto.txt
index 4956df36c59d..ea8cafba255c 100644
--- a/Documentation/PCI/pcieaer-howto.txt
+++ b/Documentation/PCI/pcieaer-howto.txt
@@ -49,21 +49,17 @@ depends on CONFIG_PCIEPORTBUS, so pls. set CONFIG_PCIEPORTBUS=y and
49CONFIG_PCIEAER = y. 49CONFIG_PCIEAER = y.
50 50
512.2 Load PCI Express AER Root Driver 512.2 Load PCI Express AER Root Driver
52There is a case where a system has AER support in BIOS. Enabling the AER 52
53Root driver and having AER support in BIOS may result unpredictable 53Some systems have AER support in firmware. Enabling Linux AER support at
54behavior. To avoid this conflict, a successful load of the AER Root driver 54the same time the firmware handles AER may result in unpredictable
55requires ACPI _OSC support in the BIOS to allow the AER Root driver to 55behavior. Therefore, Linux does not handle AER events unless the firmware
56request for native control of AER. See the PCI FW 3.0 Specification for 56grants AER control to the OS via the ACPI _OSC method. See the PCI FW 3.0
57details regarding OSC usage. Currently, lots of firmwares don't provide 57Specification for details regarding _OSC usage.
58_OSC support while they use PCI Express. To support such firmwares,
59forceload, a parameter of type bool, could enable AER to continue to
60be initiated although firmwares have no _OSC support. To enable the
61walkaround, pls. add aerdriver.forceload=y to kernel boot parameter line
62when booting kernel. Note that forceload=n by default.
63 58
642.3 AER error output 592.3 AER error output
65When a PCI-E AER error is captured, an error message will be outputted to 60
66console. If it's a correctable error, it is outputted as a warning. 61When a PCIe AER error is captured, an error message will be output to
62console. If it's a correctable error, it is output as a warning.
67Otherwise, it is printed as an error. So users could choose different 63Otherwise, it is printed as an error. So users could choose different
68log level to filter out correctable error messages. 64log level to filter out correctable error messages.
69 65