1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _ASM_X86_PCI_DIRECT_H
3#define _ASM_X86_PCI_DIRECT_H
4
5#include <linux/types.h>
6
7/* Direct PCI access. This is used for PCI accesses in early boot before
8 the PCI subsystem works. */
9
10extern u32 read_pci_config(u8 bus, u8 slot, u8 func, u8 offset);
11extern u8 read_pci_config_byte(u8 bus, u8 slot, u8 func, u8 offset);
12extern u16 read_pci_config_16(u8 bus, u8 slot, u8 func, u8 offset);
13extern void write_pci_config(u8 bus, u8 slot, u8 func, u8 offset, u32 val);
14extern void write_pci_config_byte(u8 bus, u8 slot, u8 func, u8 offset, u8 val);
15extern void write_pci_config_16(u8 bus, u8 slot, u8 func, u8 offset, u16 val);
16
17extern int early_pci_allowed(void);
18#endif /* _ASM_X86_PCI_DIRECT_H */
19