mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-02-21 23:29:26 -05:00
media: platform: mtk-mdp3: Remove mask parameter from MM_REG_WRITE macro
There are two macros to issue a cmdq write: MM_REG_WRITE_MASK and MM_REG_WRITE, but confusingly, both of them take a mask parameter. The difference is that MM_REG_WRITE additionally checks whether the mask passed in contains the register mask, in which case, the 0xffffffff mask is passed to cmdq_pkt_write_mask(), effectively disregarding the mask and calling cmdq_pkt_write() as an optimization. Move that optimization to the MM_REG_WRITE_MASK macro and make MM_REG_WRITE the variant that doesn't take a mask, directly calling to cmdq_pkt_write(). Change the call sites to MM_REG_WRITE whenever a mask wasn't necessary (ie 0xffffffff or a <register>_MASK was passed as mask) and in other cases to MM_REG_WRITE_MASK. Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
committed by
Mauro Carvalho Chehab
parent
6d9038dc87
commit
7b00fcfdb5
File diff suppressed because it is too large
Load Diff
@@ -10,17 +10,17 @@
|
||||
#include "mtk-mdp3-cmdq.h"
|
||||
|
||||
#define MM_REG_WRITE_MASK(cmd, id, base, ofst, val, mask) \
|
||||
cmdq_pkt_write_mask(&((cmd)->pkt), id, \
|
||||
(base) + (ofst), (val), (mask))
|
||||
|
||||
#define MM_REG_WRITE(cmd, id, base, ofst, val, mask) \
|
||||
do { \
|
||||
typeof(mask) (m) = (mask); \
|
||||
MM_REG_WRITE_MASK(cmd, id, base, ofst, val, \
|
||||
cmdq_pkt_write_mask(&((cmd)->pkt), id, (base) + (ofst), \
|
||||
(val), \
|
||||
(((m) & (ofst##_MASK)) == (ofst##_MASK)) ? \
|
||||
(0xffffffff) : (m)); \
|
||||
} while (0)
|
||||
|
||||
#define MM_REG_WRITE(cmd, id, base, ofst, val) \
|
||||
cmdq_pkt_write(&((cmd)->pkt), id, (base) + (ofst), (val))
|
||||
|
||||
#define MM_REG_WAIT(cmd, evt) \
|
||||
do { \
|
||||
typeof(cmd) (c) = (cmd); \
|
||||
|
||||
Reference in New Issue
Block a user