AM261x MCU+ SDK: enet_ioctl.h File Reference

| AM261x MCU+ SDK 26.00.00 |

Data Structures | Macros | Enumerations | Functions
enet_ioctl.h File Reference

## Introduction

This file contains the type definitions and helper macros for the Enet IOCTL interface.

Go to the source code of this file.

## Data Structures
struct | Enet_IoctlPrms
| Enet IOCTL param. More...
struct | Enet_IoctlValidate
| Enet IOCTL expected param sizes. More...

## Macros
#define | ENET_IOCTL_TYPE_OFFSET (24U)
| IOCTL type bit offset. More...
#define | ENET_IOCTL_PER_OFFSET (16U)
| IOCTL hardware peripheral bit offset. More...
#define | ENET_IOCTL_MAJOR_OFFSET (8U)
| IOCTL major number bit offset. More...
#define | ENET_IOCTL_MINOR_OFFSET (0U)
| IOCTL minor number bit offset. More...
#define | ENET_IOCTL_GET_TYPE(x) ((x) & 0xFF000000U)
| Helper macro to get the IOCTL type (public/private). More...
#define | ENET_IOCTL_GET_PER(x) ((x) & 0x00FF0000U)
| Helper macro to get the peripheral type. More...
#define | ENET_IOCTL_GET_MAJ(x) ((x) & 0x0000FF00U)
| Helper macro to get the IOCTL major number. More...
#define | ENET_IOCTL_GET_MIN(x) ((x) & 0x000000FFU)
| Helper macro to get the IOCTL minor number. More...
#define | ENET_IOCTL_TYPE(x) ((x) << ENET_IOCTL_TYPE_OFFSET)
| Helper macro to set the IOCTL type. More...
#define | ENET_IOCTL_PER(x) ((x) << ENET_IOCTL_PER_OFFSET)
| Helper macro to set the IOCTL hardware peripheral. More...
#define | ENET_IOCTL_MAJ(x) ((x) << ENET_IOCTL_MAJOR_OFFSET)
| Helper macro to set the IOCTL major number. More...
#define | ENET_IOCTL_MIN(x) ((x) << ENET_IOCTL_MINOR_OFFSET)
| Helper macro to set the IOCTL minor number. More...
#define | ENET_IOCTL_SET_NO_ARGS(prms)
| Set null args for an IOCTL command that takes no arguments. More...
#define | ENET_IOCTL_SET_IN_ARGS(prms, in)
| Set the input args for an IOCTL command. More...
#define | ENET_IOCTL_SET_OUT_ARGS(prms, out)
| Set the output args for an IOCTL command. More...
#define | ENET_IOCTL_SET_INOUT_ARGS(prms, in, out)
| Set the input and output args for an IOCTL command. More...
#define | ENET_IOCTL_VALID_PRMS(cmdId, inSize, outSize)
| Helper macro used to add an entry in a IOCTL valid information of type Enet_IoctlValidate. More...
#define | ENET_IOCTL(hEnet, coreId, ioctlCmd, prms, status)
| Helper macro used to first register IOCTL handler and then invoke the IOCTL. More...

## Enumerations
enum | Enet_IoctlType_e { ENET_IOCTL_TYPE_PUBLIC = ENET_IOCTL_TYPE(1U), ENET_IOCTL_TYPE_PRIVATE = ENET_IOCTL_TYPE(2U) }
| IOCTL types. More...
enum | Enet_IoctlPer_e { ENET_IOCTL_PER_GENERIC = ENET_IOCTL_PER(0U), ENET_IOCTL_PER_CPSW = ENET_IOCTL_PER(1U), ENET_IOCTL_PER_ICSSG = ENET_IOCTL_PER(2U), ENET_IOCTL_PER_GMAC = ENET_IOCTL_PER(3U) }
| IOCTL peripheral types. More...
enum | Enet_IoctlMajor_e { ENET_IOCTL_PER_BASE = ENET_IOCTL_MAJ(1U), ENET_IOCTL_FDB_BASE = ENET_IOCTL_MAJ(2U), ENET_IOCTL_TIMESYNC_BASE = ENET_IOCTL_MAJ(3U), ENET_IOCTL_HOSTPORT_BASE = ENET_IOCTL_MAJ(4U), ENET_IOCTL_MACPORT_BASE = ENET_IOCTL_MAJ(5U), ENET_IOCTL_MDIO_BASE = ENET_IOCTL_MAJ(6U), ENET_IOCTL_STATS_BASE = ENET_IOCTL_MAJ(7U), ENET_IOCTL_PHY_BASE = ENET_IOCTL_MAJ(9U), ENET_IOCTL_RM_BASE = ENET_IOCTL_MAJ(10U), ENET_IOCTL_TAS_BASE = ENET_IOCTL_MAJ(11U) }
| IOCTL base number. More...

## Functions
static uint32_t | Enet_checkInArgs (const Enet_IoctlPrms *prms, uint32_t inArgsSize)
| Check IOCTL input args for commands that expect an input. More...
static uint32_t | Enet_checkNoInArgs (const Enet_IoctlPrms *prms)
| Check IOCTL input args for commands that don't expect an input. More...
static uint32_t | Enet_checkOutArgs (const Enet_IoctlPrms *prms, uint32_t outArgsSize)
| Check IOCTL output args for commands that expect an output. More...
static uint32_t | Enet_checkNoOutArgs (const Enet_IoctlPrms *prms)
| Check IOCTL output args for commands that don't have output. More...
static uint32_t | Enet_checkInOutArgs (const Enet_IoctlPrms *prms, uint32_t inArgsSize, uint32_t outArgsSize)
| Check IOCTL input and output args. More...