ETHFW API Guide
|
Go to the source code of this file.
Data Structures | |
struct | rpmsg_kdrv_ethswitch_message_header |
struct | rpmsg_kdrv_ethswitch_common_request_info |
struct | rpmsg_kdrv_ethswitch_common_response_info |
struct | rpmsg_kdrv_ethswitch_attach_request |
struct | rpmsg_kdrv_ethswitch_attach_response |
struct | rpmsg_kdrv_ethswitch_attach_extended_request |
struct | rpmsg_kdrv_ethswitch_attach_extended_response |
struct | rpmsg_kdrv_ethswitch_alloc_request |
Alloc request CMD params. More... | |
struct | rpmsg_kdrv_ethswitch_alloc_rx_response |
Alloc request CMD params. More... | |
struct | rpmsg_kdrv_ethswitch_alloc_tx_response |
Alloc Tx channel CMD response msg. More... | |
struct | rpmsg_kdrv_ethswitch_alloc_mac_response |
Alloc MAC CMD response msg. More... | |
struct | rpmsg_kdrv_ethswitch_register_rx_default_request |
Register Rx Default flow CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_register_rx_default_response |
Register Rx Default flow CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_register_mac_request |
Register MAC address CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_register_mac_response |
Register MAC address CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_mac_request |
UnRegister MAC address CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_mac_response |
UnRegister MAC address CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_free_mac_request |
Free MAC address CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_free_mac_response |
Free MAC address CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_free_tx_request |
Free Tx Channel CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_free_tx_response |
Free Tx Channel CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_rx_default_request |
Unregister Default Flow CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_rx_default_response |
Unregister Default Flow CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_free_rx_request |
Free Rx Flow CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_free_rx_response |
Free Rx Flow CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_detach_request |
Detach CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_detach_response |
Detach CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_ioctl_request |
IOCTL CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_ioctl_response |
IOCTL CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_regwr_request |
Register Write CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_regwr_response |
Register Write CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_regrd_request |
Register Read CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_regrd_response |
Register Read CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv4_register_mac_request |
Register IPv4:MAC Address mapping CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv6_register_mac_request |
Register IPv6:MAC Address mapping CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv4_register_mac_response |
Register IPv4:MAC Address mapping CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv6_register_mac_response |
Register IPv6:MAC Address mapping CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv4_unregister_mac_request |
Unregister IPv4:MAC Address mapping CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv6_unregister_mac_request |
Unregister IPv6:MAC Address mapping CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv4_unregister_mac_response |
Unregister IPv4:MAC Address mapping CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_ipv6_unregister_mac_response |
Unregister IPv6:MAC Address mapping CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_register_ethertype_request |
Register Ethertype CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_register_ethertype_response |
Register Ethertype CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_ethertype_request |
UnRegister Ethertype CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_ethertype_response |
UnRegister Ethertype CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_register_remotetimer_request |
Register Remote timer CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_register_remotetimer_response |
Register Remote timer CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_remotetimer_request |
UnRegister Remote timer CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_unregister_remotetimer_response |
UnRegister Remote timer CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_set_promisc_mode_request |
Set promiscuous mode CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_set_promisc_mode_response |
Set promiscuous mode CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_filter_add_mac_request |
Add multicast MAC address to receive filter CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_filter_add_mac_response |
Add multicast MAC address to receive filter CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_filter_del_mac_request |
Delete multicast MAC address from receive filter CMD request params. More... | |
struct | rpmsg_kdrv_ethswitch_filter_del_mac_response |
Delete multicast MAC address from receive filter CMD response params. More... | |
struct | rpmsg_kdrv_ethswitch_firmware_version_info |
Firmware version info returned by remote device attach to the ethernet switch device. More... | |
struct | rpmsg_kdrv_ethswitch_device_data |
Ethernet Switch Remote Device Data. More... | |
struct | rpmsg_kdrv_ethswitch_ping_request |
Ethernet Switch Remote Device Ping Request. More... | |
struct | rpmsg_kdrv_ethswitch_ping_response |
Ethernet Switch Remote Device Ping Response. More... | |
struct | rpmsg_kdrv_ethswitch_s2c_notify |
Ethernet Switch Remote Device Server to Client Notify. More... | |
struct | rpmsg_kdrv_ethswitch_c2s_notify |
Ethernet Switch Remote Device Client to Server Notify. More... | |
Functions | |
struct rpmsg_kdrv_ethswitch_message_header | __attribute__ ((packed)) |
u8 message_type |
Message Type enum: rpmsg_kdrv_ethswitch_message_type
u64 id |
opaque unique handle returned by ATTACH
unique handle used by all further CMDs. All further commands are required to use the id as a param
unique handle used by all further CMDs
u32 core_key |
Core specific key returned by attach
Core specific key to indicate attached core. All further commands are required to use the core_key as a param
Core specific key to indicate attached core
s32 status |
Status of request. Refer Ethernet Switch Remote Device CMD response code
struct rpmsg_kdrv_ethswitch_message_header header |
common message header
Common CMD header
u8 cpsw_type |
CPSW TYPE enum: rpmsg_kdrv_ethswitch_cpsw_type
struct rpmsg_kdrv_ethswitch_common_request_info info |
common response info
Alloc Request common info
Common info associated with all CMDs other than ATTACH
u32 rx_mtu |
MTU of rx packet
u32 tx_mtu |
MTU of tx packet per priority
u32 features |
Feature bitmask based on defines RPMSG_KDRV_TP_ETHSWITCH_FEATURE_xxx
u32 mac_only_port |
1-relative MAC-only port number. 0 for non MAC-only ports
u32 alloc_flow_idx |
Allocated flow's index
Rx flow id to be freed
u32 tx_cpsw_psil_dst_id |
Tx PSIL Peer destination thread id which should be paired with the Tx UDMA channel
Tx Channel CPSW PSIL Destination thread id to be freed
u8 mac_address |
Mac address allocated
mac address to be associated with flow
mac address to be unregistered from the rx flow
Mac address to be freed
Mac address associated with the IP address which should be added to the ARP table
Multicast MAC address to be added to receive filter
Multicast MAC address to be deleted from receive filter
u32 default_flow_idx |
Default flow will be associated with the given index
Default flow index to be unregistered
u32 flow_idx |
Flow's index associated with the mac address to be registered in ALE
rx flow index from which the mac_address association will be removed
Flow's index associated with the MAC address to be registered in ALE
Flow's index associated with the MAC address to be unregistered in ALE
u32 cmd |
CPSW IOCTL CMD id. Refer CPSW LLD documentation for list of CPSW LLD IOCTLs
u32 inargs_len |
CPSW IOCTL CMD input arguments length
u8 inargs[RPMSG_KDRV_TP_ETHSWITCH_IOCTL_INARGS_LEN] |
CPSW IOCTL CMD input arguments .Byte array is typecast to the inArgs structure associated with the IOCTL
u32 outargs_len |
CPSW IOCTL CMD output arguments length
u8 outargs[RPMSG_KDRV_TP_ETHSWITCH_IOCTL_OUTARGS_LEN] |
CPSW IOCTL CMD output arguments .Byte array is typecast to the outArgs structure associated with the IOCTL
u32 regaddr |
Register Address
u32 regval |
Register Value to be written
Updated register value
Register Read Value
uint8_t ipv4_addr |
IPv4 address
uint8_t ipv6_addr |
IPv6 address
u16 ether_type |
Ether type to be associated with flow
Ether type to be unregistered from the rx flow
u8 timer_id |
Timer id to be used for timesync router configuration
u8 hwPushNum |
CPTS hardware push number to be used for timesync router configuration
CPTS hardware push number used for timesync router configuration
u32 enable |
Promiscuous mode: enable or disable
u16 vlan_id |
u32 major |
Remote Ethernet Switch Device API Major version number
u32 minor |
Remote Ethernet Switch Device API Minor version number
u32 rev |
Remote Ethernet Switch Device API Revision version number
char year[RPMSG_KDRV_TP_ETHSWITCH_YEARLEN] |
Remote Ethernet Switch Device Firmware Build year : char string in the form YYYY eg: 2019
char month[RPMSG_KDRV_TP_ETHSWITCH_MONTHLEN] |
Remote Ethernet Switch Device Firmware Build month : char string in the form MON eg: Dec
char date[RPMSG_KDRV_TP_ETHSWITCH_DATELEN] |
Remote Ethernet Switch Device Firmware Build month : char string in the form DD eg: 12
char commit_hash[RPMSG_KDRV_TP_ETHSWITCH_COMMITSHALEN] |
GIT commit SHA of the firmware: char string in the form fd52c34f
struct rpmsg_kdrv_ethswitch_firmware_version_info fw_ver |
Ethernet Switch Remote Device Firmware version info
u32 permission_flags |
Flag indicating permission enabled for each enum rpmsg_kdrv_ethswitch_message_type command for the connecting client
u32 uart_connected |
Flag indicating if UART is connected: 1 indicates UART connected , 0 indicates UART not connected
u32 uart_id |
UART ID used by firmware for log prints
u8 data |
Ping data.Client populates this which serves copies in its reponse message
Ping data response
Notify data.Presently no S2C notify are supported . API will be updated to support S2C notify events such as PHY link down and this API param is expected to change
u8 notifyid |
Notify Id. Of type enum rpmsg_kdrv_ethswitch_client_notify_type
u32 notify_info_len |
Filled length of notify info
u8 notify_info[RPMSG_KDRV_TP_ETHSWITCH_MESSAGE_DATA_LEN] |
Notify Message data