1.6.3.12 DRV_G3ADP_MAC_Process Function

C

TCPIP_MAC_RES DRV_G3ADP_MAC_Process(DRV_HANDLE hMac);

Summary

MAC periodic processing function.

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.

Precondition

DRV_G3ADP_MAC_Initialize() should have been called. DRV_G3ADP_MAC_Open() should have been called to obtain a valid handle.

Parameters

ParamDescription
hMacMAC client handle

Returns

  • TCPIP_MAC_RES_OK if all processing went on OK

  • A TCPIP_MAC_RES error code if processing failed for some reason

Example

    if(pNetIf->Flags.bMacProcessOnEvent != 0)
    {   // MAC internal processing
        DRV_G3ADP_MAC_Process(pNetIf->hIfMac);
    }

Remarks

Upper layers may use the DRV_G3ADP_MAC_Process() for processing its pending TX queues