![]() |
![]() |
Hyperlink transport sub-system API and Data Definitions. More...
#include <stdint.h>#include <stdlib.h>#include "hyplnk_cfg.h"#include "hyplnkver.h"Data Structures | |
| struct | hyplnkRevReg_s |
| Specification of the HyperLink Revision Register. More... | |
| struct | hyplnkControlReg_s |
| Specification of the HyperLink Control Register. More... | |
| struct | hyplnkStatusReg_s |
| Specification of the HyperLink Status Register. More... | |
| struct | hyplnkIntPriVecReg_s |
| Specification of the Hyperlink Interrupt Priority Vector Status/Clear Register. More... | |
| struct | hyplnkIntStatusClrReg_s |
| Specification of the Hyperlink Interrupt Status/Clear Register. More... | |
| struct | hyplnkIntPendSetReg_s |
| Specification of the Hyperlink Interrupt Pending/Set Register. More... | |
| struct | hyplnkGenSoftIntReg_s |
| Specification of the Hyperlink Generate Soft Interrupt Value Register. More... | |
| struct | hyplnkTXAddrOvlyReg_s |
| Specification of the Tx Address Overlay Control Register. More... | |
| struct | hyplnkRXAddrSelReg_s |
| Specification of the Rx Address Selector Control Register. More... | |
| struct | hyplnkRXPrivIDIdxReg_s |
| Specification of the Rx Address PrivID Index Register. More... | |
| struct | hyplnkRXPrivIDValReg_s |
| Specification of the Rx Address PrivID Value Register. More... | |
| struct | hyplnkRXSegIdxReg_s |
| Specification of the Rx Address Segment Index Register. More... | |
| struct | hyplnkRXSegValReg_s |
| Specification of the Rx Address Segment Value Register. More... | |
| struct | hyplnkChipVerReg_s |
| Specification of the Chip Version Register. More... | |
| struct | hyplnkLanePwrMgmtReg_s |
| Specification of the Lane Power Management Control Register. More... | |
| struct | hyplnkECCErrorsReg_s |
| Specification of the ECC Error Counters Register. More... | |
| struct | hyplnkLinkStatusReg_s |
| Specification of the Link Status Register. More... | |
| struct | hyplnkIntCtrlIdxReg_s |
| Specification of the Interupt Control Index Register. More... | |
| struct | hyplnkIntCtrlValReg_s |
| Specification of the Interrupt Control Value Register. More... | |
| struct | hyplnkIntPtrIdxReg_s |
| Specification of the Interupt Control Index Register. More... | |
| struct | hyplnkIntPtrValReg_s |
| Specification of the Interrupt Control Value Register. More... | |
| struct | hyplnkSERDESControl1Reg_s |
| Specification of the SerDes Control And Status 1 Register. More... | |
| struct | hyplnkSERDESControl2Reg_s |
| Specification of the SerDes Control And Status 2 Register. More... | |
| struct | hyplnkSERDESControl3Reg_s |
| Specification of the SerDes Control And Status 3 Register. More... | |
| struct | hyplnkSERDESControl4Reg_s |
| Specification of the SerDes Control And Status 4 Register. More... | |
| struct | hyplnkRegisters_s |
| Specification all registers. More... | |
Defines | |
| #define | hyplnk_RX_PRIVID_TBL_ENTS 16 |
| #define | hyplnk_RX_SEG_TBL_ENTS 64 |
| #define | hyplnk_INT_CTRL_TBL_ENTS 256 |
| #define | hyplnk_INT_PTR_TBL_ENTS 16 |
Typedefs | |
| typedef struct hyplnkRegisters_s | hyplnkRegisters_t |
| Specification all registers. | |
| typedef void * | Hyplnk_Handle |
| Specification of Hyplnk_Handle. | |
| typedef struct hyplnkRevReg_s | hyplnkRevReg_t |
| Specification of the HyperLink Revision Register. | |
| typedef struct hyplnkControlReg_s | hyplnkControlReg_t |
| Specification of the HyperLink Control Register. | |
| typedef struct hyplnkStatusReg_s | hyplnkStatusReg_t |
| Specification of the HyperLink Status Register. | |
| typedef struct hyplnkIntPriVecReg_s | hyplnkIntPriVecReg_t |
| Specification of the Hyperlink Interrupt Priority Vector Status/Clear Register. | |
| typedef struct hyplnkIntStatusClrReg_s | hyplnkIntStatusClrReg_t |
| Specification of the Hyperlink Interrupt Status/Clear Register. | |
| typedef struct hyplnkIntPendSetReg_s | hyplnkIntPendSetReg_t |
| Specification of the Hyperlink Interrupt Pending/Set Register. | |
| typedef struct hyplnkGenSoftIntReg_s | hyplnkGenSoftIntReg_t |
| Specification of the Hyperlink Generate Soft Interrupt Value Register. | |
| typedef struct hyplnkTXAddrOvlyReg_s | hyplnkTXAddrOvlyReg_t |
| Specification of the Tx Address Overlay Control Register. | |
| typedef struct hyplnkRXAddrSelReg_s | hyplnkRXAddrSelReg_t |
| Specification of the Rx Address Selector Control Register. | |
|
typedef struct hyplnkRXPrivIDIdxReg_s | hyplnkRXPrivIDIdxReg_t |
| Specification of the Rx Address PrivID Index Register. | |
|
typedef struct hyplnkRXPrivIDValReg_s | hyplnkRXPrivIDValReg_t |
| Specification of the Rx Address PrivID Value Register. | |
| typedef struct hyplnkRXSegIdxReg_s | hyplnkRXSegIdxReg_t |
| Specification of the Rx Address Segment Index Register. | |
| typedef struct hyplnkRXSegValReg_s | hyplnkRXSegValReg_t |
| Specification of the Rx Address Segment Value Register. | |
| typedef struct hyplnkChipVerReg_s | hyplnkChipVerReg_t |
| Specification of the Chip Version Register. | |
| typedef struct hyplnkLanePwrMgmtReg_s | hyplnkLanePwrMgmtReg_t |
| Specification of the Lane Power Management Control Register. | |
| typedef struct hyplnkECCErrorsReg_s | hyplnkECCErrorsReg_t |
| Specification of the ECC Error Counters Register. | |
| typedef struct hyplnkLinkStatusReg_s | hyplnkLinkStatusReg_t |
| Specification of the Link Status Register. | |
| typedef struct hyplnkIntCtrlIdxReg_s | hyplnkIntCtrlIdxReg_t |
| Specification of the Interupt Control Index Register. | |
| typedef struct hyplnkIntCtrlValReg_s | hyplnkIntCtrlValReg_t |
| Specification of the Interrupt Control Value Register. | |
| typedef struct hyplnkIntPtrIdxReg_s | hyplnkIntPtrIdxReg_t |
| Specification of the Interupt Control Index Register. | |
| typedef struct hyplnkIntPtrValReg_s | hyplnkIntPtrValReg_t |
| Specification of the Interrupt Control Value Register. | |
| typedef struct hyplnkSERDESControl1Reg_s | hyplnkSERDESControl1Reg_t |
| Specification of the SerDes Control And Status 1 Register. | |
| typedef struct hyplnkSERDESControl2Reg_s | hyplnkSERDESControl2Reg_t |
| Specification of the SerDes Control And Status 2 Register. | |
| typedef struct hyplnkSERDESControl3Reg_s | hyplnkSERDESControl3Reg_t |
| Specification of the SerDes Control And Status 3 Register. | |
| typedef struct hyplnkSERDESControl4Reg_s | hyplnkSERDESControl4Reg_t |
| Specification of the SerDes Control And Status 4 Register. | |
| typedef hyplnkRXPrivIDValReg_t | hyplnkRXPrivIDTbl_t [hyplnk_RX_PRIVID_TBL_ENTS] |
| Access to the entire RX PrivID table. | |
| typedef hyplnkRXSegValReg_t | hyplnkRXSegTbl_t [hyplnk_RX_SEG_TBL_ENTS] |
| Access to the entire RX segment table. | |
| typedef hyplnkIntCtrlValReg_t | hyplnkIntCtrlTbl_t [hyplnk_INT_CTRL_TBL_ENTS] |
| Access to the entire interrupt control table. | |
| typedef hyplnkIntPtrValReg_t | hyplnkIntPtrTbl_t [hyplnk_INT_PTR_TBL_ENTS] |
| Access to the entire interrupt pointer table. | |
Enumerations | |
| enum | hyplnkRet_e { hyplnk_RET_OK = 0, hyplnk_RET_INV_HANDLE, hyplnk_RET_INV_DEVICENUM } |
| enum | hyplnkLocation_e { hyplnk_LOCATION_LOCAL, hyplnk_LOCATION_REMOTE } |
| enum | hyplnkConfigType_e { hyplnk_CONFIG_TYPE_TX_ADDR, hyplnk_CONFIG_TYPE_RX_ADDR, hyplnk_CONFIG_CONTROL } |
Functions | |
| hyplnkRet_e | Hyplnk_open (int portNum, Hyplnk_Handle *pHandle) |
| Hyplnk_open creates/opens a HyperLink instance. | |
| hyplnkRet_e | Hyplnk_close (Hyplnk_Handle *pHandle) |
| Hyplnk_close Closes (frees) the driver handle. | |
| hyplnkRet_e | Hyplnk_readRegs (Hyplnk_Handle handle, hyplnkLocation_e location, hyplnkRegisters_t *readRegs) |
| Performs a configuration read. | |
| hyplnkRet_e | Hyplnk_writeRegs (Hyplnk_Handle handle, hyplnkLocation_e location, hyplnkRegisters_t *writeRegs) |
| Performs a configuration write. | |
| hyplnkRet_e | Hyplnk_getWindow (Hyplnk_Handle handle, void **base, uint32_t *size) |
| Hyplnk_getWindow returns the address and size of the local memory window. | |
| uint32_t | Hyplnk_getVersion (void) |
| Hyplnk_getVersion returns the HYPLNK LLD version information. | |
| const char * | Hyplnk_getVersionStr (void) |
| Hyplnk_getVersionStr returns the HYPLNK LLD version string. | |
Hyperlink transport sub-system API and Data Definitions.
| #define hyplnk_INT_CTRL_TBL_ENTS 256 |
size of the interupt control table
| #define hyplnk_INT_PTR_TBL_ENTS 16 |
Size of the interrupt pointer table
| #define hyplnk_RX_PRIVID_TBL_ENTS 16 |
Number of RX PrivID table entries
| #define hyplnk_RX_SEG_TBL_ENTS 64 |
Number of RX segment table entries
| enum hyplnkRet_e |
These are the possible return values from all HYPLNK LLD functions
| hyplnk_RET_OK |
Call succeeded |
| hyplnk_RET_INV_HANDLE |
Invalid handle |
| hyplnk_RET_INV_DEVICENUM |
Hyplnk_open deviceNum invalid |