10 #define CACHE_LINE_SIZE 0x10
30 if (
CONFIG(PCIE_DEBUG_INFO)) {
54 static struct pci_operations
pcie_ops = {
386 static const struct pci_driver pch_pcie
__pci_driver = {
#define printk(level,...)
static __always_inline void pci_or_config32(const struct device *dev, u16 reg, u32 ormask)
static __always_inline void pci_and_config16(const struct device *dev, u16 reg, u16 andmask)
static __always_inline u16 pci_read_config16(const struct device *dev, u16 reg)
static __always_inline u32 pci_read_config32(const struct device *dev, u16 reg)
static __always_inline void pci_write_config16(const struct device *dev, u16 reg, u16 val)
static __always_inline void pci_write_config8(const struct device *dev, u16 reg, u8 val)
#define BIOS_DEBUG
BIOS_DEBUG - Verbose output.
#define BIOS_SPEW
BIOS_SPEW - Excessively verbose output.
#define PCI_PREF_BASE_UPPER32
#define PCI_BRIDGE_CTL_PARITY
#define PCI_PREF_MEMORY_BASE
#define PCI_PREF_LIMIT_UPPER32
#define PCI_BRIDGE_CONTROL
#define PCI_COMMAND_MASTER
#define PCI_CACHE_LINE_SIZE
void pci_bus_enable_resources(struct device *dev)
void pci_dev_set_subsystem(struct device *dev, unsigned int vendor, unsigned int device)
void pci_bus_read_resources(struct device *dev)
void pci_dev_set_resources(struct device *dev)
#define PCI_DID_INTEL_UPT_H_PCIE_RP8
#define PCI_DID_INTEL_CNP_H_PCIE_RP10
#define PCI_DID_INTEL_CMP_H_PCIE_RP22
#define PCI_DID_INTEL_CNL_LP_PCIE_RP8
#define PCI_DID_INTEL_CNL_LP_PCIE_RP15
#define PCI_DID_INTEL_TGP_LP_PCIE_RP10
#define PCI_DID_INTEL_CNL_LP_PCIE_RP4
#define PCI_DID_INTEL_LWB_PCIE_RP12
#define PCI_DID_INTEL_CNP_H_PCIE_RP18
#define PCI_DID_INTEL_CMP_LP_PCIE_RP12
#define PCI_DID_INTEL_CMP_H_PCIE_RP20
#define PCI_DID_INTEL_CNP_H_PCIE_RP16
#define PCI_DID_INTEL_ADP_P_PCIE_RP9
#define PCI_DID_INTEL_TGP_H_PCIE_RP23
#define PCI_DID_INTEL_LWB_PCIE_RP12_SUPER
#define PCI_DID_INTEL_ADP_M_PCIE_RP5
#define PCI_DID_INTEL_ADP_S_PCIE_RP26
#define PCI_DID_INTEL_TGP_H_PCIE_RP10
#define PCI_DID_INTEL_TGP_H_PCIE_RP20
#define PCI_DID_INTEL_UPT_H_PCIE_RP4
#define PCI_DID_INTEL_CMP_H_PCIE_RP9
#define PCI_DID_INTEL_TGP_LP_PCIE_RP11
#define PCI_DID_INTEL_JSP_PCIE_RP5
#define PCI_DID_INTEL_CNP_H_PCIE_RP3
#define PCI_DID_INTEL_TGP_H_PCIE_RP18
#define PCI_DID_INTEL_CMP_LP_PCIE_RP2
#define PCI_DID_INTEL_CMP_LP_PCIE_RP7
#define PCI_DID_INTEL_CMP_H_PCIE_RP8
#define PCI_DID_INTEL_ADP_S_PCIE_RP23
#define PCI_DID_INTEL_CMP_H_PCIE_RP16
#define PCI_DID_INTEL_TGP_LP_PCIE_RP8
#define PCI_DID_INTEL_ADP_P_PCIE_RP4
#define PCI_DID_INTEL_LWB_PCIE_RP8_SUPER
#define PCI_DID_INTEL_CMP_LP_PCIE_RP16
#define PCI_DID_INTEL_ADP_S_PCIE_RP16
#define PCI_DID_INTEL_CMP_H_PCIE_RP1
#define PCI_DID_INTEL_ICP_LP_PCIE_RP14
#define PCI_DID_INTEL_LWB_PCIE_RP7_SUPER
#define PCI_DID_INTEL_TGP_H_PCIE_RP11
#define PCI_DID_INTEL_LWB_PCIE_RP2
#define PCI_DID_INTEL_CNP_H_PCIE_RP19
#define PCI_DID_INTEL_ADP_P_PCIE_RP5
#define PCI_DID_INTEL_TGP_LP_PCIE_RP4
#define PCI_DID_INTEL_CNP_H_PCIE_RP14
#define PCI_DID_INTEL_MCC_PCIE_RP5
#define PCI_DID_INTEL_TGP_H_PCIE_RP9
#define PCI_DID_INTEL_LWB_PCIE_RP20
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP9
#define PCI_DID_INTEL_CNP_H_PCIE_RP11
#define PCI_DID_INTEL_ICP_LP_PCIE_RP6
#define PCI_DID_INTEL_LWB_PCIE_RP1_SUPER
#define PCI_DID_INTEL_ICP_LP_PCIE_RP2
#define PCI_DID_INTEL_CMP_H_PCIE_RP24
#define PCI_DID_INTEL_MCC_PCIE_RP7
#define PCI_DID_INTEL_ICP_LP_PCIE_RP3
#define PCI_DID_INTEL_MCC_PCIE_RP4
#define PCI_DID_INTEL_CMP_LP_PCIE_RP13
#define PCI_DID_INTEL_ADP_N_PCIE_RP12
#define PCI_DID_INTEL_CNP_H_PCIE_RP12
#define PCI_DID_INTEL_ADP_S_PCIE_RP8
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP4
#define PCI_DID_INTEL_LWB_PCIE_RP17
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP1
#define PCI_DID_INTEL_CNL_LP_PCIE_RP12
#define PCI_DID_INTEL_SPT_LP_PCIE_RP2
#define PCI_DID_INTEL_LWB_PCIE_RP17_SUPER
#define PCI_DID_INTEL_SPT_H_PCIE_RP12
#define PCI_DID_INTEL_SPT_LP_PCIE_RP10
#define PCI_DID_INTEL_LWB_PCIE_RP19
#define PCI_DID_INTEL_CMP_H_PCIE_RP15
#define PCI_DID_INTEL_LWB_PCIE_RP2_SUPER
#define PCI_DID_INTEL_CMP_H_PCIE_RP3
#define PCI_DID_INTEL_ADL_P_PCIE_RP1
#define PCI_DID_INTEL_CNL_LP_PCIE_RP7
#define PCI_DID_INTEL_SPT_LP_PCIE_RP3
#define PCI_DID_INTEL_MTL_IOE_P_PCIE_RP11
#define PCI_DID_INTEL_SPT_LP_PCIE_RP1
#define PCI_DID_INTEL_SPT_H_PCIE_RP19
#define PCI_DID_INTEL_UPT_H_PCIE_RP20
#define PCI_DID_INTEL_SPT_H_PCIE_RP15
#define PCI_DID_INTEL_ADP_S_PCIE_RP22
#define PCI_DID_INTEL_LWB_PCIE_RP9
#define PCI_DID_INTEL_CMP_LP_PCIE_RP10
#define PCI_DID_INTEL_CNL_LP_PCIE_RP10
#define PCI_DID_INTEL_ADP_P_PCIE_RP8
#define PCI_DID_INTEL_CNP_H_PCIE_RP15
#define PCI_DID_INTEL_CMP_H_PCIE_RP6
#define PCI_DID_INTEL_CMP_H_PCIE_RP5
#define PCI_DID_INTEL_SPT_H_PCIE_RP13
#define PCI_DID_INTEL_CNP_H_PCIE_RP5
#define PCI_DID_INTEL_TGP_LP_PCIE_RP5
#define PCI_DID_INTEL_LWB_PCIE_RP6_SUPER
#define PCI_DID_INTEL_UPT_H_PCIE_RP2
#define PCI_DID_INTEL_CNP_H_PCIE_RP23
#define PCI_DID_INTEL_TGP_LP_PCIE_RP15
#define PCI_DID_INTEL_CNP_H_PCIE_RP13
#define PCI_DID_INTEL_ADP_S_PCIE_RP11
#define PCI_DID_INTEL_LWB_PCIE_RP6
#define PCI_DID_INTEL_CMP_H_PCIE_RP17
#define PCI_DID_INTEL_ADP_N_PCIE_RP11
#define PCI_DID_INTEL_JSP_PCIE_RP1
#define PCI_DID_INTEL_ADP_S_PCIE_RP28
#define PCI_DID_INTEL_MTL_IOE_P_PCIE_RP12
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP10
#define PCI_DID_INTEL_SPT_LP_PCIE_RP9
#define PCI_DID_INTEL_SPT_H_PCIE_RP20
#define PCI_DID_INTEL_LWB_PCIE_RP3_SUPER
#define PCI_DID_INTEL_LWB_PCIE_RP7
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP5
#define PCI_DID_INTEL_LWB_PCIE_RP14_SUPER
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP3
#define PCI_DID_INTEL_SPT_H_PCIE_RP7
#define PCI_DID_INTEL_ADP_P_PCIE_RP6
#define PCI_DID_INTEL_TGP_H_PCIE_RP15
#define PCI_DID_INTEL_UPT_H_PCIE_RP18
#define PCI_DID_INTEL_MTL_IOE_P_PCIE_RP10
#define PCI_DID_INTEL_CNL_LP_PCIE_RP14
#define PCI_DID_INTEL_MCC_PCIE_RP2
#define PCI_DID_INTEL_ICP_LP_PCIE_RP13
#define PCI_DID_INTEL_ADP_S_PCIE_RP27
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP3
#define PCI_DID_INTEL_LWB_PCIE_RP5
#define PCI_DID_INTEL_UPT_H_PCIE_RP1
#define PCI_DID_INTEL_ADP_P_PCIE_RP1
#define PCI_DID_INTEL_CMP_H_PCIE_RP21
#define PCI_DID_INTEL_JSP_PCIE_RP4
#define PCI_DID_INTEL_CMP_H_PCIE_RP19
#define PCI_DID_INTEL_TGP_H_PCIE_RP2
#define PCI_DID_INTEL_CMP_LP_PCIE_RP9
#define PCI_DID_INTEL_ADP_S_PCIE_RP2
#define PCI_DID_INTEL_CNL_LP_PCIE_RP3
#define PCI_DID_INTEL_SPT_H_PCIE_RP11
#define PCI_DID_INTEL_UPT_H_PCIE_RP6
#define PCI_DID_INTEL_LWB_PCIE_RP3
#define PCI_DID_INTEL_UPT_H_PCIE_RP14
#define PCI_DID_INTEL_MCC_PCIE_RP3
#define PCI_DID_INTEL_LWB_PCIE_RP18_SUPER
#define PCI_DID_INTEL_UPT_H_PCIE_RP16
#define PCI_DID_INTEL_CNL_LP_PCIE_RP5
#define PCI_DID_INTEL_CMP_H_PCIE_RP7
#define PCI_DID_INTEL_ICP_LP_PCIE_RP7
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP7
#define PCI_DID_INTEL_LWB_PCIE_RP11
#define PCI_DID_INTEL_LWB_PCIE_RP5_SUPER
#define PCI_DID_INTEL_UPT_H_PCIE_RP9
#define PCI_DID_INTEL_SPT_H_PCIE_RP1
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP6
#define PCI_DID_INTEL_LWB_PCIE_RP8
#define PCI_DID_INTEL_ICP_LP_PCIE_RP5
#define PCI_DID_INTEL_LWB_PCIE_RP4
#define PCI_DID_INTEL_ADL_P_PCIE_RP3
#define PCI_DID_INTEL_LWB_PCIE_RP4_SUPER
#define PCI_DID_INTEL_MCC_PCIE_RP6
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP1
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP2
#define PCI_DID_INTEL_ICP_LP_PCIE_RP11
#define PCI_DID_INTEL_TGP_LP_PCIE_RP2
#define PCI_DID_INTEL_TGP_LP_PCIE_RP16
#define PCI_DID_INTEL_CNP_H_PCIE_RP4
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP7
#define PCI_DID_INTEL_CNL_LP_PCIE_RP1
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP2
#define PCI_DID_INTEL_CNL_LP_PCIE_RP6
#define PCI_DID_INTEL_SPT_H_PCIE_RP17
#define PCI_DID_INTEL_CNL_LP_PCIE_RP11
#define PCI_DID_INTEL_ADP_S_PCIE_RP19
#define PCI_DID_INTEL_UPT_H_PCIE_RP11
#define PCI_DID_INTEL_ADP_S_PCIE_RP3
#define PCI_DID_INTEL_ADP_S_PCIE_RP14
#define PCI_DID_INTEL_ADP_S_PCIE_RP17
#define PCI_DID_INTEL_UPT_H_PCIE_RP3
#define PCI_DID_INTEL_UPT_H_PCIE_RP21
#define PCI_DID_INTEL_SPT_H_PCIE_RP4
#define PCI_DID_INTEL_TGP_H_PCIE_RP5
#define PCI_DID_INTEL_CMP_LP_PCIE_RP3
#define PCI_DID_INTEL_TGP_LP_PCIE_RP3
#define PCI_DID_INTEL_TGP_H_PCIE_RP21
#define PCI_DID_INTEL_JSP_PCIE_RP3
#define PCI_DID_INTEL_CNL_LP_PCIE_RP2
#define PCI_DID_INTEL_TGP_H_PCIE_RP14
#define PCI_DID_INTEL_ICP_LP_PCIE_RP16
#define PCI_DID_INTEL_TGP_LP_PCIE_RP13
#define PCI_DID_INTEL_UPT_H_PCIE_RP12
#define PCI_DID_INTEL_CNP_H_PCIE_RP21
#define PCI_DID_INTEL_JSP_PCIE_RP2
#define PCI_DID_INTEL_ADP_M_PCIE_RP8
#define PCI_DID_INTEL_SPT_LP_PCIE_RP4
#define PCI_DID_INTEL_ADP_S_PCIE_RP7
#define PCI_DID_INTEL_ADP_S_PCIE_RP18
#define PCI_DID_INTEL_TGP_LP_PCIE_RP7
#define PCI_DID_INTEL_CNP_H_PCIE_RP22
#define PCI_DID_INTEL_MCC_PCIE_RP1
#define PCI_DID_INTEL_LWB_PCIE_RP9_SUPER
#define PCI_DID_INTEL_CMP_H_PCIE_RP18
#define PCI_DID_INTEL_CNP_H_PCIE_RP17
#define PCI_DID_INTEL_CNL_LP_PCIE_RP9
#define PCI_DID_INTEL_ICP_LP_PCIE_RP12
#define PCI_DID_INTEL_SPT_H_PCIE_RP18
#define PCI_DID_INTEL_ADP_P_PCIE_RP3
#define PCI_DID_INTEL_CNP_H_PCIE_RP7
#define PCI_DID_INTEL_SPT_H_PCIE_RP16
#define PCI_DID_INTEL_ICP_LP_PCIE_RP15
#define PCI_DID_INTEL_ADP_P_PCIE_RP7
#define PCI_DID_INTEL_SPT_H_PCIE_RP3
#define PCI_DID_INTEL_SPT_H_PCIE_RP6
#define PCI_DID_INTEL_ADP_S_PCIE_RP15
#define PCI_DID_INTEL_CMP_LP_PCIE_RP14
#define PCI_DID_INTEL_UPT_H_PCIE_RP22
#define PCI_DID_INTEL_SPT_H_PCIE_RP5
#define PCI_DID_INTEL_TGP_H_PCIE_RP19
#define PCI_DID_INTEL_CNP_H_PCIE_RP8
#define PCI_DID_INTEL_SPT_LP_PCIE_RP11
#define PCI_DID_INTEL_ADL_P_PCIE_RP2
#define PCI_DID_INTEL_UPT_H_PCIE_RP7
#define PCI_DID_INTEL_CNP_H_PCIE_RP20
#define PCI_DID_INTEL_CMP_H_PCIE_RP12
#define PCI_DID_INTEL_TGP_H_PCIE_RP16
#define PCI_DID_INTEL_SPT_H_PCIE_RP10
#define PCI_DID_INTEL_ICP_LP_PCIE_RP8
#define PCI_DID_INTEL_ICP_LP_PCIE_RP4
#define PCI_DID_INTEL_TGP_LP_PCIE_RP14
#define PCI_DID_INTEL_ADP_S_PCIE_RP25
#define PCI_DID_INTEL_SPT_H_PCIE_RP9
#define PCI_DID_INTEL_CMP_LP_PCIE_RP15
#define PCI_DID_INTEL_UPT_H_PCIE_RP23
#define PCI_DID_INTEL_UPT_H_PCIE_RP15
#define PCI_DID_INTEL_LWB_PCIE_RP10
#define PCI_DID_INTEL_LWB_PCIE_RP20_SUPER
#define PCI_DID_INTEL_JSP_PCIE_RP8
#define PCI_DID_INTEL_CMP_LP_PCIE_RP5
#define PCI_DID_INTEL_CNP_H_PCIE_RP1
#define PCI_DID_INTEL_SPT_LP_PCIE_RP7
#define PCI_DID_INTEL_ICP_LP_PCIE_RP9
#define PCI_DID_INTEL_LWB_PCIE_RP16
#define PCI_DID_INTEL_TGP_H_PCIE_RP12
#define PCI_DID_INTEL_ADP_S_PCIE_RP12
#define PCI_DID_INTEL_LWB_PCIE_RP15_SUPER
#define PCI_DID_INTEL_ICP_LP_PCIE_RP1
#define PCI_DID_INTEL_UPT_H_PCIE_RP19
#define PCI_DID_INTEL_CMP_H_PCIE_RP11
#define PCI_DID_INTEL_LWB_PCIE_RP16_SUPER
#define PCI_DID_INTEL_CMP_H_PCIE_RP2
#define PCI_DID_INTEL_ADP_S_PCIE_RP13
#define PCI_DID_INTEL_SPT_LP_PCIE_RP12
#define PCI_DID_INTEL_ADP_S_PCIE_RP20
#define PCI_DID_INTEL_LWB_PCIE_RP13
#define PCI_DID_INTEL_LWB_PCIE_RP15
#define PCI_DID_INTEL_TGP_H_PCIE_RP3
#define PCI_DID_INTEL_TGP_H_PCIE_RP6
#define PCI_DID_INTEL_SPT_LP_PCIE_RP8
#define PCI_DID_INTEL_ADP_S_PCIE_RP1
#define PCI_DID_INTEL_CMP_LP_PCIE_RP8
#define PCI_DID_INTEL_TGP_H_PCIE_RP22
#define PCI_DID_INTEL_ADP_S_PCIE_RP6
#define PCI_DID_INTEL_CMP_LP_PCIE_RP6
#define PCI_DID_INTEL_CNL_LP_PCIE_RP13
#define PCI_DID_INTEL_TGP_LP_PCIE_RP12
#define PCI_DID_INTEL_TGP_H_PCIE_RP13
#define PCI_DID_INTEL_UPT_H_PCIE_RP5
#define PCI_DID_INTEL_LWB_PCIE_RP11_SUPER
#define PCI_DID_INTEL_CMP_LP_PCIE_RP1
#define PCI_DID_INTEL_SPT_LP_PCIE_RP6
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP9
#define PCI_DID_INTEL_CMP_H_PCIE_RP13
#define PCI_DID_INTEL_ADP_P_PCIE_RP2
#define PCI_DID_INTEL_UPT_H_PCIE_RP13
#define PCI_DID_INTEL_LWB_PCIE_RP10_SUPER
#define PCI_DID_INTEL_TGP_LP_PCIE_RP6
#define PCI_DID_INTEL_TGP_H_PCIE_RP1
#define PCI_DID_INTEL_JSP_PCIE_RP6
#define PCI_DID_INTEL_CNP_H_PCIE_RP2
#define PCI_DID_INTEL_TGP_LP_PCIE_RP9
#define PCI_DID_INTEL_SPT_H_PCIE_RP2
#define PCI_DID_INTEL_SPT_LP_PCIE_RP5
#define PCI_DID_INTEL_UPT_H_PCIE_RP10
#define PCI_DID_INTEL_MTL_SOC_PCIE_RP8
#define PCI_DID_INTEL_ADP_P_PCIE_RP10
#define PCI_DID_INTEL_TGP_H_PCIE_RP4
#define PCI_DID_INTEL_CMP_H_PCIE_RP10
#define PCI_DID_INTEL_TGP_H_PCIE_RP7
#define PCI_DID_INTEL_LWB_PCIE_RP19_SUPER
#define PCI_DID_INTEL_ADP_P_PCIE_RP12
#define PCI_DID_INTEL_ADP_S_PCIE_RP24
#define PCI_DID_INTEL_LWB_PCIE_RP18
#define PCI_DID_INTEL_CNP_H_PCIE_RP6
#define PCI_DID_INTEL_ADP_S_PCIE_RP21
#define PCI_DID_INTEL_ADP_S_PCIE_RP10
#define PCI_DID_INTEL_CMP_H_PCIE_RP23
#define PCI_DID_INTEL_SPT_H_PCIE_RP8
#define PCI_DID_INTEL_CNL_LP_PCIE_RP16
#define PCI_DID_INTEL_UPT_H_PCIE_RP24
#define PCI_DID_INTEL_ADP_M_N_PCIE_RP4
#define PCI_DID_INTEL_CNP_H_PCIE_RP24
#define PCI_DID_INTEL_UPT_H_PCIE_RP17
#define PCI_DID_INTEL_CMP_H_PCIE_RP14
#define PCI_DID_INTEL_ADP_S_PCIE_RP5
#define PCI_DID_INTEL_SPT_H_PCIE_RP14
#define PCI_DID_INTEL_TGP_H_PCIE_RP24
#define PCI_DID_INTEL_ICP_LP_PCIE_RP10
#define PCI_DID_INTEL_CMP_LP_PCIE_RP11
#define PCI_DID_INTEL_CMP_LP_PCIE_RP4
#define PCI_DID_INTEL_ADP_P_PCIE_RP11
#define PCI_DID_INTEL_LWB_PCIE_RP14
#define PCI_DID_INTEL_TGP_H_PCIE_RP8
#define PCI_DID_INTEL_CMP_H_PCIE_RP4
#define PCI_DID_INTEL_ADP_S_PCIE_RP9
#define PCI_DID_INTEL_TGP_LP_PCIE_RP1
#define PCI_DID_INTEL_CNP_H_PCIE_RP9
#define PCI_DID_INTEL_LWB_PCIE_RP13_SUPER
#define PCI_DID_INTEL_JSP_PCIE_RP7
#define PCI_DID_INTEL_TGP_H_PCIE_RP17
#define PCI_DID_INTEL_ADP_S_PCIE_RP4
#define PCI_DID_INTEL_LWB_PCIE_RP1
#define PCI_DID_INTEL_ADP_M_PCIE_RP6
#define PCIE_LTR_MAX_NO_SNOOP_LATENCY_3146US
#define PCIE_LTR_MAX_SNOOP_LATENCY_3146US
void pciexp_scan_bridge(struct device *dev)
static struct device_operations device_ops
static void pch_pcie_init(struct device *dev)
static void pcie_get_ltr_max_latencies(u16 *max_snoop, u16 *max_nosnoop)
static const struct pci_driver pch_pcie __pci_driver
static const unsigned short pcie_device_ids[]
static struct pci_operations pcie_ops
void(* read_resources)(struct device *dev)