summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com>2013-06-26 19:57:06 (GMT)
committerRivera Jose-B46482 <German.Rivera@freescale.com>2013-09-10 23:35:06 (GMT)
commit1de3f4c845fed4e60588c23f58bd8258bd0de41e (patch)
treeab26b5c991274d0742258dac8472c1409cad4bd9
parentf1032b1628c62bfba101368d78ff7e0b2021d183 (diff)
downloadlinux-fsl-qoriq-1de3f4c845fed4e60588c23f58bd8258bd0de41e.tar.xz
fsl_qman: support DCE channel
The dce accelerator uses QMan's direct connect portal. Extend qm_dc_portal to support dce. Add api to query the DCE channel. This is consistent with other accelerators such as PME. Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com> Change-Id: I237652768d45ffa9cd9cdd042f4a9f2b3edcd348 Reviewed-on: http://git.am.freescale.net:8181/4292 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Thorpe Geoff-R01361 <Geoff.Thorpe@freescale.com> Reviewed-by: Wang Haiying-R54964 <Haiying.Wang@freescale.com> Reviewed-by: Rivera Jose-B46482 <German.Rivera@freescale.com>
-rw-r--r--drivers/staging/fsl_qbman/qman_driver.c2
-rw-r--r--include/linux/fsl_qman.h10
2 files changed, 9 insertions, 3 deletions
diff --git a/drivers/staging/fsl_qbman/qman_driver.c b/drivers/staging/fsl_qbman/qman_driver.c
index 0e16f6f..4afa340 100644
--- a/drivers/staging/fsl_qbman/qman_driver.c
+++ b/drivers/staging/fsl_qbman/qman_driver.c
@@ -44,6 +44,8 @@ u16 qm_channel_caam = QMAN_CHANNEL_CAAM;
EXPORT_SYMBOL(qm_channel_caam);
u16 qm_channel_pme = QMAN_CHANNEL_PME;
EXPORT_SYMBOL(qm_channel_pme);
+u16 qm_channel_dce = QMAN_CHANNEL_DCE;
+EXPORT_SYMBOL(qm_channel_dce);
u16 qman_portal_max;
EXPORT_SYMBOL(qman_portal_max);
diff --git a/include/linux/fsl_qman.h b/include/linux/fsl_qman.h
index e4a5a20..1b9ad16 100644
--- a/include/linux/fsl_qman.h
+++ b/include/linux/fsl_qman.h
@@ -46,14 +46,18 @@ extern "C" {
#define QMAN_CHANNEL_POOL1_REV3 0x401
#define QMAN_CHANNEL_CAAM_REV3 0x840
#define QMAN_CHANNEL_PME_REV3 0x860
+#define QMAN_CHANNEL_DCE 0x8a0
extern u16 qm_channel_pool1;
extern u16 qm_channel_caam;
extern u16 qm_channel_pme;
+extern u16 qm_channel_dce;
enum qm_dc_portal {
qm_dc_portal_fman0 = 0,
qm_dc_portal_fman1 = 1,
qm_dc_portal_caam = 2,
- qm_dc_portal_pme = 3
+ qm_dc_portal_pme = 3,
+ qm_dc_portal_rman = 4,
+ qm_dc_portal_dce = 5
};
/* Portal processing (interrupt) sources */
@@ -327,8 +331,8 @@ struct qm_mr_entry {
} __packed ern;
struct {
u8 colour:2; /* See QM_MR_DCERN_COLOUR_* */
- u8 __reserved1:4;
- enum qm_dc_portal portal:2;
+ u8 __reserved1:3;
+ enum qm_dc_portal portal:3;
u16 __reserved2;
u8 rc; /* Rejection Code */
u32 __reserved3:24;