#include <stdio.h>
#include <limits.h>
#include <sys/queue.h>
#include <inttypes.h>
Go to the source code of this file.
|
| TAILQ_HEAD (mapped_pci_res_list, mapped_pci_resource) |
|
void | rte_pci_device_name (const struct rte_pci_addr *addr, char *output, size_t size) |
|
int | rte_pci_addr_cmp (const struct rte_pci_addr *addr, const struct rte_pci_addr *addr2) |
|
int | rte_pci_addr_parse (const char *str, struct rte_pci_addr *addr) |
|
void * | pci_map_resource (void *requested_addr, int fd, off_t offset, size_t size, int additional_flags) |
|
void | pci_unmap_resource (void *requested_addr, size_t size) |
|
RTE PCI Library
Definition in file rte_pci.h.
#define PCI_PRI_FMT "%.4" PRIx16 ":%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8 |
#define PCI_SHORT_PRI_FMT "%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8 |
Short formatting string, without domain, for PCI device: Ex: 00:01.0
Definition at line 29 of file rte_pci.h.
Nb. of values in PCI device identifier format string.
Definition at line 32 of file rte_pci.h.
#define PCI_RESOURCE_FMT_NVAL 3 |
Nb. of values in PCI resource format.
Definition at line 35 of file rte_pci.h.
#define PCI_MAX_RESOURCE 6 |
Maximum number of PCI resources.
Definition at line 38 of file rte_pci.h.
#define PCI_ANY_ID (0xffff) |
Any PCI device identifier (vendor, device, ...)
Definition at line 63 of file rte_pci.h.
void rte_pci_device_name |
( |
const struct rte_pci_addr * |
addr, |
|
|
char * |
output, |
|
|
size_t |
size |
|
) |
| |
Utility function to write a pci device name, this device name can later be used to retrieve the corresponding rte_pci_addr using eal_parse_pci_* BDF helpers.
- Parameters
-
addr | The PCI Bus-Device-Function address |
output | The output buffer string |
size | The output buffer size |
Utility function to compare two PCI device addresses.
- Parameters
-
addr | The PCI Bus-Device-Function address to compare |
addr2 | The PCI Bus-Device-Function address to compare |
- Returns
- 0 on equal PCI address. Positive on addr is greater than addr2. Negative on addr is less than addr2, or error.
int rte_pci_addr_parse |
( |
const char * |
str, |
|
|
struct rte_pci_addr * |
addr |
|
) |
| |
Utility function to parse a string into a PCI location.
- Parameters
-
str | The string to parse |
addr | The reference to the structure where the location is stored. |
- Returns
- 0 on success <0 otherwise
- Examples:
- examples/vdpa/main.c.
void* pci_map_resource |
( |
void * |
requested_addr, |
|
|
int |
fd, |
|
|
off_t |
offset, |
|
|
size_t |
size, |
|
|
int |
additional_flags |
|
) |
| |
Map a particular resource from a file.
- Parameters
-
requested_addr | The starting address for the new mapping range. |
fd | The file descriptor. |
offset | The offset for the mapping range. |
size | The size for the mapping range. |
additional_flags | The additional flags for the mapping range. |
- Returns
- On success, the function returns a pointer to the mapped area.
- On error, the value MAP_FAILED is returned.
void pci_unmap_resource |
( |
void * |
requested_addr, |
|
|
size_t |
size |
|
) |
| |
Unmap a particular resource.
- Parameters
-
requested_addr | The address for the unmapping range. |
size | The size for the unmapping range. |