blob: 94597a3cf3d0f14fa1e81989437cf43a485d59e0 [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001/* 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 */