Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Transmitting Packets on a Network Device

NetDev_Tx() is used to notify the Ethernet device that a new packet is available to be transmitted. It performs the following actions:

  • 1 For DMA-based hardware, the driver should select the next available transmit descriptor and set the pointer to the data area equal to the address pointer to by p_data.
  • 2 For non-DMA hardware, the driver should call Mem_Copy() to copy the data stored in the buffer to the device’s internal memory. The address of the buffer is specified by p_data.
  • 3 Once completed, the driver must configure the device with the number of bytes to transmit. This value contained in the size argument. DMA-based devices have a size field within the transmit descriptor. Non-DMA devices have a transmit size register that must be configured.
  • 4 The driver then takes all necessary steps to initiate transmission of the data.
  • 5 NetDev_Tx() sets perr to NET_DEV_ERR_NONE and return from the transmit function.
    • No labels