aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i2c
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2015-08-31 08:09:27 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2015-09-08 07:45:53 -0400
commit53edb2c62e1a884f53a74899cc7e9558fd89051a (patch)
treef3352a63e2fdac0666f958c1c25dd5b518734d4c /drivers/gpu/drm/i2c
parentb7c914b3d94e93bd9b442226231b0bba84c9fa2c (diff)
drm/i2c/ch7006: Constify ch7006_tv_norms[] and ch7006_modes[]
drivers/gpu/drm/i2c/ch7006.ko: -.text 5913 +.text 5897 -.rodata 664 +.rodata 7256 -.data 6992 +.data 416 Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i2c')
-rw-r--r--drivers/gpu/drm/i2c/ch7006_mode.c22
-rw-r--r--drivers/gpu/drm/i2c/ch7006_priv.h10
2 files changed, 16 insertions, 16 deletions
diff --git a/drivers/gpu/drm/i2c/ch7006_mode.c b/drivers/gpu/drm/i2c/ch7006_mode.c
index f4dca53f5752..bb5f67f10edb 100644
--- a/drivers/gpu/drm/i2c/ch7006_mode.c
+++ b/drivers/gpu/drm/i2c/ch7006_mode.c
@@ -46,7 +46,7 @@ const char * const ch7006_tv_norm_names[] = {
46 .vtotal = 625, \ 46 .vtotal = 625, \
47 .hvirtual = 810 47 .hvirtual = 810
48 48
49struct ch7006_tv_norm_info ch7006_tv_norms[] = { 49const struct ch7006_tv_norm_info ch7006_tv_norms[] = {
50 [TV_NORM_NTSC_M] = { 50 [TV_NORM_NTSC_M] = {
51 NTSC_LIKE_TIMINGS, 51 NTSC_LIKE_TIMINGS,
52 .black_level = 0.339 * fixed1, 52 .black_level = 0.339 * fixed1,
@@ -142,7 +142,7 @@ struct ch7006_tv_norm_info ch7006_tv_norms[] = {
142 142
143#define PAL_LIKE (1 << TV_NORM_PAL | 1 << TV_NORM_PAL_N | 1 << TV_NORM_PAL_NC) 143#define PAL_LIKE (1 << TV_NORM_PAL | 1 << TV_NORM_PAL_N | 1 << TV_NORM_PAL_NC)
144 144
145struct ch7006_mode ch7006_modes[] = { 145const struct ch7006_mode ch7006_modes[] = {
146 MODE(21000, 512, 384, 840, 500, N, N, 181.797557582, 5_4, 0x6, PAL_LIKE), 146 MODE(21000, 512, 384, 840, 500, N, N, 181.797557582, 5_4, 0x6, PAL_LIKE),
147 MODE(26250, 512, 384, 840, 625, N, N, 145.438046066, 1_1, 0x1, PAL_LIKE), 147 MODE(26250, 512, 384, 840, 625, N, N, 145.438046066, 1_1, 0x1, PAL_LIKE),
148 MODE(20140, 512, 384, 800, 420, N, N, 213.257083791, 5_4, 0x4, NTSC_LIKE), 148 MODE(20140, 512, 384, 800, 420, N, N, 213.257083791, 5_4, 0x4, NTSC_LIKE),
@@ -171,11 +171,11 @@ struct ch7006_mode ch7006_modes[] = {
171 {} 171 {}
172}; 172};
173 173
174struct ch7006_mode *ch7006_lookup_mode(struct drm_encoder *encoder, 174const struct ch7006_mode *ch7006_lookup_mode(struct drm_encoder *encoder,
175 const struct drm_display_mode *drm_mode) 175 const struct drm_display_mode *drm_mode)
176{ 176{
177 struct ch7006_priv *priv = to_ch7006_priv(encoder); 177 struct ch7006_priv *priv = to_ch7006_priv(encoder);
178 struct ch7006_mode *mode; 178 const struct ch7006_mode *mode;
179 179
180 for (mode = ch7006_modes; mode->mode.clock; mode++) { 180 for (mode = ch7006_modes; mode->mode.clock; mode++) {
181 181
@@ -233,8 +233,8 @@ void ch7006_setup_subcarrier(struct drm_encoder *encoder)
233 struct i2c_client *client = drm_i2c_encoder_get_client(encoder); 233 struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
234 struct ch7006_priv *priv = to_ch7006_priv(encoder); 234 struct ch7006_priv *priv = to_ch7006_priv(encoder);
235 struct ch7006_state *state = &priv->state; 235 struct ch7006_state *state = &priv->state;
236 struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm]; 236 const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
237 struct ch7006_mode *mode = priv->mode; 237 const struct ch7006_mode *mode = priv->mode;
238 uint32_t subc_inc; 238 uint32_t subc_inc;
239 239
240 subc_inc = round_fixed((mode->subc_coeff >> 8) 240 subc_inc = round_fixed((mode->subc_coeff >> 8)
@@ -257,7 +257,7 @@ void ch7006_setup_pll(struct drm_encoder *encoder)
257 struct i2c_client *client = drm_i2c_encoder_get_client(encoder); 257 struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
258 struct ch7006_priv *priv = to_ch7006_priv(encoder); 258 struct ch7006_priv *priv = to_ch7006_priv(encoder);
259 uint8_t *regs = priv->state.regs; 259 uint8_t *regs = priv->state.regs;
260 struct ch7006_mode *mode = priv->mode; 260 const struct ch7006_mode *mode = priv->mode;
261 int n, best_n = 0; 261 int n, best_n = 0;
262 int m, best_m = 0; 262 int m, best_m = 0;
263 int freq, best_freq = 0; 263 int freq, best_freq = 0;
@@ -328,9 +328,9 @@ void ch7006_setup_properties(struct drm_encoder *encoder)
328 struct i2c_client *client = drm_i2c_encoder_get_client(encoder); 328 struct i2c_client *client = drm_i2c_encoder_get_client(encoder);
329 struct ch7006_priv *priv = to_ch7006_priv(encoder); 329 struct ch7006_priv *priv = to_ch7006_priv(encoder);
330 struct ch7006_state *state = &priv->state; 330 struct ch7006_state *state = &priv->state;
331 struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm]; 331 const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm];
332 struct ch7006_mode *ch_mode = priv->mode; 332 const struct ch7006_mode *ch_mode = priv->mode;
333 struct drm_display_mode *mode = &ch_mode->mode; 333 const struct drm_display_mode *mode = &ch_mode->mode;
334 uint8_t *regs = state->regs; 334 uint8_t *regs = state->regs;
335 int flicker, contrast, hpos, vpos; 335 int flicker, contrast, hpos, vpos;
336 uint64_t scale, aspect; 336 uint64_t scale, aspect;
diff --git a/drivers/gpu/drm/i2c/ch7006_priv.h b/drivers/gpu/drm/i2c/ch7006_priv.h
index cef6ce7c79d1..dc6414af5d79 100644
--- a/drivers/gpu/drm/i2c/ch7006_priv.h
+++ b/drivers/gpu/drm/i2c/ch7006_priv.h
@@ -78,7 +78,7 @@ struct ch7006_state {
78 78
79struct ch7006_priv { 79struct ch7006_priv {
80 struct ch7006_encoder_params params; 80 struct ch7006_encoder_params params;
81 struct ch7006_mode *mode; 81 const struct ch7006_mode *mode;
82 82
83 struct ch7006_state state; 83 struct ch7006_state state;
84 struct ch7006_state saved_state; 84 struct ch7006_state saved_state;
@@ -107,11 +107,11 @@ extern char *ch7006_tv_norm;
107extern int ch7006_scale; 107extern int ch7006_scale;
108 108
109extern const char * const ch7006_tv_norm_names[]; 109extern const char * const ch7006_tv_norm_names[];
110extern struct ch7006_tv_norm_info ch7006_tv_norms[]; 110extern const struct ch7006_tv_norm_info ch7006_tv_norms[];
111extern struct ch7006_mode ch7006_modes[]; 111extern const struct ch7006_mode ch7006_modes[];
112 112
113struct ch7006_mode *ch7006_lookup_mode(struct drm_encoder *encoder, 113const struct ch7006_mode *ch7006_lookup_mode(struct drm_encoder *encoder,
114 const struct drm_display_mode *drm_mode); 114 const struct drm_display_mode *drm_mode);
115 115
116void ch7006_setup_levels(struct drm_encoder *encoder); 116void ch7006_setup_levels(struct drm_encoder *encoder);
117void ch7006_setup_subcarrier(struct drm_encoder *encoder); 117void ch7006_setup_subcarrier(struct drm_encoder *encoder);