H. Peter Anvin | 1965aae | 2008-10-22 22:26:29 -0700 | [diff] [blame] | 1 | #ifndef _ASM_X86_PCI_DIRECT_H |
| 2 | #define _ASM_X86_PCI_DIRECT_H |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 | |
| 4 | #include <linux/types.h> |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 5 | |
| 6 | /* Direct PCI access. This is used for PCI accesses in early boot before |
Joe Perches | 565c640 | 2008-03-23 01:03:03 -0700 | [diff] [blame] | 7 | the PCI subsystem works. */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 8 | |
Andi Kleen | 8f60774 | 2006-09-26 10:52:41 +0200 | [diff] [blame] | 9 | extern u32 read_pci_config(u8 bus, u8 slot, u8 func, u8 offset); |
| 10 | extern u8 read_pci_config_byte(u8 bus, u8 slot, u8 func, u8 offset); |
| 11 | extern u16 read_pci_config_16(u8 bus, u8 slot, u8 func, u8 offset); |
| 12 | extern void write_pci_config(u8 bus, u8 slot, u8 func, u8 offset, u32 val); |
Siddha, Suresh B | 274e1bb | 2006-12-07 02:14:10 +0100 | [diff] [blame] | 13 | extern void write_pci_config_byte(u8 bus, u8 slot, u8 func, u8 offset, u8 val); |
Yinghai Lu | e7891c7 | 2008-05-22 14:35:21 -0700 | [diff] [blame] | 14 | extern void write_pci_config_16(u8 bus, u8 slot, u8 func, u8 offset, u16 val); |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 15 | |
Andi Kleen | 0637a70 | 2006-09-26 10:52:41 +0200 | [diff] [blame] | 16 | extern int early_pci_allowed(void); |
| 17 | |
Yinghai Lu | e3f2bae | 2008-05-22 14:35:11 -0700 | [diff] [blame] | 18 | extern unsigned int pci_early_dump_regs; |
| 19 | extern void early_dump_pci_device(u8 bus, u8 slot, u8 func); |
| 20 | extern void early_dump_pci_devices(void); |
H. Peter Anvin | 1965aae | 2008-10-22 22:26:29 -0700 | [diff] [blame] | 21 | #endif /* _ASM_X86_PCI_DIRECT_H */ |