cgrid
opts.fqd.cgid = qipriv.cgr.cgrid;
qman_release_cgrid(priv->cgr.cgrid);
opts.fqd.cgid = qipriv.cgr.cgrid;
ret = qman_alloc_cgrid(&qipriv.cgr.cgrid);
qipriv.cgr.cgrid);
qman_release_cgrid(qipriv.cgr.cgrid);
initfq.fqd.cgid = (u8)priv->cgr_data.cgr.cgrid;
initfq.fqd.cgid = (u8)priv->ingress_cgr.cgrid;
err = qman_alloc_cgrid(&priv->ingress_cgr.cgrid);
err, priv->ingress_cgr.cgrid);
qman_release_cgrid(priv->ingress_cgr.cgrid);
priv->ingress_cgr.cgrid, priv->mac_dev->addr);
qman_release_cgrid(priv->ingress_cgr.cgrid);
qman_release_cgrid(priv->cgr_data.cgr.cgrid);
qman_release_cgrid(priv->ingress_cgr.cgrid);
qman_release_cgrid(priv->cgr_data.cgr.cgrid);
err = qman_alloc_cgrid(&priv->cgr_data.cgr.cgrid);
__func__, err, priv->cgr_data.cgr.cgrid);
qman_release_cgrid(priv->cgr_data.cgr.cgrid);
priv->cgr_data.cgr.cgrid, priv->mac_dev->addr,
if (cgr->cb && qman_cgrs_get(&c, cgr->cgrid))
cgr->cb(p, cgr, qman_cgrs_get(&rr, cgr->cgrid));
mcc->cgr.cgid = cgr->cgrid;
mcc->initcgr.cgid = cgr->cgrid;
for (cgr.cgrid = 0; cgr.cgrid < CGR_NUM; cgr.cgrid++) {
if (cgr->cgrid >= CGR_NUM)
qman_cgr_cpus[cgr->cgrid] = smp_processor_id();
qman_cgrs_get(&p->cgrs[1], cgr->cgrid))
if (i->cgrid == cgr->cgrid && i->cb)
if (qman_cgr_cpus[cgr->cgrid] != smp_processor_id()) {
smp_call_function_single(qman_cgr_cpus[cgr->cgrid],
if (qman_cgr_cpus[cgr->cgrid] != smp_processor_id())
smp_call_function_single(qman_cgr_cpus[cgr->cgrid],
static int cgr_cleanup(u32 cgrid)
fqd.cgid == cgrid) {
cgrid, fq.fqid);
int qman_release_cgrid(u32 cgrid)
ret = cgr_cleanup(cgrid);
pr_debug("CGRID %d leaked\n", cgrid);
gen_pool_free(qm_cgralloc, cgrid | DPAA_GENALLOC_OFF, 1);