On Donnerstag, 12. Oktober 2017 16:18:12 CEST Vinod Koul wrote: > On Sun, Sep 17, 2017 at 04:45:39PM +0200, Stefan Brüns wrote: > > Obviously, the current value for the burst widths are wrong, and if this > > value is retrieved from some other subsystem using dma_get_slave_caps, > > it will wrongly assume burst width of e.g. 3 bytes are supported. > > > > Each bit in the bitmask corresponds to a supported width, but it uses > > an encoding of BIT(<widths>), not BIT(log2<widths>), as it must be able > > to encode a width of 3 bytes. > > > > The corollary is, it is not possible to encode either a width of 32 or > > 64 bytes, as the field has a size of 32 bits, and only a subset of the > > controller capabilities can be exposed. > > well the right way would have been to fix this in the core by extending the > src/dst_addr_widths. I am sending a patch for that. please use that and > update this Thats the reason I sent this as RFC, I never expected this to go mainline as is, but wanted to trigger a discussion. Kind regards, Stefan -- 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