AM261x MCU+ SDK: cpsw.h File Reference

| AM261x MCU+ SDK 26.00.00 |

Data Structures | Macros | Typedefs | Enumerations
cpsw.h File Reference

## Introduction

This file contains the type definitions and helper macros for the CPSW peripheral interface.

This CPSW peripheral implementation supports CPSW_2G, CPSW_5G and CPSW_9G found in SoCs of the Jacinto 7 family.

Go to the source code of this file.

## Data Structures
struct | Cpsw_InterVlanRouteIngressPktMatchCfg
| InterVLAN route ingress packet match criteria configuration. More...
struct | Cpsw_InterVlanEgressPortCfg
| InterVLAN egress port configuration. More...
struct | Cpsw_SetInterVlanRouteUniEgressInArgs
| Input args for CPSW_PER_IOCTL_SET_INTERVLAN_ROUTE_UNI_EGRESS command. More...
struct | Cpsw_SetInterVlanRouteUniEgressOutArgs
| Output args for CPSW_PER_IOCTL_SET_INTERVLAN_ROUTE_UNI_EGRESS command. More...
struct | Cpsw_ClearInterVlanRouteUniEgressInArgs
| Input args for CPSW_PER_IOCTL_CLEAR_INTERVLAN_ROUTE_UNI_EGRESS command. More...
struct | Cpsw_SetInterVlanRouteMultiEgressInArgs
| Input args for CPSW_PER_IOCTL_SET_INTERVLAN_ROUTE_MULTI_EGRESS command. More...
struct | Cpsw_SetInterVlanRouteMultiEgressOutArgs
| Output args for CPSW_PER_IOCTL_SET_INTERVLAN_ROUTE_MULTI_EGRESS command. More...
struct | Cpsw_ClearInterVlanRouteMultiEgressInArgs
| Input args for CPSW_PER_IOCTL_CLEAR_INTERVLAN_ROUTE_MULTI_EGRESS command. More...
struct | Cpsw_SetTxShortIpgCfgInArgs
| Input args for CPSW_PER_IOCTL_SET_SHORT_IPG_CFG. More...
struct | Cpsw_TxShortIpgCfg
| Short IPG configuration for CPSW IP. More...
struct | Cpsw_VlanCfg
| CPSW-level VLAN configuration. More...
struct | Cpsw_MdioLinkStateChangeInfo
| PHY link status change event information. More...
struct | Cpsw_Cfg
| CPSW configuration. More...

## Macros
#define | CPSW_COMMON_TX_MTU_DEFAULT (2024U)
| Default common TX MTU. More...
#define | CPSW_ESC_PRI_LD_VAL (2U)
| Priority escalation value for switch scheduler. More...
#define | CPSW_PER_PUBLIC_IOCTL(x)
| Helper macro to create CPSW IOCTL commands. More...
#define | CPSW_MAC_PORT_NUM (8U)
#define | CPSW_INTR_STATS_PEND0 (1U)
| CPSW statistics interrupt id. More...
#define | CPSW_INTR_MDIO_PEND (2U)
| CPSW MDIO interrupt id. More...
#define | CPSW_INTR_EVNT_PEND (3U)
| CPSW event pending interrupt (CPTS) id. More...
CPSW InterVLAN ingress packet match types.
Ingress packet match criteria for interVLAN routing. Each packet match criteria is represented by a bit. To enable multiple match criteria create bitmask ORing required ingress packet match criteria defines
#define | CPSW_INTERVLAN_INGRESSPKT_MATCH_PORT (CPSW_ALE_POLICER_MATCH_PORT)
| Enable classifier match with PORT number. More...
#define | CPSW_INTERVLAN_INGRESSPKT_MATCH_MACSRC (CPSW_ALE_POLICER_MATCH_MACSRC)
| Enable classifier match with MAC source address entry. More...
#define | CPSW_INTERVLAN_INGRESSPKT_MATCH_MACDST (CPSW_ALE_POLICER_MATCH_MACDST)
| Enable classifier match with MAC destination address entry. More...
#define | CPSW_INTERVLAN_INGRESSPKT_MATCH_ETHERTYPE (CPSW_ALE_POLICER_MATCH_ETHERTYPE)
| Enable classifier match with MAC destination address entry. More...
#define | CPSW_INTERVLAN_INGRESSPKT_MATCH_IPSRC (CPSW_ALE_POLICER_MATCH_IPSRC)
| Enable classifier match with IPv4/IPv6 source address. More...
#define | CPSW_INTERVLAN_INGRESSPKT_MATCH_IPDST (CPSW_ALE_POLICER_MATCH_IPDST)
| Enable classifier match with IPv4/IPv6 destination address. More...

## Typedefs
typedef void(* | Cpsw_MdioLinkStateChangeCb) (Cpsw_MdioLinkStateChangeInfo *info, void *appArg)
| CPSW PHY link state change callback function. More...
typedef void(* | Cpsw_PortLinkStatusChangeCb) (Enet_MacPort macPort, bool isLinkUp, void *appArg)
| CPSW port link status change callback function. More...

## Enumerations
enum | Cpsw_Ioctl { CPSW_PER_IOCTL_SET_INTERVLAN_ROUTE_UNI_EGRESS = CPSW_PER_PUBLIC_IOCTL(0U), CPSW_PER_IOCTL_CLEAR_INTERVLAN_ROUTE_UNI_EGRESS = CPSW_PER_PUBLIC_IOCTL(1U), CPSW_PER_IOCTL_SET_INTERVLAN_ROUTE_MULTI_EGRESS = CPSW_PER_PUBLIC_IOCTL(2U), CPSW_PER_IOCTL_CLEAR_INTERVLAN_ROUTE_MULTI_EGRESS = CPSW_PER_PUBLIC_IOCTL(3U), CPSW_PER_IOCTL_SET_SHORT_IPG_CFG = CPSW_PER_PUBLIC_IOCTL(4U), CPSW_PER_IOCTL_GET_SHORT_IPG_CFG = CPSW_PER_PUBLIC_IOCTL(5U) }
| CPSW peripheral IOCTL commands. More...