docs: PCI: Replace non-breaking spaces to avoid PDF issues
The conversion tools used during DocBook/LaTeX/html/Markdown->ReST conversion and some cut-and-pasted text contain some characters that aren't easily reachable on standard keyboards and/or could cause troubles when parsed by the documentation build system. Replace the occurences of the following characters: - U+00a0 (' '): NO-BREAK SPACE as it can cause lines being truncated on PDF output Acked-by: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Link: https://lore.kernel.org/r/8036126a59adb720dbc9233341ad5a08531cf73f.1623826294.git.mchehab+huawei@kernel.org Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
parent
729979ebef
commit
a557f67cd7
|
@ -22,9 +22,9 @@ or if the device has INTx interrupts connected by platform interrupt
|
||||||
controllers and a _PRT is needed to describe those connections.
|
controllers and a _PRT is needed to describe those connections.
|
||||||
|
|
||||||
ACPI resource description is done via _CRS objects of devices in the ACPI
|
ACPI resource description is done via _CRS objects of devices in the ACPI
|
||||||
namespace [2]. The _CRS is like a generalized PCI BAR: the OS can read
|
namespace [2]. The _CRS is like a generalized PCI BAR: the OS can read
|
||||||
_CRS and figure out what resource is being consumed even if it doesn't have
|
_CRS and figure out what resource is being consumed even if it doesn't have
|
||||||
a driver for the device [3]. That's important because it means an old OS
|
a driver for the device [3]. That's important because it means an old OS
|
||||||
can work correctly even on a system with new devices unknown to the OS.
|
can work correctly even on a system with new devices unknown to the OS.
|
||||||
The new devices might not do anything, but the OS can at least make sure no
|
The new devices might not do anything, but the OS can at least make sure no
|
||||||
resources conflict with them.
|
resources conflict with them.
|
||||||
|
@ -41,15 +41,15 @@ ACPI, that device will have a specific _HID/_CID that tells the OS what
|
||||||
driver to bind to it, and the _CRS tells the OS and the driver where the
|
driver to bind to it, and the _CRS tells the OS and the driver where the
|
||||||
device's registers are.
|
device's registers are.
|
||||||
|
|
||||||
PCI host bridges are PNP0A03 or PNP0A08 devices. Their _CRS should
|
PCI host bridges are PNP0A03 or PNP0A08 devices. Their _CRS should
|
||||||
describe all the address space they consume. This includes all the windows
|
describe all the address space they consume. This includes all the windows
|
||||||
they forward down to the PCI bus, as well as registers of the host bridge
|
they forward down to the PCI bus, as well as registers of the host bridge
|
||||||
itself that are not forwarded to PCI. The host bridge registers include
|
itself that are not forwarded to PCI. The host bridge registers include
|
||||||
things like secondary/subordinate bus registers that determine the bus
|
things like secondary/subordinate bus registers that determine the bus
|
||||||
range below the bridge, window registers that describe the apertures, etc.
|
range below the bridge, window registers that describe the apertures, etc.
|
||||||
These are all device-specific, non-architected things, so the only way a
|
These are all device-specific, non-architected things, so the only way a
|
||||||
PNP0A03/PNP0A08 driver can manage them is via _PRS/_CRS/_SRS, which contain
|
PNP0A03/PNP0A08 driver can manage them is via _PRS/_CRS/_SRS, which contain
|
||||||
the device-specific details. The host bridge registers also include ECAM
|
the device-specific details. The host bridge registers also include ECAM
|
||||||
space, since it is consumed by the host bridge.
|
space, since it is consumed by the host bridge.
|
||||||
|
|
||||||
ACPI defines a Consumer/Producer bit to distinguish the bridge registers
|
ACPI defines a Consumer/Producer bit to distinguish the bridge registers
|
||||||
|
@ -66,7 +66,7 @@ the PNP0A03/PNP0A08 device itself. The workaround was to describe the
|
||||||
bridge registers (including ECAM space) in PNP0C02 catch-all devices [6].
|
bridge registers (including ECAM space) in PNP0C02 catch-all devices [6].
|
||||||
With the exception of ECAM, the bridge register space is device-specific
|
With the exception of ECAM, the bridge register space is device-specific
|
||||||
anyway, so the generic PNP0A03/PNP0A08 driver (pci_root.c) has no need to
|
anyway, so the generic PNP0A03/PNP0A08 driver (pci_root.c) has no need to
|
||||||
know about it.
|
know about it.
|
||||||
|
|
||||||
New architectures should be able to use "Consumer" Extended Address Space
|
New architectures should be able to use "Consumer" Extended Address Space
|
||||||
descriptors in the PNP0A03 device for bridge registers, including ECAM,
|
descriptors in the PNP0A03 device for bridge registers, including ECAM,
|
||||||
|
@ -75,9 +75,9 @@ ia64 kernels assume all address space descriptors, including "Consumer"
|
||||||
Extended Address Space ones, are windows, so it would not be safe to
|
Extended Address Space ones, are windows, so it would not be safe to
|
||||||
describe bridge registers this way on those architectures.
|
describe bridge registers this way on those architectures.
|
||||||
|
|
||||||
PNP0C02 "motherboard" devices are basically a catch-all. There's no
|
PNP0C02 "motherboard" devices are basically a catch-all. There's no
|
||||||
programming model for them other than "don't use these resources for
|
programming model for them other than "don't use these resources for
|
||||||
anything else." So a PNP0C02 _CRS should claim any address space that is
|
anything else." So a PNP0C02 _CRS should claim any address space that is
|
||||||
(1) not claimed by _CRS under any other device object in the ACPI namespace
|
(1) not claimed by _CRS under any other device object in the ACPI namespace
|
||||||
and (2) should not be assigned by the OS to something else.
|
and (2) should not be assigned by the OS to something else.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue