]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm: meson: mask value when writing bits relaxed
authorJulien Masson <jmasson@baylibre.com>
Mon, 24 Jun 2019 14:47:56 +0000 (16:47 +0200)
committerNeil Armstrong <narmstrong@baylibre.com>
Fri, 9 Aug 2019 09:37:30 +0000 (11:37 +0200)
The value used in the macro writel_bits_relaxed has to be masked since
we don't want change the bits outside the mask.

Signed-off-by: Julien Masson <jmasson@baylibre.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Link: https://patchwork.freedesktop.org/patch/msgid/86y31r82fo.fsf@baylibre.com
drivers/gpu/drm/meson/meson_registers.h

index 057453ce027c622b2e54bee6f064b8785041f113..f8dd1be0131e2d676958cb458c17e2fa32dc4396 100644 (file)
@@ -12,7 +12,7 @@
 #define _REG(reg)      ((reg) << 2)
 
 #define writel_bits_relaxed(mask, val, addr) \
-       writel_relaxed((readl_relaxed(addr) & ~(mask)) | (val), addr)
+       writel_relaxed((readl_relaxed(addr) & ~(mask)) | ((val) & (mask)), addr)
 
 /* vpp2 */
 #define VPP2_DUMMY_DATA 0x1900