On Tue, 29 Mar 2016 08:46:50 +0200 Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx> wrote: > On Mon, Mar 21, 2016 at 09:35:33AM +0100, Jean-Francois Moine wrote: > > On Mon, 21 Mar 2016 08:29:18 +0100 > > Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx> wrote: > > > > > > @@ -470,6 +473,10 @@ static int set_config(struct sun6i_dma_dev *sdev, > > > > { > > > > s8 src_width, dst_width, src_burst, dst_burst; > > > > > > > > + if (!sdev->cfg->burst_4 && > > > > + (sconfig->src_maxburst == 4 || sconfig->dst_maxburst == 4)) > > > > + return -EINVAL; > > > > + > > > > > > I still believe this should be dealt with at the framework level. > > > > What do you mean? In the DMA clients? > > No, in the dmaengine framework. > > A driver should register the burst size they support, and > dmaengine_slave_config would reject any invalid burst size based on > that. Maybe you are right, but this does not seem to be very easy: the max burst size is on a u32 value, and, as a bit map (256Mb) is forbidden, the DMA drivers should declare a list of (min, max) authorized values. Well, I will not start such a development for just testing if 4 is a good burst size when calling the sun6i DMA driver... -- Ken ar c'hentañ | ** Breizh ha Linux atav! ** Jef | http://moinejf.free.fr/ -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html