![]() |
![]() |
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 |