diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2020-02-26 13:18:38 +0300 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2020-03-02 10:18:13 +0300 |
commit | 88ac039cbed125bd9ed132d27ec9f689c6442748 (patch) | |
tree | 5a69f0271182cb6fee96f223182739a6efd0d4fb /include/linux/dmaengine.h | |
parent | 9065958ee6dd752c7e1bbacbb79fe5f5f2218393 (diff) | |
download | linux-88ac039cbed125bd9ed132d27ec9f689c6442748.tar.xz |
dmaengine: Refactor dmaengine_check_align() to be bit operations only
There is no need to have branch and temporary variable in the function.
Simple convert it to be a set of bit and arithmetic operations.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Link: https://lore.kernel.org/r/20200226101842.29426-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'include/linux/dmaengine.h')
-rw-r--r-- | include/linux/dmaengine.h | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h index 64461fc64e1b..9f3f5582816a 100644 --- a/include/linux/dmaengine.h +++ b/include/linux/dmaengine.h @@ -1155,14 +1155,7 @@ static inline dma_cookie_t dmaengine_submit(struct dma_async_tx_descriptor *desc static inline bool dmaengine_check_align(enum dmaengine_alignment align, size_t off1, size_t off2, size_t len) { - size_t mask; - - if (!align) - return true; - mask = (1 << align) - 1; - if (mask & (off1 | off2 | len)) - return false; - return true; + return !(((1 << align) - 1) & (off1 | off2 | len)); } static inline bool is_dma_copy_aligned(struct dma_device *dev, size_t off1, |