From 92e4a3bf3812b0b0d06c6736fe4d83e1442640ef Mon Sep 17 00:00:00 2001 From: Maxime Ripard Date: Wed, 30 Jul 2014 10:30:21 +0200 Subject: dmaengine: sun6i: Remove switch statement from buswidth convertion routine Since the conversion routine is quite trivial, we don't need this switch, and we can just use a simple calculation. Signed-off-by: Maxime Ripard Signed-off-by: Vinod Koul --- drivers/dma/sun6i-dma.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) (limited to 'drivers/dma') diff --git a/drivers/dma/sun6i-dma.c b/drivers/dma/sun6i-dma.c index c771d90b8ded..609c5d8cb947 100644 --- a/drivers/dma/sun6i-dma.c +++ b/drivers/dma/sun6i-dma.c @@ -248,20 +248,11 @@ static inline int convert_burst(u32 maxburst, u8 *burst) static inline int convert_buswidth(enum dma_slave_buswidth addr_width, u8 *width) { - switch (addr_width) { - case DMA_SLAVE_BUSWIDTH_1_BYTE: - *width = 0; - break; - case DMA_SLAVE_BUSWIDTH_2_BYTES: - *width = 1; - break; - case DMA_SLAVE_BUSWIDTH_4_BYTES: - *width = 2; - break; - default: + if ((addr_width < DMA_SLAVE_BUSWIDTH_1_BYTE) || + (addr_width > DMA_SLAVE_BUSWIDTH_4_BYTES)) return -EINVAL; - } + *width = addr_width >> 1; return 0; } -- cgit v1.2.3