drm/vc4: Fix bitwise OR versus ternary operator in vc4_plane_mode_set
authorNathan Chancellor <natechancellor@gmail.com>
Thu, 10 Sep 2020 17:18:32 +0000 (10:18 -0700)
committerMaxime Ripard <maxime@cerno.tech>
Fri, 11 Sep 2020 09:30:20 +0000 (11:30 +0200)
Clang warns:

drivers/gpu/drm/vc4/vc4_plane.c:901:27: warning: operator '?:' has lower
precedence than '|'; '|' will be evaluated first
[-Wbitwise-conditional-parentheses]
                                fb->format->has_alpha ?
                                ~~~~~~~~~~~~~~~~~~~~~ ^
drivers/gpu/drm/vc4/vc4_plane.c:901:27: note: place parentheses around
the '|' expression to silence this warning
                                fb->format->has_alpha ?
                                ~~~~~~~~~~~~~~~~~~~~~ ^
drivers/gpu/drm/vc4/vc4_plane.c:901:27: note: place parentheses around
the '?:' expression to evaluate it first
                                fb->format->has_alpha ?
                                ~~~~~~~~~~~~~~~~~~~~~~^
1 warning generated.

Add the parentheses as that was clearly intended, otherwise
SCALER5_CTL2_ALPHA_PREMULT won't be added to the list.

Fixes: c54619b0bfb3 ("drm/vc4: Add support for the BCM2711 HVS5")
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Link: https://github.com/ClangBuiltLinux/linux/issues/1150
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20200910171831.4112580-1-natechancellor@gmail.com
drivers/gpu/drm/vc4/vc4_plane.c

index 24d7e6d..89543fa 100644 (file)
@@ -898,8 +898,8 @@ static int vc4_plane_mode_set(struct drm_plane *plane,
                vc4_dlist_write(vc4_state,
                                VC4_SET_FIELD(state->alpha >> 4,
                                              SCALER5_CTL2_ALPHA) |
-                               fb->format->has_alpha ?
-                                       SCALER5_CTL2_ALPHA_PREMULT : 0 |
+                               (fb->format->has_alpha ?
+                                       SCALER5_CTL2_ALPHA_PREMULT : 0) |
                                (mix_plane_alpha ?
                                        SCALER5_CTL2_ALPHA_MIX : 0) |
                                VC4_SET_FIELD(fb->format->has_alpha ?