Jump to main content

##

# DRV_GMAC_Process Function

## C

    TCPIP_MAC_RES DRV_GMAC_Process(DRV_HANDLE hMac);

## Returns

- TCPIP_MAC_RES_OK if all processing went on OK

- a TCPIP_MAC_RES error code if processing failed for some reason

## Description

This is a function that allows for internal processing by the MAC driver. It is meant for processing that cannot be done from within ISR. Normally this function will be called in response to an TX and/or RX event signaled by the driver. This is specified by the MAC driver at initialization time using TCPIP_MAC_MODULE_CTRL.

## Remarks

- The MAC driver may use the DRV_GMAC_Process() for:

- Processing its pending TX queues

- RX buffers replenishing functionality. If the number of packets in the RX queue falls below a specified limit, the MAC driver may use this function to allocate some extra RX packets. Similarly, if there are too many allocated RX packets, the MAC driver can free some of them.

## Preconditions

DRV_GMAC_Initialize() should have been called. DRV_GMAC_Open() should have been called to obtain a valid handle.

## Parameters

Parameters | Description
--- | ---
hMac | Ethernet MAC client handle