Re: [V5, 2/6] fsl/fman: Add FMan support
From: Scott Wood
Date: Wed Oct 28 2015 - 17:31:24 EST
On Tue, 2015-10-27 at 11:32 -0500, Liberman Igal-B31950 wrote:
> > > +
> > > +struct device *fman_get_device(struct fman *fman) {
> > > + return fman->dev;
> > > +}
> >
> > Is this really necessary?
> >
>
> Fman port needs fman->dev, fman structure is opaque, so yes, it's needed.
Why is opacity being maintained from one part of the fman driver to another?
Isn't this the sort of excessive layering that was complained about?
> > > + /* In B4 rev 2.0 (and above) the MURAM size is 512KB.
> > > + * Check the SVR and update MURAM size if required.
> > > + */
> > > + u32 svr;
> > > +
> > > + svr = mfspr(SPRN_SVR);
> > > +
> > > + if ((SVR_SOC_VER(svr) == SVR_B4860) && (SVR_MAJ(svr) >=
> > 2))
> > > + fman->dts_params.muram_size = 0x80000;
> > > + }
> >
> > Why wasn't the MURAM size described in the device tree, as it was with
> > CPM/QE?
> >
>
> MURAM size described by the device-tree.
> In B4860 rev 2.0 (and above) MURAM size is bigger.
> This is workaround, in order to have the same device tree for all B4860
> revisions.
We don't support b4860 prior to rev 2.0 (due to e6500 core errata) so this is
irrelevant. Fix the device tree.
> > > +
> > > + of_node_put(muram_node);
> > > + of_node_put(fm_node);
> > > +
> > > + err = devm_request_irq(&of_dev->dev, irq, fman_irq,
> > > + IRQF_NO_SUSPEND, "fman", fman);
> > > + if (err < 0) {
> > > + pr_err("Error: allocating irq %d (error = %d)\n", irq, err);
> > > + goto fman_free;
> > > + }
> >
> > Why IRQF_NO_SUSPEND?
> >
>
> It shouldn't be IRQF_NO_SUSPEND for now, removed.
Why just "for now"?
-Scott
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/