summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c
diff options
context:
space:
mode:
authorMarian Rotariu <marian.rotariu@freescale.com>2014-05-05 15:50:30 (GMT)
committerJose Rivera <German.Rivera@freescale.com>2014-05-09 18:29:46 (GMT)
commit8836ca1ea5a21283cdbd6edadcfada205ce5de5a (patch)
tree0ba6ba0498965fc7bf3200ee8aa89fedba42be15 /drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c
parentec65b6f5a7c541f551cfa05802a48d67f4174da4 (diff)
downloadlinux-fsl-qoriq-8836ca1ea5a21283cdbd6edadcfada205ce5de5a.tar.xz
onic: fix RX PCD fqs initialization
RX PCD fqs should have rx default handler not the error handler. This patch solves this problem and clarifies some comments related to fqs initialization. Signed-off-by: Marian Rotariu <marian.rotariu@freescale.com> Change-Id: I9624a3dfce594b2b4d0fe99567dfdd8ea3cab1e0 Reviewed-on: http://git.am.freescale.net:8181/11841 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
Diffstat (limited to 'drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c')
-rw-r--r--drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c b/drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c
index b22db78..456c856 100644
--- a/drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c
+++ b/drivers/net/ethernet/freescale/dpa/dpaa_eth_generic.c
@@ -769,7 +769,6 @@ static int dpa_generic_netdev_init(struct device_node *dpa_node,
struct dpa_fq_cbs_t generic_fq_cbs = {
.rx_defq = { .cb = { .dqrr = dpa_generic_rx_dqrr } },
- /* for OH ports Rx Error queues = Tx Error queues */
.rx_errq = { .cb = { .dqrr = dpa_generic_rx_err_dqrr } },
.egress_ern = { .cb = { .ern = dpa_generic_ern } }
};
@@ -1132,7 +1131,7 @@ static void dpa_generic_fq_setup(struct dpa_generic_priv_s *priv,
dpa_generic_setup_ingress(priv, fq, &fq_cbs->rx_errq);
break;
case FQ_TYPE_RX_PCD:
- dpa_generic_setup_ingress(priv, fq, &fq_cbs->rx_errq);
+ dpa_generic_setup_ingress(priv, fq, &fq_cbs->rx_defq);
break;
case FQ_TYPE_TX:
dpa_generic_setup_egress(priv, fq,
@@ -1200,10 +1199,11 @@ static int dpa_generic_fq_init(struct dpa_fq *dpa_fq, bool td_enable)
if (dpa_fq->fq_type == FQ_TYPE_TX) {
initfq.we_mask |= QM_INITFQ_WE_CONTEXTA;
- /* CTXA[A2V] = 1 */
+ /* ContextA: A2V=1 (contextA A2 field is valid)
+ * ContextA A2: EBD=1 (deallocate buffers inside FMan)
+ */
initfq.fqd.context_a.hi = 0x10000000;
initfq.fqd.context_a.lo = 0x80000000;
- /* initfq.fqd.context_b = qman_fq_fqid(confq); */
}
/* Initialization common to all ingress queues */