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 > > 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