forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'x86-irq-2021-08-30' of git://git.kernel.org/pub/scm/linux/…
…kernel/git/tip/tip Pull x86 PIRQ updates from Thomas Gleixner: "A set of updates to support port 0x22/0x23 based PCI configuration space which can be found on various ALi chipsets and is also available on older Intel systems which expose a PIRQ router. While the Intel support is more or less nostalgia, the ALi chips are still in use on popular embedded boards used for routers" * tag 'x86-irq-2021-08-30' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86: Fix typo s/ECLR/ELCR/ for the PIC register x86: Avoid magic number with ELCR register accesses x86/PCI: Add support for the Intel 82426EX PIRQ router x86/PCI: Add support for the Intel 82374EB/82374SB (ESC) PIRQ router x86/PCI: Add support for the ALi M1487 (IBC) PIRQ router x86: Add support for 0x22/0x23 port I/O configuration space
- Loading branch information
Showing
15 changed files
with
359 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
/* SPDX-License-Identifier: GPL-2.0 */ | ||
/* | ||
* Support for the configuration register space at port I/O locations | ||
* 0x22 and 0x23 variously used by PC architectures, e.g. the MP Spec, | ||
* Cyrix CPUs, numerous chipsets. | ||
*/ | ||
#ifndef _ASM_X86_PC_CONF_REG_H | ||
#define _ASM_X86_PC_CONF_REG_H | ||
|
||
#include <linux/io.h> | ||
#include <linux/spinlock.h> | ||
#include <linux/types.h> | ||
|
||
#define PC_CONF_INDEX 0x22 | ||
#define PC_CONF_DATA 0x23 | ||
|
||
#define PC_CONF_MPS_IMCR 0x70 | ||
|
||
extern raw_spinlock_t pc_conf_lock; | ||
|
||
static inline u8 pc_conf_get(u8 reg) | ||
{ | ||
outb(reg, PC_CONF_INDEX); | ||
return inb(PC_CONF_DATA); | ||
} | ||
|
||
static inline void pc_conf_set(u8 reg, u8 data) | ||
{ | ||
outb(reg, PC_CONF_INDEX); | ||
outb(data, PC_CONF_DATA); | ||
} | ||
|
||
#endif /* _ASM_X86_PC_CONF_REG_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
// SPDX-License-Identifier: GPL-2.0 | ||
/* | ||
* Support for the configuration register space at port I/O locations | ||
* 0x22 and 0x23 variously used by PC architectures, e.g. the MP Spec, | ||
* Cyrix CPUs, numerous chipsets. As the space is indirectly addressed | ||
* it may have to be protected with a spinlock, depending on the context. | ||
*/ | ||
|
||
#include <linux/spinlock.h> | ||
|
||
#include <asm/pc-conf-reg.h> | ||
|
||
DEFINE_RAW_SPINLOCK(pc_conf_lock); |
Oops, something went wrong.