Project: /_project.yaml Book: /_book.yaml

fuchsia.hardware.ethernet

PROTOCOLS

Device {:#Device}

Defined in fuchsia.hardware.ethernet/ethernet.fidl

Operation

Packets are transmitted by writing data into the IO buffer and writing a FifoEntry referencing that data (offset + length) into the tx fifo. When the driver is done accessing the data, a FifoEntry with the same cookie value (opaque to the driver) will be readable from the tx fifo.

Packets are received by writing a FifoEntry referencing an available buffer (offset + length) in the IO buffer. When a packet is received, a FifoEntry with the same cookie value (opaque to the driver) will be readable from the rx fifo. The offset field will be the same as was sent. The length field will reflect the actual size of the received packet. The flags field will indicate success or a specific failure condition.

IMPORTANT: The driver will not buffer response messages. It is the client's responsibility to ensure that there is space in the reply side of each fifo for each outstanding tx or rx request. The fifo sizes are returned along with the fifo handles from GetFifos().

See //zircon/system/public/zircon/device/ethernet.h for fifo entry layout and request / response message bits.

GetInfo {:#GetInfo}

Request

Response

GetFifos {:#GetFifos}

Request

Response

SetIOBuffer {:#SetIOBuffer}

Request

Response

Start {:#Start}

Request

Response

Stop {:#Stop}

Request

Response

ListenStart {:#ListenStart}

Request

Response

ListenStop {:#ListenStop}

Request

Response

SetClientName {:#SetClientName}

Request

Response

GetStatus {:#GetStatus}

Request

Response

SetPromiscuousMode {:#SetPromiscuousMode}

Request

Response

ConfigMulticastAddMac {:#ConfigMulticastAddMac}

Request

Response

ConfigMulticastDeleteMac {:#ConfigMulticastDeleteMac}

Request

Response

ConfigMulticastSetPromiscuousMode {:#ConfigMulticastSetPromiscuousMode}

Request

Response

ConfigMulticastTestFilter {:#ConfigMulticastTestFilter}

Request

Response

DumpRegisters {:#DumpRegisters}

Request

Response

STRUCTS

MacAddress {:#MacAddress}

Defined in fuchsia.hardware.ethernet/ethernet.fidl

Info {:#Info}

Defined in fuchsia.hardware.ethernet/ethernet.fidl

Fifos {:#Fifos}

Defined in fuchsia.hardware.ethernet/ethernet.fidl

CONSTANTS