summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/freescale/fman/inc
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/freescale/fman/inc')
-rw-r--r--drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_ext.h16
-rw-r--r--drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_pcd_ext.h18
-rwxr-xr-xdrivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h6
-rw-r--r--drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3H/dpaa_integration_ext.h2
-rw-r--r--drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3L/dpaa_integration_ext.h4
5 files changed, 33 insertions, 13 deletions
diff --git a/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_ext.h b/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_ext.h
index 00951b1..efbe6d3 100644
--- a/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_ext.h
+++ b/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_ext.h
@@ -238,6 +238,7 @@ typedef uint32_t fmSpecialOperations_t; /**< typedef for definin
#define FM_SP_OP_CLEAR_RPD 0x02000000 /**< Clear the RPD bit */
#define FM_SP_OP_CAPWAP_DTLS_ENC 0x01000000 /**< activate features that related to CAPWAP-DTLS post Encryption */
#define FM_SP_OP_CAPWAP_DTLS_DEC 0x00800000 /**< activate features that related to CAPWAP-DTLS post Decryption */
+#define FM_SP_OP_IPSEC_NO_ETH_HDR 0x00400000 /**< activate features that related to IPSec without Eth hdr */
/* @} */
/**************************************************************************//**
@@ -1659,6 +1660,21 @@ t_Error FM_ForceIntr (t_Handle h_Fm, e_FmExceptions exception);
*//***************************************************************************/
t_Error FM_SetPortsBandwidth(t_Handle h_Fm, t_FmPortsBandwidthParams *p_PortsBandwidth);
+/**************************************************************************//*
+ @Function FM_GetMuramHandle
+
+ @Description Gets the corresponding MURAM handle
+
+ @Param[in] h_Fm A handle to an FM Module.
+
+ @Return MURAM handle; NULL otherwise.
+
+ @Cautions Allowed only following FM_Init().
+ This routine should NOT be called from guest-partition
+ (i.e. guestId != NCSW_MASTER_ID)
+*//***************************************************************************/
+t_Handle FM_GetMuramHandle(t_Handle h_Fm);
+
/** @} */ /* end of FM_runtime_control_grp group */
/** @} */ /* end of FM_lib_grp group */
/** @} */ /* end of FM_grp group */
diff --git a/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_pcd_ext.h b/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_pcd_ext.h
index e67fbb6..c489124 100644
--- a/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_pcd_ext.h
+++ b/drivers/net/ethernet/freescale/fman/inc/Peripherals/fm_pcd_ext.h
@@ -95,9 +95,8 @@
#define FM_PCD_KG_NUM_OF_DEFAULT_GROUPS 16 /**< Number of default value logical groups */
#define FM_PCD_PRS_NUM_OF_LABELS 32 /**< Maximum number of SW parser labels */
-#define FM_PCD_SW_PRS_SIZE 0x00000800 /**< Total size of SW parser area */
-#define FM_PCD_PRS_SW_OFFSET 0x00000040 /**< Size of illegal addresses at the beginning
- of the SW parser area */
+#define FM_SW_PRS_MAX_IMAGE_SIZE (FM_PCD_SW_PRS_SIZE /*- FM_PCD_PRS_SW_OFFSET -FM_PCD_PRS_SW_TAIL_SIZE*/-FM_PCD_PRS_SW_PATCHES_SIZE)
+ /**< Maximum size of SW parser code */
#define FM_PCD_MAX_MANIP_INSRT_TEMPLATE_SIZE 128 /**< Maximum size of insertion template for
insert manipulation */
@@ -1144,7 +1143,7 @@ typedef enum e_FmPcdManipHdrFieldUpdateVlan {
} e_FmPcdManipHdrFieldUpdateVlan;
/**************************************************************************//**
- @Description Enumeration type for selecting specific L2 fields removal
+ @Description Enumeration type for selecting specific L2 header insertion
*//***************************************************************************/
typedef enum e_FmPcdManipHdrInsrtSpecificL2 {
e_FM_PCD_MANIP_HDR_INSRT_MPLS /**< Insert MPLS header (Unlimited MPLS labels) */
@@ -2243,7 +2242,7 @@ typedef struct t_FmPcdManipHdrRmvByHdrParams {
If TRUE, remove also the specified header. */
t_FmManipHdrInfo hdrInfo;
} fromStartByHdr; /**< Relevant when type = e_FM_PCD_MANIP_RMV_BY_HDR_FROM_START */
-#endif /* FM_CAPWAP_SUPPORT */
+#endif /* (DPAA_VERSION >= 11) || ... */
#if (DPAA_VERSION >= 11)
t_FmManipHdrInfo hdrInfo; /**< Relevant when type = e_FM_PCD_MANIP_RMV_BY_HDR_FROM_START */
#endif /* (DPAA_VERSION >= 11) */
@@ -2356,9 +2355,14 @@ typedef struct t_FmPcdManipSpecialOffloadIPSecParams {
(direction depends on the 'decryption' field). */
bool variableIpHdrLen; /**< TRUE for supporting variable IP header length in decryption. */
bool variableIpVersion; /**< TRUE for supporting both IP version on the same SA in encryption */
- uint8_t outerIPHdrLen; /**< if 'variableIpVersion == TRUE' than this field must be set to non-zero value;
+ uint8_t outerIPHdrLen; /**< if 'variableIpVersion == TRUE' then this field must be set to non-zero value;
It is specifies the length of the outer IP header that was configured in the
corresponding SA. */
+ uint16_t arwSize; /**< if <> '0' then will perform ARW check for this SA;
+ The value must be a multiplication of 16 */
+ uintptr_t arwAddr; /**< if arwSize <> '0' then this field must be set to non-zero value;
+ MUST be allocated from FMAN's MURAM that the post-sec op-port belongs to;
+ Must be 4B aligned. Required MURAM size is 'NEXT_POWER_OF_2(arwSize+32))/8+4' Bytes */
} t_FmPcdManipSpecialOffloadIPSecParams;
#if (DPAA_VERSION >= 11)
@@ -3832,8 +3836,6 @@ t_Error FM_PCD_HashTableGetBucketAging(t_Handle h_HashTbl,
uint32_t *p_BucketAgingMask,
uint8_t *agedKeysArray[31]);
-
-
/**************************************************************************//**
@Function FM_PCD_ManipNodeSet
diff --git a/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h b/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h
index cec4e10..96a63fa 100755
--- a/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h
+++ b/drivers/net/ethernet/freescale/fman/inc/flib/fsl_fman.h
@@ -672,7 +672,6 @@ enum fman_counters {
#define QMI_GS_HALT_NOT_BUSY 0x00000002
-
/**************************************************************************//**
@Description IRAM defines
*//***************************************************************************/
@@ -753,8 +752,9 @@ void fman_set_dma_emergency(struct fman_dma_regs *dma_rg, bool is_write,
bool enable);
void fman_set_dma_ext_bus_pri(struct fman_dma_regs *dma_rg, uint32_t pri);
void fman_set_congestion_group_pfc_priority(uint32_t *cpg_rg,
- uint32_t congestion_group_id,
- uint8_t priority_bit_map);
+ uint32_t congestion_group_id,
+ uint8_t piority_bit_map,
+ uint32_t reg_num);
void fman_defconfig(struct fman_cfg *cfg, bool is_master);
diff --git a/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3H/dpaa_integration_ext.h b/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3H/dpaa_integration_ext.h
index ce9c3e7..38ed441 100644
--- a/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3H/dpaa_integration_ext.h
+++ b/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3H/dpaa_integration_ext.h
@@ -220,7 +220,7 @@ typedef enum
#define FM_PCD_PLCR_NUM_ENTRIES 256 /**< Total number of policer profiles */
#define FM_PCD_KG_NUM_OF_SCHEMES 32 /**< Total number of KG schemes */
#define FM_PCD_MAX_NUM_OF_CLS_PLANS 256 /**< Number of classification plan entries. */
-#define FM_PCD_PRS_SW_PATCHES_SIZE 0x00000460 /**< Number of bytes saved for patches */
+#define FM_PCD_PRS_SW_PATCHES_SIZE 0x00000600 /**< Number of bytes saved for patches */
#define FM_PCD_SW_PRS_SIZE 0x00000800 /**< Total size of SW parser area */
/* RTC defines */
diff --git a/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3L/dpaa_integration_ext.h b/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3L/dpaa_integration_ext.h
index be3fcb1..594527e 100644
--- a/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3L/dpaa_integration_ext.h
+++ b/drivers/net/ethernet/freescale/fman/inc/integrations/FMANV3L/dpaa_integration_ext.h
@@ -203,6 +203,8 @@ typedef enum
#define FM_MAX_NUM_OF_10G_TX_PORTS FM_MAX_NUM_OF_10G_MACS
#define FM_MAX_NUM_OF_TX_PORTS (FM_MAX_NUM_OF_10G_TX_PORTS + FM_MAX_NUM_OF_1G_TX_PORTS)
+#define FM_MAX_NUM_OF_MACSECS 1 /* Should be updated */
+
#define FM_PORT_MAX_NUM_OF_EXT_POOLS 4 /**< Number of external BM pools per Rx port */
#define FM_PORT_NUM_OF_CONGESTION_GRPS 256 /**< Total number of congestion groups in QM */
#define FM_MAX_NUM_OF_SUB_PORTALS 16
@@ -221,7 +223,7 @@ typedef enum
#define FM_PCD_PLCR_NUM_ENTRIES 256 /**< Total number of policer profiles */
#define FM_PCD_KG_NUM_OF_SCHEMES 32 /**< Total number of KG schemes */
#define FM_PCD_MAX_NUM_OF_CLS_PLANS 256 /**< Number of classification plan entries. */
-#define FM_PCD_PRS_SW_PATCHES_SIZE 0x00000460 /**< Number of bytes saved for patches */
+#define FM_PCD_PRS_SW_PATCHES_SIZE 0x00000600 /**< Number of bytes saved for patches */
#define FM_PCD_SW_PRS_SIZE 0x00000800 /**< Total size of SW parser area */
/* RTC defines */