}
 
 void sun4i_tcon_set_mux(struct sun4i_tcon *tcon, int channel,
-                       struct drm_encoder *encoder)
+                       const struct drm_encoder *encoder)
 {
        int ret = -ENOTSUPP;
 
 
 /* platform specific TCON muxing callbacks */
 static int sun5i_a13_tcon_set_mux(struct sun4i_tcon *tcon,
-                                 struct drm_encoder *encoder)
+                                 const struct drm_encoder *encoder)
 {
        u32 val;
 
 }
 
 static int sun6i_tcon_set_mux(struct sun4i_tcon *tcon,
-                             struct drm_encoder *encoder)
+                             const struct drm_encoder *encoder)
 {
        struct sun4i_tcon *tcon0 = sun4i_get_tcon0(encoder->dev);
        u32 shift;
 
        bool    needs_de_be_mux; /* sun6i needs mux to select backend */
 
        /* callback to handle tcon muxing options */
-       int     (*set_mux)(struct sun4i_tcon *, struct drm_encoder *);
+       int     (*set_mux)(struct sun4i_tcon *, const struct drm_encoder *);
 };
 
 struct sun4i_tcon {