RTEMS: bsps/arm/atsam/include/libchip/include/gmacd.h File Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Enumerations | Functions
gmacd.h File Reference
`#include "chip.h"`

Go to the source code of this file.

## Data Structures
struct | _GmacSG
struct | _GmacSGList
struct | _GmacQueueDriver
struct | _GmacDriver
struct | _GmacInit

## Macros
#define | GMACD_OK 0
#define | GMACD_TX_BUSY 1
#define | GMACD_RX_NULL 1
#define | GMACD_SIZE_TOO_SMALL 2
#define | GMACD_PARAM 3
#define | GMACD_NOT_INITIALIZED 4
#define | EFRS_BUFFER_LEN (1u)

## Typedefs
typedef enum ptpMsgType_t | ptpMsgType
typedef void(* | fGmacdTransferCallback) (uint32_t status)
typedef void(* | fGmacdWakeupCallback) (void)
typedef void(* | fGmacdTxPtpEvtCallBack) (ptpMsgType msg, uint32_t sec, uint32_t nanosec, uint16_t seqId)
typedef struct _GmacSG | sGmacSG
typedef struct _GmacSGList | sGmacSGList
typedef struct _GmacQueueDriver | sGmacQd
typedef struct _GmacDriver | sGmacd
typedef struct _GmacInit | sGmacInit

## Enumerations
enum | ptpMsgType_t { SYNC_MSG_TYPE = 0 , DELAY_REQ_MSG_TYPE = 1 , PDELAY_REQ_TYPE = 2 , PDELAY_RESP_TYPE = 3 , FOLLOW_UP_MSG_TYPE = 8 , DELAY_RESP_MSG_TYPE = 9 }

## Functions
void | GMACD_Handler (sGmacd *pGmacd, gmacQueList_t queIdx)
| GMAC Interrupt handler.
void | GMACD_Init (sGmacd *pGmacd, Gmac *pHw, uint8_t bID, uint8_t enableCAF, uint8_t enableNBC)
| Initialize the GMAC with the Gmac controller address.
uint8_t | GMACD_InitTransfer (sGmacd *pGmacd, const sGmacInit *pInit, gmacQueList_t queIdx)
void | GMACD_Reset (sGmacd *pGmacd)
uint8_t | GMACD_SendSG (sGmacd *pGmacd, const sGmacSGList *sgl, fGmacdTransferCallback fTxCb, gmacQueList_t queIdx)
| Send a frame split into buffers. If the frame size is larger than transfer buffer size error returned. If frame transfer status is monitored, specify callback for each frame.
uint8_t | GMACD_Send (sGmacd *pGmacd, void *pBuffer, uint32_t size, fGmacdTransferCallback fTxCb, gmacQueList_t queIdx)
| Send a packet with GMAC. If the packet size is larger than transfer buffer size error returned. If packet transfer status is monitored, specify callback for each packet.
uint32_t | GMACD_TxLoad (sGmacd *pGmacd, gmacQueList_t queIdx)
uint8_t | GMACD_Poll (sGmacd *pGmacd, uint8_t *pFrame, uint32_t frameSize, uint32_t *pRcvSize, gmacQueList_t queIdx)
| Receive a packet with GMAC. If not enough buffer for the packet, the remaining data is lost but right frame length is returned.
void | GMACD_SetRxCallback (sGmacd *pGmacd, fGmacdTransferCallback fRxCb, gmacQueList_t queIdx)
| Registers pRxCb callback. Callback will be invoked after the next received frame. When GMAC_Poll() returns GMAC_RX_NO_DATA the application task call GMAC_Set_RxCb() to register pRxCb() callback and enters suspend state. The callback is in charge to resume the task once a new frame has been received. The next time GMAC_Poll() is called, it will be successful.
uint8_t | GMACD_SetTxWakeupCallback (sGmacd *pGmacd, fGmacdWakeupCallback fWakeup, uint8_t bThreshold, gmacQueList_t queIdx)
void | GMACD_TxPtpEvtMsgCBRegister (sGmacd *pGmacd, fGmacdTxPtpEvtCallBack pTxPtpEvtCb, gmacQueList_t queIdx)