Changeset View
Changeset View
Standalone View
Standalone View
usr.sbin/bhyve/pci_emul.h
Show All 28 Lines | |||||
*/ | */ | ||||
#ifndef _PCI_EMUL_H_ | #ifndef _PCI_EMUL_H_ | ||||
#define _PCI_EMUL_H_ | #define _PCI_EMUL_H_ | ||||
#include <sys/types.h> | #include <sys/types.h> | ||||
#include <sys/queue.h> | #include <sys/queue.h> | ||||
#include <sys/kernel.h> | #include <sys/kernel.h> | ||||
#include <sys/nv.h> | |||||
#include <sys/_pthreadtypes.h> | #include <sys/_pthreadtypes.h> | ||||
#include <dev/pci/pcireg.h> | #include <dev/pci/pcireg.h> | ||||
#include <assert.h> | #include <assert.h> | ||||
#include "config.h" | |||||
#define PCI_BARMAX PCIR_MAX_BAR_0 /* BAR registers in a Type 0 header */ | #define PCI_BARMAX PCIR_MAX_BAR_0 /* BAR registers in a Type 0 header */ | ||||
struct vmctx; | struct vmctx; | ||||
struct pci_devinst; | struct pci_devinst; | ||||
struct memory_region; | struct memory_region; | ||||
struct vm_snapshot_meta; | struct vm_snapshot_meta; | ||||
struct pci_devemu { | struct pci_devemu { | ||||
char *pe_emu; /* Name of device emulation */ | char *pe_emu; /* Name of device emulation */ | ||||
/* instance creation */ | /* instance creation */ | ||||
int (*pe_init)(struct vmctx *, struct pci_devinst *, | int (*pe_init)(struct vmctx *, struct pci_devinst *, | ||||
nvlist_t *); | config_node_t *); | ||||
yuripv: indentation? | |||||
andy_omniosce.orgAuthorUnsubmitted Done Inline ActionsThis one is consistent with the rest of the files, I'll keep it matching. andy_omniosce.org: This one is consistent with the rest of the files, I'll keep it matching. | |||||
int (*pe_legacy_config)(nvlist_t *, const char *); | int (*pe_legacy_config)(config_node_t *, const char *); | ||||
const char *pe_alias; | const char *pe_alias; | ||||
/* ACPI DSDT enumeration */ | /* ACPI DSDT enumeration */ | ||||
void (*pe_write_dsdt)(struct pci_devinst *); | void (*pe_write_dsdt)(struct pci_devinst *); | ||||
/* config space read/write callbacks */ | /* config space read/write callbacks */ | ||||
int (*pe_cfgwrite)(struct vmctx *ctx, int vcpu, | int (*pe_cfgwrite)(struct vmctx *ctx, int vcpu, | ||||
struct pci_devinst *pi, int offset, | struct pci_devinst *pi, int offset, | ||||
▲ Show 20 Lines • Show All 172 Lines • ▼ Show 20 Lines | |||||
void pci_lintr_assert(struct pci_devinst *pi); | void pci_lintr_assert(struct pci_devinst *pi); | ||||
void pci_lintr_deassert(struct pci_devinst *pi); | void pci_lintr_deassert(struct pci_devinst *pi); | ||||
void pci_lintr_request(struct pci_devinst *pi); | void pci_lintr_request(struct pci_devinst *pi); | ||||
int pci_msi_enabled(struct pci_devinst *pi); | int pci_msi_enabled(struct pci_devinst *pi); | ||||
int pci_msix_enabled(struct pci_devinst *pi); | int pci_msix_enabled(struct pci_devinst *pi); | ||||
int pci_msix_table_bar(struct pci_devinst *pi); | int pci_msix_table_bar(struct pci_devinst *pi); | ||||
int pci_msix_pba_bar(struct pci_devinst *pi); | int pci_msix_pba_bar(struct pci_devinst *pi); | ||||
int pci_msi_maxmsgnum(struct pci_devinst *pi); | int pci_msi_maxmsgnum(struct pci_devinst *pi); | ||||
int pci_parse_legacy_config(nvlist_t *nvl, const char *opt); | int pci_parse_legacy_config(config_node_t *node, const char *opt); | ||||
int pci_parse_slot(char *opt); | int pci_parse_slot(char *opt); | ||||
void pci_print_supported_devices(); | void pci_print_supported_devices(); | ||||
void pci_populate_msicap(struct msicap *cap, int msgs, int nextptr); | void pci_populate_msicap(struct msicap *cap, int msgs, int nextptr); | ||||
int pci_emul_add_msixcap(struct pci_devinst *pi, int msgnum, int barnum); | int pci_emul_add_msixcap(struct pci_devinst *pi, int msgnum, int barnum); | ||||
int pci_emul_msix_twrite(struct pci_devinst *pi, uint64_t offset, int size, | int pci_emul_msix_twrite(struct pci_devinst *pi, uint64_t offset, int size, | ||||
uint64_t value); | uint64_t value); | ||||
uint64_t pci_emul_msix_tread(struct pci_devinst *pi, uint64_t offset, int size); | uint64_t pci_emul_msix_tread(struct pci_devinst *pi, uint64_t offset, int size); | ||||
int pci_count_lintr(int bus); | int pci_count_lintr(int bus); | ||||
▲ Show 20 Lines • Show All 53 Lines • Show Last 20 Lines |
indentation?