|
Zephyr Project API 4.2.99
A Scalable Open Source RTOS
|
Structure to provide DSA switch api callbacks - it is an augmented struct ethernet_api. More...
#include <dsa_core.h>
Data Fields | |
| struct net_if *(* | recv )(struct net_if *iface, struct net_pkt *pkt) |
| DSA helper callbacks. | |
| struct net_pkt *(* | xmit )(struct net_if *iface, struct net_pkt *pkt) |
| Transmit packet on the user port with tagging. | |
| int(* | port_init )(const struct device *dev) |
| Port init. | |
| void(* | port_phylink_change )(const struct device *dev, struct phy_link_state *state, void *user_data) |
| Port link change. | |
| void(* | port_generate_random_mac )(uint8_t *mac_addr) |
| Port generates random mac address. | |
| int(* | port_txtstamp )(const struct device *dev, struct net_pkt *pkt) |
| Port TX timestamp handling. | |
| int(* | switch_setup )(const struct dsa_switch_context *dsa_switch_ctx) |
| Switch setup. | |
| int(* | connect_tag_protocol )(struct dsa_switch_context *dsa_switch_ctx, int tag_proto) |
| Connect the switch to the tag protocol. | |
| enum ethernet_hw_caps(* | get_capabilities )(const struct device *dev) |
| Get the device capabilities. | |
| int(* | set_config )(const struct device *dev, enum ethernet_config_type type, const struct ethernet_config *config) |
| Set specific hardware configuration. | |
| int(* | get_config )(const struct device *dev, enum ethernet_config_type type, struct ethernet_config *config) |
| Get hardware specific configuration. | |
Structure to provide DSA switch api callbacks - it is an augmented struct ethernet_api.
| int(* dsa_api::connect_tag_protocol) (struct dsa_switch_context *dsa_switch_ctx, int tag_proto) |
Connect the switch to the tag protocol.
| enum ethernet_hw_caps(* dsa_api::get_capabilities) (const struct device *dev) |
Get the device capabilities.
| int(* dsa_api::get_config) (const struct device *dev, enum ethernet_config_type type, struct ethernet_config *config) |
Get hardware specific configuration.
| void(* dsa_api::port_generate_random_mac) (uint8_t *mac_addr) |
Port generates random mac address.
| int(* dsa_api::port_init) (const struct device *dev) |
Port init.
| void(* dsa_api::port_phylink_change) (const struct device *dev, struct phy_link_state *state, void *user_data) |
Port link change.
Port TX timestamp handling.
CONFIG_NET_L2_PTP.
DSA helper callbacks.
Handle receive packet on conduit port for untagging and redirection
| int(* dsa_api::set_config) (const struct device *dev, enum ethernet_config_type type, const struct ethernet_config *config) |
Set specific hardware configuration.
| int(* dsa_api::switch_setup) (const struct dsa_switch_context *dsa_switch_ctx) |
Switch setup.
Transmit packet on the user port with tagging.