OSDN Git Service

drm/sun4i: Make COEF_RDY conditional
authorMaxime Ripard <maxime.ripard@bootlin.com>
Fri, 18 Jan 2019 14:51:30 +0000 (15:51 +0100)
committerMaxime Ripard <maxime.ripard@bootlin.com>
Fri, 18 Jan 2019 20:12:20 +0000 (21:12 +0100)
The COEF_RDY bit isn't found in all the SoCs featuring some variant of the
frontend.

Add it to our quirks structure.

Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190118145133.21281-21-paul.kocialkowski@bootlin.com
drivers/gpu/drm/sun4i/sun4i_frontend.c
drivers/gpu/drm/sun4i/sun4i_frontend.h

index 7a1095b..86c5033 100644 (file)
@@ -96,10 +96,11 @@ static void sun4i_frontend_scaler_init(struct sun4i_frontend *frontend)
                             sun4i_frontend_vert_coef[i]);
        }
 
-       regmap_write_bits(frontend->regs,
-                         SUN4I_FRONTEND_FRM_CTRL_REG,
-                         SUN4I_FRONTEND_FRM_CTRL_COEF_RDY,
-                         SUN4I_FRONTEND_FRM_CTRL_COEF_RDY);
+       if (frontend->data->has_coef_rdy)
+               regmap_write_bits(frontend->regs,
+                                 SUN4I_FRONTEND_FRM_CTRL_REG,
+                                 SUN4I_FRONTEND_FRM_CTRL_COEF_RDY,
+                                 SUN4I_FRONTEND_FRM_CTRL_COEF_RDY);
 }
 
 int sun4i_frontend_init(struct sun4i_frontend *frontend)
index 01e68bb..e332bc1 100644 (file)
@@ -114,6 +114,7 @@ struct reset_control;
 
 struct sun4i_frontend_data {
        bool    has_coef_access_ctrl;
+       bool    has_coef_rdy;
 };
 
 struct sun4i_frontend {