![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
#include <assert.h>
#include <commonlib/helpers.h>
#include <console/console.h>
#include <device/device.h>
#include <device/pci.h>
#include <device/pci_def.h>
#include <device/pciexp.h>
#include <device/pci_ids.h>
#include <device/pci_ops.h>
#include "iobp.h"
#include "pch.h"
#include <southbridge/intel/common/gpio.h>
#include <stdint.h>
#include "chip.h"
Go to the source code of this file.
Data Structures | |
struct | root_port_config |
Macros | |
#define | MAX_NUM_ROOT_PORTS 8 |
Functions | |
static int | max_root_ports (void) |
static int | root_port_is_first (struct device *dev) |
static int | root_port_is_last (struct device *dev) |
static int | root_port_number (struct device *dev) |
static bool | is_rp_enabled (int rp) |
static void | root_port_config_update_gbe_port (void) |
static void | update_num_ports (void) |
static void | root_port_init_config (struct device *dev) |
static void | pch_pcie_device_set_func (int index, int pci_func) |
static void | pcie_enable_clock_gating (void) |
static void | root_port_commit_config (void) |
static void | root_port_mark_disable (struct device *dev) |
static void | root_port_check_disable (struct device *dev) |
static void | pcie_add_0x0202000_iobp (u32 reg) |
static void | pch_pcie_early (struct device *dev) |
static void | pch_pcie_init (struct device *dev) |
static void | pch_pcie_enable (struct device *dev) |
Variables | |
static struct root_port_config | rpc |
static struct device_operations | device_ops |
static const unsigned short | pci_device_ids [] |
static const struct pci_driver pch_pcie | __pci_driver |
|
static |
Definition at line 63 of file pcie.c.
References ARRAY_SIZE, ASSERT, device::enabled, NULL, root_port_config::ports, and rpc.
Referenced by pcie_enable_clock_gating(), and root_port_commit_config().
|
inlinestatic |
Definition at line 39 of file pcie.c.
References pch_is_lp(), pch_silicon_id(), and PCI_DID_INTEL_LPT_H81.
Referenced by root_port_init_config().
|
static |
Definition at line 190 of file pcie.c.
References BIOS_DEBUG, pci_path::devfn, root_port_config::new_rpfn, device::path, PCH_PCIE_DEV_SLOT, device_path::pci, PCI_DEVFN, PCI_FUNC, PCI_SLOT, root_port_config::ports, printk, rpc, RPFN_FNMASK, and RPFN_FNSET.
Referenced by root_port_commit_config().
Definition at line 502 of file pcie.c.
References root_port_config::b0d28f0_32c, root_port_config::b0d28f4_32c, root_port_config::b0d28f5_32c, BIOS_DEBUG, device::chip_info, config, CONFIG, pch_is_lp(), pci_and_config32(), pci_and_config8(), pci_or_config32(), pci_read_config8(), pci_update_config16(), pci_update_config32(), pcie_add_0x0202000_iobp(), root_port_config::pin_ownership, printk, root_port_number(), and rpc.
Definition at line 700 of file pcie.c.
References BIOS_DEBUG, pci_and_config16(), PCI_BRIDGE_CONTROL, PCI_BRIDGE_CTL_PARITY, PCI_COMMAND, PCI_COMMAND_MASTER, PCI_COMMAND_SERR, pci_or_config16(), pci_update_config16(), pci_write_config8(), and printk.
Definition at line 493 of file pcie.c.
References pch_iobp_read(), and pch_iobp_write().
Referenced by pch_pcie_early().
Definition at line 215 of file pcie.c.
References gpio_is_native(), is_rp_enabled(), root_port_config::num_ports, pch_is_lp(), pci_or_config32(), pci_or_config8(), pci_update_config8(), root_port_config::ports, root_port_number(), and rpc.
Referenced by root_port_commit_config().
Definition at line 371 of file pcie.c.
References device::enabled, root_port_config::gbe_port, pch_is_lp(), root_port_config::pin_ownership, root_port_mark_disable(), root_port_number(), rpc, root_port_config::strpfusecfg1, and root_port_config::strpfusecfg2.
Definition at line 301 of file pcie.c.
References BIOS_DEBUG, BIOS_ERR, BIOS_SPEW, root_port_config::coalesce, dev_path(), device::enabled, is_rp_enabled(), root_port_config::new_rpfn, NULL, root_port_config::num_ports, root_port_config::orig_rpfn, pch_disable_devfn(), pch_pcie_device_set_func(), pci_and_config16(), PCI_COMMAND, PCI_COMMAND_IO, PCI_COMMAND_MASTER, PCI_COMMAND_MEMORY, pcie_enable_clock_gating(), root_port_config::ports, printk, RCBA32, rpc, and RPFN.
Definition at line 73 of file pcie.c.
References BIOS_DEBUG, root_port_config::gbe_port, pch_is_lp(), printk, rpc, and root_port_config::strpfusecfg1.
Referenced by root_port_init_config().
Definition at line 135 of file pcie.c.
References root_port_config::b0d28f0_32c, root_port_config::b0d28f4_32c, root_port_config::b0d28f5_32c, BIOS_ERR, device::chip_info, root_port_config::coalesce, config, root_port_config::gbe_port, max_root_ports(), root_port_config::new_rpfn, NULL, root_port_config::num_ports, root_port_config::orig_rpfn, pch_is_lp(), pci_read_config32(), root_port_config::pin_ownership, root_port_config::ports, printk, RCBA32, root_port_config_update_gbe_port(), root_port_is_first(), root_port_number(), rpc, RPFN, root_port_config::strpfusecfg1, root_port_config::strpfusecfg2, root_port_config::strpfusecfg3, and update_num_ports().
|
inlinestatic |
Definition at line 47 of file pcie.c.
References pci_path::devfn, device::path, device_path::pci, and PCI_FUNC.
Referenced by root_port_init_config().
|
inlinestatic |
Definition at line 52 of file pcie.c.
References pci_path::devfn, root_port_config::num_ports, device::path, device_path::pci, PCI_FUNC, and rpc.
Definition at line 363 of file pcie.c.
References pci_path::devfn, device::enabled, root_port_config::new_rpfn, device::path, device_path::pci, PCI_FUNC, rpc, and RPFN_HIDE.
Referenced by root_port_check_disable().
|
inlinestatic |
Definition at line 58 of file pcie.c.
References pci_path::devfn, device::path, device_path::pci, and PCI_FUNC.
Referenced by pch_pcie_early(), pcie_enable_clock_gating(), root_port_check_disable(), and root_port_init_config().
Definition at line 103 of file pcie.c.
References BIOS_DEBUG, MIN, root_port_config::num_ports, printk, rpc, and root_port_config::strpfusecfg2.
Referenced by root_port_init_config().
|
static |
|
static |
|
static |
|
static |
Definition at line 1 of file pcie.c.
Referenced by is_rp_enabled(), pch_pcie_device_set_func(), pch_pcie_early(), pcie_enable_clock_gating(), root_port_check_disable(), root_port_commit_config(), root_port_config_update_gbe_port(), root_port_init_config(), root_port_is_last(), root_port_mark_disable(), and update_num_ports().