summaryrefslogtreecommitdiffstats
path: root/linux/drivers/soc/fsl/qbman/qman_priv.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-07-13 08:31:46 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-10-23 09:24:07 +0200
commitde5791b34591b88911c350d835d8b45d274cc852 (patch)
tree20fda544699545de464a9ffcf5ad5716208c0b4a /linux/drivers/soc/fsl/qbman/qman_priv.h
parentdpaa: Add "libbsd,dequeue" to QMan portals (diff)
downloadrtems-libbsd-de5791b34591b88911c350d835d8b45d274cc852.tar.bz2
dpaa: Add "libbsd,dedicated-portal" to QMan portals
By default, the network interfaces use a pool channel, see dpaa_get_channel() in dpaa_eth_priv_probe(). To enable a dedicated QMan software portal, use libbsd,dedicated-portal = "enabled";. This option is useful for special purpose 10Gbit/s Ethernet processing. / { soc: soc@ffe000000 { fman0: fman@400000 { enet7: ethernet@f2000 { libbsd,dedicated-portal = "enabled"; }; }; }; };
Diffstat (limited to '')
-rw-r--r--linux/drivers/soc/fsl/qbman/qman_priv.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/linux/drivers/soc/fsl/qbman/qman_priv.h b/linux/drivers/soc/fsl/qbman/qman_priv.h
index 369ba752..2db10889 100644
--- a/linux/drivers/soc/fsl/qbman/qman_priv.h
+++ b/linux/drivers/soc/fsl/qbman/qman_priv.h
@@ -165,6 +165,8 @@ struct qm_portal_config {
struct iommu_domain *iommu_domain;
/* Allow these to be joined in lists */
struct list_head list;
+#else /* __rtems__ */
+ struct list_head node;
#endif /* __rtems__ */
/* User-visible portal configuration settings */
/* portal is affined to this cpu */
@@ -201,6 +203,10 @@ int qman_wq_alloc(void);
void qman_liodn_fixup(u16 channel);
void qman_set_sdest(u16 channel, unsigned int cpu_idx);
+#ifdef __rtems__
+struct qman_portal *qman_create_dedicated_portal(
+ const struct qm_portal_config *c, const struct qman_cgrs *cgrs);
+#endif /* __rtems__ */
struct qman_portal *qman_create_affine_portal(
const struct qm_portal_config *config,
const struct qman_cgrs *cgrs);