summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMandy Lavi <mandy.lavi@freescale.com>2015-01-22 13:33:26 (GMT)
committerHonghua Yin <Hong-Hua.Yin@freescale.com>2015-03-20 05:12:15 (GMT)
commit24dbe25f9315dbc581737284af971b8ca092ac4d (patch)
tree619eee267873d9bcbf81b7f986f1a9e6c4d4f5ec
parent59da1d4b010ef87aa153eaadc0fa33874d4d74a5 (diff)
downloadlinux-fsl-qoriq-24dbe25f9315dbc581737284af971b8ca092ac4d.tar.xz
fmd: update FmanV3L constants
Change-Id: I8b2b5e146358ab5aa9ce995c458471b4d037310b Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/29110 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jianhua Xie <jianhua.xie@freescale.com> Reviewed-by: Honghua Yin <Hong-Hua.Yin@freescale.com>
-rw-r--r--drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c5
-rw-r--r--drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.h7
-rw-r--r--drivers/net/ethernet/freescale/fman/inc/integrations/T4240/dpaa_integration_ext.h30
3 files changed, 31 insertions, 11 deletions
diff --git a/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c b/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c
index db4609f..3b28099 100644
--- a/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c
+++ b/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c
@@ -3401,7 +3401,10 @@ t_Handle FM_Config(t_FmParams *p_FmParam)
#endif /* FM_QMI_NO_DEQ_OPTIONS_SUPPORT */
p_Fm->p_FmStateStruct->totalFifoSize = 0;
- p_Fm->p_FmStateStruct->totalNumOfTasks = DEFAULT_totalNumOfTasks;
+ p_Fm->p_FmStateStruct->totalNumOfTasks =
+ DEFAULT_totalNumOfTasks(p_Fm->p_FmStateStruct->revInfo.majorRev,
+ p_Fm->p_FmStateStruct->revInfo.minorRev);
+
#ifdef FM_HAS_TOTAL_DMAS
p_Fm->p_FmStateStruct->maxNumOfOpenDmas = BMI_MAX_NUM_OF_DMAS;
#endif /* FM_HAS_TOTAL_DMAS */
diff --git a/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.h b/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.h
index 4c1897b..ea103db 100644
--- a/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.h
+++ b/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.h
@@ -306,7 +306,8 @@ switch (exception){ \
(((major == 2) || (major == 5)) ? \
(100*KILOBYTE) : ((major == 4) ? \
(49*KILOBYTE) : (122*KILOBYTE)))
-#define DEFAULT_totalNumOfTasks BMI_MAX_NUM_OF_TASKS
+#define DEFAULT_totalNumOfTasks(major, minor) \
+ BMI_MAX_NUM_OF_TASKS
#define DEFAULT_dmaCommQLow ((DMA_THRESH_MAX_COMMQ+1)/2)
#define DEFAULT_dmaCommQHigh ((DMA_THRESH_MAX_COMMQ+1)*3/4)
@@ -335,7 +336,9 @@ switch (exception){ \
(((major == 6) && ((minor == 1) || (minor == 4))) ? \
(156*KILOBYTE) : (295*KILOBYTE))
-#define DEFAULT_totalNumOfTasks 124
+/* According to the default value of FMBM_CFG2[TNTSKS] */
+#define DEFAULT_totalNumOfTasks(major, minor) \
+ (((major == 6) && ((minor == 1) || (minor == 4))) ? 59 : 124)
#define DEFAULT_dmaCommQLow 0x2A
#define DEFAULT_dmaCommQHigh 0x3F
diff --git a/drivers/net/ethernet/freescale/fman/inc/integrations/T4240/dpaa_integration_ext.h b/drivers/net/ethernet/freescale/fman/inc/integrations/T4240/dpaa_integration_ext.h
index 58fa5d7..cd7e579 100644
--- a/drivers/net/ethernet/freescale/fman/inc/integrations/T4240/dpaa_integration_ext.h
+++ b/drivers/net/ethernet/freescale/fman/inc/integrations/T4240/dpaa_integration_ext.h
@@ -190,16 +190,14 @@ typedef enum
******************************************************************************/
/* Add T1 Port constraint:T1040, T1042, T1020, T1022 (T1040RM Rev D, 04/2014) */
#ifdef CONFIG_FMAN_V3L
-#define INTG_MAX_NUM_OF_FM 1
-
+#define INTG_MAX_NUM_OF_FM 1
/* Ports defines */
-#define FM_MAX_NUM_OF_1G_MACS 5
-#define FM_MAX_NUM_OF_10G_MACS 1
-#define FM_MAX_NUM_OF_MACS (FM_MAX_NUM_OF_1G_MACS + FM_MAX_NUM_OF_10G_MACS)
-#define FM_MAX_NUM_OF_OH_PORTS 4
-#else
+#define FM_MAX_NUM_OF_1G_MACS 5
+#define FM_MAX_NUM_OF_10G_MACS 1
+#define FM_MAX_NUM_OF_MACS (FM_MAX_NUM_OF_1G_MACS + FM_MAX_NUM_OF_10G_MACS)
+#define FM_MAX_NUM_OF_OH_PORTS 4
+#else /* CONFIG_FMAN_V3L */
#define INTG_MAX_NUM_OF_FM 2
-
/* Ports defines */
#define FM_MAX_NUM_OF_1G_MACS 6
#define FM_MAX_NUM_OF_10G_MACS 2
@@ -220,13 +218,23 @@ typedef enum
#define FM_MAX_NUM_OF_SUB_PORTALS 16
#define FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS 0
+#ifdef CONFIG_FMAN_V3L
+#define FM_VSP_MAX_NUM_OF_ENTRIES 32
+#else /* CONFIG_FMAN_V3L */
#define FM_VSP_MAX_NUM_OF_ENTRIES 64
+#endif
#define FM_MAX_NUM_OF_PFC_PRIORITIES 8
/* RAMs defines */
+#ifdef CONFIG_FMAN_V3L
+#define FM_MURAM_SIZE (192 * KILOBYTE)
+#define FM_IRAM_SIZE (32 * KILOBYTE)
+#define FM_NUM_OF_CTRL 2
+#else /* CONFIG_FMAN_V3L */
#define FM_MURAM_SIZE (384 * KILOBYTE)
#define FM_IRAM_SIZE ( 64 * KILOBYTE)
#define FM_NUM_OF_CTRL 4
+#endif
/* PCD defines */
#define FM_PCD_PLCR_NUM_ENTRIES 256 /**< Total number of policer profiles */
@@ -251,8 +259,14 @@ typedef enum
#define DMA_THRESH_MAX_BUF 127
/* BMI defines */
+#ifdef CONFIG_FMAN_V3L
+#define BMI_MAX_NUM_OF_TASKS 64
+#define BMI_MAX_NUM_OF_DMAS 32
+#else
#define BMI_MAX_NUM_OF_TASKS 128
#define BMI_MAX_NUM_OF_DMAS 84
+#endif
+
#define BMI_MAX_FIFO_SIZE (FM_MURAM_SIZE)
#define PORT_MAX_WEIGHT 16