These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / gpu / drm / i2c / ch7006_mode.c
index 9b83574..bb5f67f 100644 (file)
@@ -26,7 +26,7 @@
 
 #include "ch7006_priv.h"
 
-char *ch7006_tv_norm_names[] = {
+const char * const ch7006_tv_norm_names[] = {
        [TV_NORM_PAL] = "PAL",
        [TV_NORM_PAL_M] = "PAL-M",
        [TV_NORM_PAL_N] = "PAL-N",
@@ -46,7 +46,7 @@ char *ch7006_tv_norm_names[] = {
                .vtotal = 625,                                  \
                .hvirtual = 810
 
-struct ch7006_tv_norm_info ch7006_tv_norms[] = {
+const struct ch7006_tv_norm_info ch7006_tv_norms[] = {
        [TV_NORM_NTSC_M] = {
                NTSC_LIKE_TIMINGS,
                .black_level = 0.339 * fixed1,
@@ -142,7 +142,7 @@ struct ch7006_tv_norm_info ch7006_tv_norms[] = {
 
 #define PAL_LIKE (1 << TV_NORM_PAL | 1 << TV_NORM_PAL_N | 1 << TV_NORM_PAL_NC)
 
-struct ch7006_mode ch7006_modes[] = {
+const struct ch7006_mode ch7006_modes[] = {
        MODE(21000, 512, 384, 840, 500, N, N, 181.797557582, 5_4, 0x6, PAL_LIKE),
        MODE(26250, 512, 384, 840, 625, N, N, 145.438046066, 1_1, 0x1, PAL_LIKE),
        MODE(20140, 512, 384, 800, 420, N, N, 213.257083791, 5_4, 0x4, NTSC_LIKE),
@@ -171,11 +171,11 @@ struct ch7006_mode ch7006_modes[] = {
        {}
 };
 
-struct ch7006_mode *ch7006_lookup_mode(struct drm_encoder *encoder,
-                                      const struct drm_display_mode *drm_mode)
+const struct ch7006_mode *ch7006_lookup_mode(struct drm_encoder *encoder,
+                                            const struct drm_display_mode *drm_mode)
 {
        struct ch7006_priv *priv = to_ch7006_priv(encoder);
-       struct ch7006_mode *mode;
+       const struct ch7006_mode *mode;
 
        for (mode = ch7006_modes; mode->mode.clock; mode++) {
 
@@ -202,7 +202,7 @@ void ch7006_setup_levels(struct drm_encoder *encoder)
        struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
        struct ch7006_priv *priv = to_ch7006_priv(encoder);
        uint8_t *regs = priv->state.regs;
-       struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
+       const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
        int gain;
        int black_level;
 
@@ -233,8 +233,8 @@ void ch7006_setup_subcarrier(struct drm_encoder *encoder)
        struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
        struct ch7006_priv *priv = to_ch7006_priv(encoder);
        struct ch7006_state *state = &priv->state;
-       struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
-       struct ch7006_mode *mode = priv->mode;
+       const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
+       const struct ch7006_mode *mode = priv->mode;
        uint32_t subc_inc;
 
        subc_inc = round_fixed((mode->subc_coeff >> 8)
@@ -257,7 +257,7 @@ void ch7006_setup_pll(struct drm_encoder *encoder)
        struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
        struct ch7006_priv *priv = to_ch7006_priv(encoder);
        uint8_t *regs = priv->state.regs;
-       struct ch7006_mode *mode = priv->mode;
+       const struct ch7006_mode *mode = priv->mode;
        int n, best_n = 0;
        int m, best_m = 0;
        int freq, best_freq = 0;
@@ -328,9 +328,9 @@ void ch7006_setup_properties(struct drm_encoder *encoder)
        struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
        struct ch7006_priv *priv = to_ch7006_priv(encoder);
        struct ch7006_state *state = &priv->state;
-       struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
-       struct ch7006_mode *ch_mode = priv->mode;
-       struct drm_display_mode *mode = &ch_mode->mode;
+       const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
+       const struct ch7006_mode *ch_mode = priv->mode;
+       const struct drm_display_mode *mode = &ch_mode->mode;
        uint8_t *regs = state->regs;
        int flicker, contrast, hpos, vpos;
        uint64_t scale, aspect;