Zephyr API Documentation  3.7.0
A Scalable Open Source RTOS
3.7.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
PCIe Virtual Channel Host Interface

PCIe Virtual Channel Host Interface. More...

Data Structures

struct  pcie_vctc_map
 

Macros

#define PCIE_VC_MAX_COUNT   8U
 
#define PCIE_VC_SET_TC0   BIT(0)
 
#define PCIE_VC_SET_TC1   BIT(1)
 
#define PCIE_VC_SET_TC2   BIT(2)
 
#define PCIE_VC_SET_TC3   BIT(3)
 
#define PCIE_VC_SET_TC4   BIT(4)
 
#define PCIE_VC_SET_TC5   BIT(5)
 
#define PCIE_VC_SET_TC6   BIT(6)
 
#define PCIE_VC_SET_TC7   BIT(7)
 

Functions

int pcie_vc_enable (pcie_bdf_t bdf)
 Enable PCIe Virtual Channel handling.
 
int pcie_vc_disable (pcie_bdf_t bdf)
 Disable PCIe Virtual Channel handling.
 
int pcie_vc_map_tc (pcie_bdf_t bdf, struct pcie_vctc_map *map)
 Map PCIe TC/VC.
 

Detailed Description

PCIe Virtual Channel Host Interface.

Macro Definition Documentation

◆ PCIE_VC_MAX_COUNT

#define PCIE_VC_MAX_COUNT   8U

◆ PCIE_VC_SET_TC0

#define PCIE_VC_SET_TC0   BIT(0)

◆ PCIE_VC_SET_TC1

#define PCIE_VC_SET_TC1   BIT(1)

◆ PCIE_VC_SET_TC2

#define PCIE_VC_SET_TC2   BIT(2)

◆ PCIE_VC_SET_TC3

#define PCIE_VC_SET_TC3   BIT(3)

◆ PCIE_VC_SET_TC4

#define PCIE_VC_SET_TC4   BIT(4)

◆ PCIE_VC_SET_TC5

#define PCIE_VC_SET_TC5   BIT(5)

◆ PCIE_VC_SET_TC6

#define PCIE_VC_SET_TC6   BIT(6)

◆ PCIE_VC_SET_TC7

#define PCIE_VC_SET_TC7   BIT(7)

Function Documentation

◆ pcie_vc_disable()

int pcie_vc_disable ( pcie_bdf_t  bdf)

#include <zephyr/drivers/pcie/vc.h>

Disable PCIe Virtual Channel handling.

Parameters
bdfthe target PCI endpoint
Returns
0 on success, a negative error code otherwise

◆ pcie_vc_enable()

int pcie_vc_enable ( pcie_bdf_t  bdf)

#include <zephyr/drivers/pcie/vc.h>

Enable PCIe Virtual Channel handling.

Parameters
bdfthe target PCI endpoint
Returns
0 on success, a negative error code otherwise

Note: Not being able to enable such feature is a non-fatal error and any code using it should behave accordingly (displaying some info, and ignoring it for instance).

◆ pcie_vc_map_tc()

int pcie_vc_map_tc ( pcie_bdf_t  bdf,
struct pcie_vctc_map map 
)

#include <zephyr/drivers/pcie/vc.h>

Map PCIe TC/VC.

Parameters
bdfthe target PCI endpoint
mapthe tc/vc map to apply
Returns
0 on success, a negative error code otherwise

Note: VC must be disabled prior to call this function and enabled afterward in order for the endpoint to take advandage of the map.

Note: Not being able to enable such feature is a non-fatal error and any code using it should behave accordingly (displaying some info, and ignoring it for instance).