16 static int pch_revision_id = -1;
18 #ifdef __SIMPLE_DEVICE__
24 if (pch_revision_id < 0)
26 return pch_revision_id;
33 #ifdef __SIMPLE_DEVICE__
69 #define IOBP_RETRY 1000
130 #ifndef __SIMPLE_DEVICE__
215 if (port_func >= dev_func &&
216 port_func < (dev_func + 4) &&
253 u8 new_hotplug_map[
sizeof(
config->pcie_hotplug_map)];
260 sizeof(new_hotplug_map));
278 "PCH: PCIe map %02x.%1x -> %02x.%1x\n",
287 new_hotplug_map[
PCI_FUNC(new_devfn)] =
297 sizeof(new_hotplug_map));
322 config->pcie_port_coalesce =
true;
324 if (
config->pcie_port_coalesce)
326 "PCH: PCIe Root Port coalescing is enabled\n");
373 if (
config->pcie_port_coalesce) {
399 if (
config->pcie_port_coalesce)
426 CHIP_NAME(
"Intel Series 6/7 (Cougar Point/Panther Point) Southbridge")
void * memcpy(void *dest, const void *src, size_t n)
#define printk(level,...)
DEVTREE_CONST struct device *DEVTREE_CONST all_devices
Linked list of ALL devices.
DEVTREE_CONST struct device * pcidev_on_root(uint8_t dev, uint8_t fn)
const char * dev_path(const struct device *dev)
static __always_inline void pci_and_config16(const struct device *dev, u16 reg, u16 andmask)
static __always_inline void pci_or_config16(const struct device *dev, u16 reg, u16 ormask)
static __always_inline void pci_or_config8(const struct device *dev, u16 reg, u8 ormask)
static __always_inline u8 pci_read_config8(const struct device *dev, u16 reg)
static __always_inline void pci_write_config8(const struct device *dev, u16 reg, u8 val)
#define BIOS_INFO
BIOS_INFO - Expected events.
#define BIOS_DEBUG
BIOS_DEBUG - Verbose output.
#define BIOS_ERR
BIOS_ERR - System in incomplete state.
#define BIOS_SPEW
BIOS_SPEW - Excessively verbose output.
#define PCI_DEVFN(slot, func)
#define PCI_COMMAND_MASTER
#define PCI_COMMAND_MEMORY
#define PCI_DEV(SEGBUS, DEV, FN)
#define PCH_DISABLE_HD_AUDIO
#define RPFN_FNGET(reg, port)
#define PCH_DISABLE_SMBUS
#define RPFN_FNSET(port, func)
#define PCH_DISABLE_EHCI1
#define PCH_DISABLE_SATA2
#define PCH_DISABLE_EHCI2
#define PCH_DISABLE_SATA1
#define PCH_DISABLE_THERMAL
#define PCH_DISABLE_PCIE(x)
#define RPFN_FNMASK(port)
static int iobp_poll(void)
struct chip_operations southbridge_intel_bd82x6x_ops
static void pch_pcie_function_swap(u8 old_fn, u8 new_fn)
void pch_iobp_update(u32 address, u32 andvalue, u32 orvalue)
static void pch_pcie_enable(struct device *dev)
void pch_enable(struct device *dev)
static int pch_pcie_check_set_enabled(struct device *dev)
static int pch_silicon_supported(int type, int rev)
int pch_silicon_type(void)
int pch_silicon_revision(void)
static void pch_pcie_devicetree_update(struct southbridge_intel_bd82x6x_config *config)
static void pch_hide_devfn(unsigned int devfn)
#define PCH_PCIE_DEV_SLOT
DEVTREE_CONST struct device * next
DEVTREE_CONST void * chip_info