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

This file contains the structure definitions and function prototypes of the CPSW Resource manager module. More...

#include "cpsw_types.h"

Data Structures

struct  CpswRm_ResourceInfo_s
 CPSW RM Resource Information. More...
 
struct  CpswRm_ResourcePrms_s
 CPSW RM Resource parameters. More...
 
struct  CpswRm_IoctlPermissionEntry_s
 CPSW RM IOCTL permission entry. More...
 
struct  CpswRm_IoctlPermissionTable_s
 CPSW RM IOCTL permission table. More...
 
struct  CpswRm_MacAddressPool_s
 CPSW RM IOCTL permission table. More...
 
struct  CpswRm_AllocRxFlowOutArgs_s
 Output args for CPSW_RM_IOCTL_ALLOC_RX_FLOW IOCTL CMD. More...
 
struct  CpswRm_AllocMacAddrOutArgs_s
 Input args for CPSW_RM_IOCTL_ALLOC_MAC_ADDR IOCTL command. More...
 
struct  CpswRm_FreeTxChInArgs_s
 Input args for CPSW_RM_IOCTL_FREE_TX_CH_PEERID IOCTL command. More...
 
struct  CpswRm_FreeRxFlowInArgs_s
 Input args for CPSW_RM_IOCTL_FREE_RX_FLOW IOCTL command. More...
 
struct  CpswRm_FreeMacAddrInArgs_s
 Input args for CPSW_RM_IOCTL_FREE_MAC_ADDR IOCTL command. More...
 
struct  Cpsw_ResourceConfig_s
 CPSW driver resource configuration parameters. More...
 

Macros

#define CPSW_RM_PUBLIC_IOCTL(x)   (CPSW_IOCTL_RM_BASE | CPSW_IOCTL_MIN(x))
 Helper macro to create IOCTL commands for CPSW Resource Manager.
 
Resource Manager Error Codes

Error codes returned by RM functions

#define CPSW_RM_TXCHNUM_INVALID   (0xABCDABCDU)
 CPSW RM Invalid TX channel number.
 
#define CPSW_RM_RXFLOWIDX_INVALID   (0xABCDABCDU)
 CPSW RM Invalid RX flow id.
 
#define CPSW_RM_INVALIDCORE   (0x5562AEFEU)
 CPSW RM invalid core.
 
#define CPSW_RM_NUM_IOCTL_PERM_ENTRY_MAX   (16)
 Maximum number of entries for IOCTL permission.
 
#define CPSW_RM_NUM_MACADDRESS_MAX   (10)
 Maximum number of macaddress to be managed by RM.
 

Typedefs

typedef enum CpswRm_Ioctls_e CpswRm_Ioctls_e
 CPSW RM IOCTL commands.
 
typedef struct
CpswRm_ResourceInfo_s 
CpswRm_ResourceInfo
 CPSW RM Resource Information. More...
 
typedef struct
CpswRm_ResourcePrms_s 
CpswRm_ResourcePrms
 CPSW RM Resource parameters. More...
 
typedef struct
CpswRm_IoctlPermissionEntry_s 
CpswRm_IoctlPermissionEntry
 CPSW RM IOCTL permission entry. More...
 
typedef struct
CpswRm_IoctlPermissionTable_s 
CpswRm_IoctlPermissionTable
 CPSW RM IOCTL permission table. More...
 
typedef struct
CpswRm_MacAddressPool_s 
CpswRm_MacAddressPool
 CPSW RM IOCTL permission table. More...
 
typedef struct
CpswRm_AllocRxFlowOutArgs_s 
CpswRm_AllocRxFlowOutArgs
 Output args for CPSW_RM_IOCTL_ALLOC_RX_FLOW IOCTL CMD.
 
typedef struct
CpswRm_AllocMacAddrOutArgs_s 
CpswRm_AllocMacAddrOutArgs
 Input args for CPSW_RM_IOCTL_ALLOC_MAC_ADDR IOCTL command.
 
typedef struct
CpswRm_FreeTxChInArgs_s 
CpswRm_FreeTxChInArgs
 Input args for CPSW_RM_IOCTL_FREE_TX_CH_PEERID IOCTL command.
 
typedef struct
CpswRm_FreeRxFlowInArgs_s 
CpswRm_FreeRxFlowInArgs
 Input args for CPSW_RM_IOCTL_FREE_RX_FLOW IOCTL command.
 
typedef struct
CpswRm_FreeMacAddrInArgs_s 
CpswRm_FreeMacAddrInArgs
 Input args for CPSW_RM_IOCTL_FREE_MAC_ADDR IOCTL command.
 
typedef struct
Cpsw_ResourceConfig_s 
CpswRm_ResourceConfig
 CPSW driver resource configuration parameters. More...
 
CPSW RM driver opaque handle

Opaque handle typedefs for CPSW RM driver object.

typedef struct CpswRm_Obj_s * CpswRm_Handle
 Opaque structure to hold software state for CPSW RM.
 

Enumerations

enum  CpswRm_Ioctls_e {
  CPSW_RM_IOCTL_ALLOC_MAC_ADDR = CPSW_RM_PUBLIC_IOCTL(0U), CPSW_RM_IOCTL_ALLOC_RX_FLOW = CPSW_RM_PUBLIC_IOCTL(1U), CPSW_RM_IOCTL_ALLOC_TX_CH_PEERID = CPSW_RM_PUBLIC_IOCTL(2U), CPSW_RM_IOCTL_FREE_RX_FLOW = CPSW_RM_PUBLIC_IOCTL(3U),
  CPSW_RM_IOCTL_FREE_TX_CH_PEERID = CPSW_RM_PUBLIC_IOCTL(4U), CPSW_RM_IOCTL_FREE_MAC_ADDR = CPSW_RM_PUBLIC_IOCTL(5U)
}
 CPSW RM IOCTL commands. More...
 

Detailed Description

This file contains the structure definitions and function prototypes of the CPSW Resource manager module.


Copyright 2020, Texas Instruments Incorporated