#include <sys/cdefs.h>
#include "opt_bus.h"
#include <sys/types.h>
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/malloc.h>
#include <sys/module.h>
#include <sys/linker.h>
#include <sys/fcntl.h>
#include <sys/conf.h>
#include <sys/kernel.h>
#include <sys/mman.h>
#include <sys/proc.h>
#include <sys/queue.h>
#include <sys/rwlock.h>
#include <sys/sglist.h>
#include <vm/vm.h>
#include <vm/pmap.h>
#include <vm/vm_extern.h>
#include <vm/vm_map.h>
#include <vm/vm_object.h>
#include <vm/vm_page.h>
#include <vm/vm_pager.h>
#include <sys/bus.h>
#include <machine/bus.h>
#include <sys/rman.h>
#include <machine/resource.h>
#include <sys/pciio.h>
#include <dev/pci/pcireg.h>
#include <dev/pci/pcivar.h>
#include "pcib_if.h"
#include "pci_if.h"
Go to the source code of this file.
|
| __FBSDID ("$FreeBSD$") |
|
static int | pci_open (struct cdev *dev, int oflags, int devtype, struct thread *td) |
|
static int | pci_close (struct cdev *dev, int flag, int devtype, struct thread *td) |
|
static int | pci_conf_match_native (struct pci_match_conf *matches, int num_matches, struct pci_conf *match_buf) |
|
static int | pci_conf_match (u_long cmd, struct pci_match_conf *matches, int num_matches, struct pci_conf *match_buf) |
|
static int | pci_list_vpd (device_t dev, struct pci_list_vpd_io *lvio) |
|
static size_t | pci_match_conf_size (u_long cmd) |
|
static size_t | pci_conf_size (u_long cmd) |
|
static void | pci_conf_io_init (struct pci_conf_io *cio, caddr_t data, u_long cmd) |
|
static void | pci_conf_io_update_data (const struct pci_conf_io *cio, caddr_t data, u_long cmd) |
|
static void | pci_conf_for_copyout (const struct pci_conf *pcp, union pci_conf_union *pcup, u_long cmd) |
|
static int | pci_bar_mmap (device_t pcidev, struct pci_bar_mmap *pbm) |
|
static int | pci_bar_io (device_t pcidev, struct pci_bar_ioreq *pbi) |
|
static int | pci_ioctl (struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td) |
|
◆ PVE_NEXT_LEN
#define PVE_NEXT_LEN |
( |
|
pve, |
|
|
|
datalen |
|
) |
| |
Value: ((struct pci_vpd_element *)((char *)(pve) + \
sizeof(struct pci_vpd_element) + (datalen)))
Definition at line 556 of file pci_user.c.
◆ __FBSDID()
◆ pci_bar_io()
static int pci_bar_io |
( |
device_t |
pcidev, |
|
|
struct pci_bar_ioreq * |
pbi |
|
) |
| |
|
static |
◆ pci_bar_mmap()
static int pci_bar_mmap |
( |
device_t |
pcidev, |
|
|
struct pci_bar_mmap * |
pbm |
|
) |
| |
|
static |
◆ pci_close()
static int pci_close |
( |
struct cdev * |
dev, |
|
|
int |
flag, |
|
|
int |
devtype, |
|
|
struct thread * |
td |
|
) |
| |
|
static |
◆ pci_conf_for_copyout()
static void pci_conf_for_copyout |
( |
const struct pci_conf * |
pcp, |
|
|
union pci_conf_union * |
pcup, |
|
|
u_long |
cmd |
|
) |
| |
|
static |
◆ pci_conf_io_init()
static void pci_conf_io_init |
( |
struct pci_conf_io * |
cio, |
|
|
caddr_t |
data, |
|
|
u_long |
cmd |
|
) |
| |
|
static |
◆ pci_conf_io_update_data()
static void pci_conf_io_update_data |
( |
const struct pci_conf_io * |
cio, |
|
|
caddr_t |
data, |
|
|
u_long |
cmd |
|
) |
| |
|
static |
◆ pci_conf_match()
static int pci_conf_match |
( |
u_long |
cmd, |
|
|
struct pci_match_conf * |
matches, |
|
|
int |
num_matches, |
|
|
struct pci_conf * |
match_buf |
|
) |
| |
|
static |
◆ pci_conf_match_native()
static int pci_conf_match_native |
( |
struct pci_match_conf * |
matches, |
|
|
int |
num_matches, |
|
|
struct pci_conf * |
match_buf |
|
) |
| |
|
static |
◆ pci_conf_size()
static size_t pci_conf_size |
( |
u_long |
cmd | ) |
|
|
static |
◆ pci_ioctl()
static int pci_ioctl |
( |
struct cdev * |
dev, |
|
|
u_long |
cmd, |
|
|
caddr_t |
data, |
|
|
int |
flag, |
|
|
struct thread * |
td |
|
) |
| |
|
static |
Definition at line 1014 of file pci_user.c.
References data, name, pci_bar_enabled(), pci_bar_io(), pci_bar_mmap(), pci_conf_for_copyout(), pci_conf_io_init(), pci_conf_io_update_data(), pci_conf_match(), pci_conf_size(), pci_devq, pci_find_bar(), pci_find_dbsf(), pci_generation, pci_list_vpd(), pci_match_conf_size(), pci_numdevs, pci_map::pm_size, and pci_map::pm_value.
◆ pci_list_vpd()
static int pci_list_vpd |
( |
device_t |
dev, |
|
|
struct pci_list_vpd_io * |
lvio |
|
) |
| |
|
static |
Definition at line 561 of file pci_user.c.
References dev, vpd_readonly::keyword, vpd_write::keyword, vpd_readonly::len, vpd_write::len, pci_fetch_vpd_list(), PVE_NEXT_LEN, vpd_readonly::value, vpd_write::value, pcicfg_vpd::vpd_ident, pcicfg_vpd::vpd_reg, pcicfg_vpd::vpd_rocnt, pcicfg_vpd::vpd_ros, pcicfg_vpd::vpd_w, and pcicfg_vpd::vpd_wcnt.
Referenced by pci_ioctl().
◆ pci_match_conf_size()
static size_t pci_match_conf_size |
( |
u_long |
cmd | ) |
|
|
static |
◆ pci_open()
static int pci_open |
( |
struct cdev * |
dev, |
|
|
int |
oflags, |
|
|
int |
devtype, |
|
|
struct thread * |
td |
|
) |
| |
|
static |
◆ pci_close
◆ pci_ioctl
◆ pci_open
◆ pcicdev
Initial value:= {
.d_version = D_VERSION,
.d_flags = 0,
.d_name = "pci",
}
static d_ioctl_t pci_ioctl
static d_close_t pci_close
Definition at line 119 of file pci_user.c.
Referenced by pci_modevent().