#include <sys/cdefs.h>
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/bus.h>
#include <sys/devmap.h>
#include <sys/proc.h>
#include <sys/kernel.h>
#include <sys/malloc.h>
#include <sys/module.h>
#include <sys/mutex.h>
#include <sys/rman.h>
#include <sys/sysctl.h>
#include <machine/bus.h>
#include <machine/intr.h>
#include <machine/resource.h>
#include <dev/extres/clk/clk.h>
#include <dev/extres/phy/phy.h>
#include <dev/ofw/ofw_bus.h>
#include <dev/ofw/ofw_bus_subr.h>
#include <dev/ofw/ofw_pci.h>
#include <dev/ofw/ofwpci.h>
#include <dev/pci/pcivar.h>
#include <dev/pci/pcireg.h>
#include <dev/pci/pcib_private.h>
#include <dev/pci/pci_dw.h>
#include "pcib_if.h"
#include "pci_dw_if.h"
Go to the source code of this file.
|
| __FBSDID ("$FreeBSD$") |
|
static int | pci_mv_phy_init (struct pci_mv_softc *sc) |
|
static void | pci_mv_init (struct pci_mv_softc *sc) |
|
static int | pci_mv_intr (void *arg) |
|
static int | pci_mv_get_link (device_t dev, bool *status) |
|
static int | pci_mv_probe (device_t dev) |
|
static int | pci_mv_attach (device_t dev) |
|
| DEFINE_CLASS_1 (pcib, pci_mv_driver, pci_mv_methods, sizeof(struct pci_mv_softc), pci_dw_driver) |
|
| DRIVER_MODULE (pci_mv, simplebus, pci_mv_driver, pci_mv_devclass, NULL, NULL) |
|
◆ INT_A_ASSERT_MASK
#define INT_A_ASSERT_MASK (1 << 9) |
◆ INT_B_ASSERT_MASK
#define INT_B_ASSERT_MASK (1 << 10) |
◆ INT_C_ASSERT_MASK
#define INT_C_ASSERT_MASK (1 << 11) |
◆ INT_D_ASSERT_MASK
#define INT_D_ASSERT_MASK (1 << 12) |
◆ MV_ARCACHE_TRC_REG
#define MV_ARCACHE_TRC_REG 0x8050 |
◆ MV_ARUSER_REG
#define MV_ARUSER_REG 0x805C |
◆ MV_AWCACHE_TRC_REG
#define MV_AWCACHE_TRC_REG 0x8054 |
◆ MV_AWUSER_REG
#define MV_AWUSER_REG 0x8060 |
◆ MV_ERR_INT_CAUSE
#define MV_ERR_INT_CAUSE 0x802C |
◆ MV_ERR_INT_MASK
#define MV_ERR_INT_MASK 0x8030 |
◆ MV_GLOBAL_CONTROL_REG
#define MV_GLOBAL_CONTROL_REG 0x8000 |
◆ MV_GLOBAL_STATUS_REG
#define MV_GLOBAL_STATUS_REG 0x8008 |
◆ MV_INT_CAUSE1
#define MV_INT_CAUSE1 0x801C |
◆ MV_INT_CAUSE2
#define MV_INT_CAUSE2 0x8024 |
◆ MV_INT_MASK1
#define MV_INT_MASK1 0x8020 |
◆ MV_INT_MASK2
#define MV_INT_MASK2 0x8028 |
◆ MV_MAX_LANES
◆ MV_STATUS_PHY_LINK_UP
#define MV_STATUS_PHY_LINK_UP (1 << 9) |
◆ MV_STATUS_RDLH_LINK_UP
#define MV_STATUS_RDLH_LINK_UP (1 << 1) |
◆ PCIE_APP_LTSSM_EN
#define PCIE_APP_LTSSM_EN (1 << 2) |
◆ __FBSDID()
◆ DEFINE_CLASS_1()
◆ DRIVER_MODULE()
DRIVER_MODULE |
( |
pci_mv |
, |
|
|
simplebus |
, |
|
|
pci_mv_driver |
, |
|
|
pci_mv_devclass |
, |
|
|
NULL |
, |
|
|
NULL |
|
|
) |
| |
◆ pci_mv_attach()
static int pci_mv_attach |
( |
device_t |
dev | ) |
|
|
static |
Definition at line 222 of file pci_dw_mv.c.
References pci_mv_softc::clk_core, pci_mv_softc::clk_reg, pci_dw_softc::dbi_res, pci_mv_softc::dev, dev, pci_mv_softc::dw_sc, pci_mv_softc::intr_cookie, pci_mv_softc::irq_res, pci_mv_softc::node, pci_dw_init(), pci_mv_init(), pci_mv_intr(), pci_mv_phy_init(), and rid.
◆ pci_mv_get_link()
static int pci_mv_get_link |
( |
device_t |
dev, |
|
|
bool * |
status |
|
) |
| |
|
static |
◆ pci_mv_init()
Definition at line 143 of file pci_dw_mv.c.
References pci_mv_softc::dev, DW_MSI_INTR0_MASK, INT_A_ASSERT_MASK, INT_B_ASSERT_MASK, INT_C_ASSERT_MASK, INT_D_ASSERT_MASK, MV_ARCACHE_TRC_REG, MV_ARUSER_REG, MV_AWCACHE_TRC_REG, MV_AWUSER_REG, MV_ERR_INT_MASK, MV_GLOBAL_CONTROL_REG, MV_INT_CAUSE1, MV_INT_CAUSE2, MV_INT_MASK1, MV_INT_MASK2, pci_dw_dbi_rd4(), pci_dw_dbi_wr4(), and reg.
Referenced by pci_mv_attach().
◆ pci_mv_intr()
static int pci_mv_intr |
( |
void * |
arg | ) |
|
|
static |
◆ pci_mv_phy_init()
◆ pci_mv_probe()
static int pci_mv_probe |
( |
device_t |
dev | ) |
|
|
static |
◆ compat_data
struct ofw_compat_data compat_data[] |
|
static |
◆ pci_mv_devclass
devclass_t pci_mv_devclass |
|
static |
◆ pci_mv_methods
device_method_t pci_mv_methods[] |
|
static |
Initial value:= {
DEVMETHOD_END
}
static int pci_mv_probe(device_t dev)
static int pci_mv_attach(device_t dev)
static int pci_mv_get_link(device_t dev, bool *status)
Definition at line 306 of file pci_dw_mv.c.