FD.io VPP  v16.06
Vector Packet Processing
pci.h File Reference
+ Include dependency graph for pci.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  vlib_pci_device_t
 
struct  pci_device_id_t
 

Macros

#define PCI_REGISTER_DEVICE(x, ...)
 

Typedefs

typedef struct _pci_device_registration pci_device_registration_t
 

Functions

typedef CLIB_PACKED (union{struct{u16 domain;u8 bus;u8 slot:5;u8 function:3;};u32 as_u32;}) vlib_pci_addr_t
 
clib_error_tos_read_write_pci_config (uword os_handle, vlib_read_or_write_t read_or_write, uword address, void *data, u32 n_bytes)
 
clib_error_tos_map_pci_resource (uword os_handle, u32 resource, void **result)
 
clib_error_tos_map_pci_resource_fixed (uword os_handle, u32 resource, u8 *addr, void **result)
 
void os_free_pci_device (uword os_handle)
 
void os_add_pci_disable_interrupts_reg (uword os_handle, u32 resource, u32 reg_offset, u32 reg_value)
 
static uword unformat_vlib_pci_addr (unformat_input_t *input, va_list *args)
 
static u8format_vlib_pci_addr (u8 *s, va_list *va)
 

Variables

format_function_t format_os_pci_handle
 

Macro Definition Documentation

#define PCI_REGISTER_DEVICE (   x,
  ... 
)
Value:
__VA_ARGS__ pci_device_registration_t x; \
static void __vlib_add_pci_device_registration_##x (void) \
__attribute__((__constructor__)) ; \
static void __vlib_add_pci_device_registration_##x (void) \
{ \
linux_pci_main_t * lpm = vlib_unix_get_main(); \
x.next_registration = lpm->pci_device_registrations; \
lpm->pci_device_registrations = &x; \
} \
static unix_main_t * vlib_unix_get_main(void)
Definition: unix.h:186
struct _pci_device_registration pci_device_registration_t

Definition at line 88 of file pci.h.

Typedef Documentation

typedef struct _pci_device_registration pci_device_registration_t

Function Documentation

typedef CLIB_PACKED ( union{struct{u16 domain;u8 bus;u8 slot:5;u8 function:3;};u32 as_u32;}  )
static u8* format_vlib_pci_addr ( u8 s,
va_list *  va 
)
inlinestatic

Definition at line 169 of file pci.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void os_add_pci_disable_interrupts_reg ( uword  os_handle,
u32  resource,
u32  reg_offset,
u32  reg_value 
)

Definition at line 206 of file pci.c.

+ Here is the call graph for this function:

void os_free_pci_device ( uword  os_handle)

Definition at line 402 of file pci.c.

+ Here is the call graph for this function:

clib_error_t* os_map_pci_resource ( uword  os_handle,
u32  resource,
void **  result 
)

Definition at line 385 of file pci.c.

+ Here is the call graph for this function:

clib_error_t* os_map_pci_resource_fixed ( uword  os_handle,
u32  resource,
u8 addr,
void **  result 
)

Definition at line 394 of file pci.c.

+ Here is the call graph for this function:

clib_error_t* os_read_write_pci_config ( uword  os_handle,
vlib_read_or_write_t  read_or_write,
uword  address,
void data,
u32  n_bytes 
)

Definition at line 298 of file pci.c.

static uword unformat_vlib_pci_addr ( unformat_input_t input,
va_list *  args 
)
inlinestatic

Definition at line 152 of file pci.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

format_function_t format_os_pci_handle

Definition at line 149 of file pci.h.