Re: [PATCH 05/14] dmaengine: dma-jz4780: Add support for the JZ4740 SoC
From: Rob Herring
Date: Mon Jul 16 2018 - 17:33:44 EST
On Mon, Jul 09, 2018 at 10:42:26PM +0530, Vinod wrote:
> On 03-07-18, 14:32, Paul Cercueil wrote:
>
> > enum jz_version {
> > + ID_JZ4740,
> > ID_JZ4770,
> > ID_JZ4780,
> > };
> > @@ -247,6 +248,7 @@ static void jz4780_dma_desc_free(struct virt_dma_desc *vdesc)
> > }
> >
> > static const unsigned int jz4780_dma_ord_max[] = {
> > + [ID_JZ4740] = 5,
> > [ID_JZ4770] = 6,
> > [ID_JZ4780] = 7,
> > };
> > @@ -801,11 +803,13 @@ static struct dma_chan *jz4780_of_dma_xlate(struct of_phandle_args *dma_spec,
> > }
> >
> > static const unsigned int jz4780_dma_nb_channels[] = {
> > + [ID_JZ4740] = 6,
> > [ID_JZ4770] = 6,
> > [ID_JZ4780] = 32,
> > };
>
> I feel these should be done away with if we describe hardware in DT
The compatible property can imply things like this.
But how this is structured is a bit strange. Normally you have a per
compatible struct with these as elements and the compatible matching
selects the struct.
>
> >
> > static const struct of_device_id jz4780_dma_dt_match[] = {
> > + { .compatible = "ingenic,jz4740-dma", .data = (void *)ID_JZ4740 },
>
> adding .compatible should be the only thing required, if at all for this
> addition :)
>
> --
> ~Vinod