On Tue, Oct 17, 2017 at 04:05:38PM +0800, Huacai Chen wrote: > Make dma_get_cache_alignment() to accept a 'dev' argument. As a result, > it can return different alignments due to different devices' I/O cache > coherency. > > Currently, ARM/ARM64 and MIPS support coherent & noncoherent devices > co-exist. This may be extended in the future, so add a new function > pointer (i.e, get_cache_alignment) in 'struct dma_map_ops' as a generic > solution. Hi Huacai. > diff --git a/drivers/tty/serial/mpsc.c b/drivers/tty/serial/mpsc.c > index 67ffecc..c708457 100644 > --- a/drivers/tty/serial/mpsc.c > +++ b/drivers/tty/serial/mpsc.c > @@ -81,19 +81,19 @@ > * Number of Tx & Rx descriptors must be powers of 2. > */ > #define MPSC_RXR_ENTRIES 32 > -#define MPSC_RXRE_SIZE dma_get_cache_alignment() > +#define MPSC_RXRE_SIZE dma_get_cache_alignment(dma_dev) I would much prefer that you add a parameter to the macro to avoid forcing a non-flexible and non-obvious variable definition wherever it is used. What I mean is something like: #define MPSC_RXRE_SIZE(d) dma_get_cache_alignment(d) Similarly for all of the other macros and where they're used. Thanks, Mark --