/* Function to transmit a given packet on the wire. Whenever Linux Kernel has a packet ready to be transmitted, this function is called. The function prepares a packet and prepares the descriptor and enables/resumes the transmission.  */
s32 synopGMAC_xmit_frames(synopGMACdevice *gmacdev, u8 *pkt_data, u32 pkt_len, u32 offload_needed, u32 ts)
/* Function to transmit a given packet on the wire. Whenever Linux Kernel has a packet ready to be transmitted, this function is called. The function prepares a packet and prepares the descriptor and enables/resumes the transmission.  */
s32 synopGMAC_xmit_frames(synopGMACdevice *gmacdev, u8 *pkt_data, u32 pkt_len, u32 offload_needed, u32 ts)
{
    s32 status = 0;
    u32 dma_addr = (u32)pkt_data;
    status = synopGMAC_set_tx_qptr(gmacdev, dma_addr, pkt_len, dma_addr, offload_needed, ts);
    if (status < 0)
    {
        TR0("%s No More Free Tx Descriptors\n", __FUNCTION__);
        return -1;
    }
    synopGMAC_resume_dma_tx(gmacdev);
    return 0;
}