mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 04:34:08 +08:00
docs: firmware-guide: ACPI: Add named interrupt doc
Add a detailed example of the named interrupts in the ACPI table. Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Signed-off-by: Wolfram Sang <wsa@kernel.org>
This commit is contained in:
parent
ca0acb511c
commit
20e8ef5c7f
@ -143,6 +143,45 @@ In robust cases the client unfortunately needs to call
|
||||
acpi_dma_request_slave_chan_by_index() directly and therefore choose the
|
||||
specific FixedDMA resource by its index.
|
||||
|
||||
Named Interrupts
|
||||
================
|
||||
|
||||
Drivers enumerated via ACPI can have names to interrupts in the ACPI table
|
||||
which can be used to get the IRQ number in the driver.
|
||||
|
||||
The interrupt name can be listed in _DSD as 'interrupt-names'. The names
|
||||
should be listed as an array of strings which will map to the Interrupt()
|
||||
resource in the ACPI table corresponding to its index.
|
||||
|
||||
The table below shows an example of its usage::
|
||||
|
||||
Device (DEV0) {
|
||||
...
|
||||
Name (_CRS, ResourceTemplate() {
|
||||
...
|
||||
Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) {
|
||||
0x20,
|
||||
0x24
|
||||
}
|
||||
})
|
||||
|
||||
Name (_DSD, Package () {
|
||||
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
|
||||
Package () {
|
||||
Package () {"interrupt-names",
|
||||
Package (2) {"default", "alert"}},
|
||||
}
|
||||
...
|
||||
})
|
||||
}
|
||||
|
||||
The interrupt name 'default' will correspond to 0x20 in Interrupt()
|
||||
resource and 'alert' to 0x24. Note that only the Interrupt() resource
|
||||
is mapped and not GpioInt() or similar.
|
||||
|
||||
The driver can call the function - fwnode_irq_get_byname() with the fwnode
|
||||
and interrupt name as arguments to get the corresponding IRQ number.
|
||||
|
||||
SPI serial bus support
|
||||
======================
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user