Lines Matching +full:high +full:- +full:vt

31 	[TV_NORM_PAL_M] = "PAL-M",
32 [TV_NORM_PAL_N] = "PAL-N",
33 [TV_NORM_PAL_NC] = "PAL-Nc",
34 [TV_NORM_PAL_60] = "PAL-60",
35 [TV_NORM_NTSC_M] = "NTSC-M",
36 [TV_NORM_NTSC_J] = "NTSC-J",
105 #define __MODE(f, hd, vd, ht, vt, hsynp, vsynp, \ argument
120 .vtotal = vt, \
134 #define MODE(f, hd, vd, ht, vt, hsynp, vsynp, \ argument
136 __MODE(f, hd, vd, ht, vt, hsynp, vsynp, subc, scale, \
179 for (mode = ch7006_modes; mode->mode.clock; mode++) { in ch7006_lookup_mode()
181 if (~mode->valid_norms & 1<<priv->norm) in ch7006_lookup_mode()
184 if (mode->mode.hdisplay != drm_mode->hdisplay || in ch7006_lookup_mode()
185 mode->mode.vdisplay != drm_mode->vdisplay || in ch7006_lookup_mode()
186 mode->mode.vtotal != drm_mode->vtotal || in ch7006_lookup_mode()
187 mode->mode.htotal != drm_mode->htotal || in ch7006_lookup_mode()
188 mode->mode.clock != drm_mode->clock) in ch7006_lookup_mode()
203 uint8_t *regs = priv->state.regs; in ch7006_setup_levels()
204 const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm]; in ch7006_setup_levels()
209 * high enough. */ in ch7006_setup_levels()
210 if (norm->black_level < 339*fixed1/1000) { in ch7006_setup_levels()
220 black_level = round_fixed(norm->black_level*26625)/gain; in ch7006_setup_levels()
223 black_level = interpolate(90, black_level, 208, priv->brightness); in ch7006_setup_levels()
234 struct ch7006_state *state = &priv->state; in ch7006_setup_subcarrier()
235 const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm]; in ch7006_setup_subcarrier()
236 const struct ch7006_mode *mode = priv->mode; in ch7006_setup_subcarrier()
239 subc_inc = round_fixed((mode->subc_coeff >> 8) in ch7006_setup_subcarrier()
240 * (norm->subc_freq >> 24)); in ch7006_setup_subcarrier()
258 uint8_t *regs = priv->state.regs; in ch7006_setup_pll()
259 const struct ch7006_mode *mode = priv->mode; in ch7006_setup_pll()
268 if (abs(freq - mode->mode.clock) < in ch7006_setup_pll()
269 abs(best_freq - mode->mode.clock)) { in ch7006_setup_pll()
295 uint8_t *power = &priv->state.regs[CH7006_POWER]; in ch7006_setup_power_state()
298 subconnector = priv->select_subconnector ? priv->select_subconnector : in ch7006_setup_power_state()
299 priv->subconnector; in ch7006_setup_power_state()
303 if (priv->last_dpms == DRM_MODE_DPMS_ON) { in ch7006_setup_power_state()
318 if (priv->chip_version >= 0x20) in ch7006_setup_power_state()
329 struct ch7006_state *state = &priv->state; in ch7006_setup_properties()
330 const struct ch7006_tv_norm_info *norm = &ch7006_tv_norms[priv->norm]; in ch7006_setup_properties()
331 const struct ch7006_mode *ch_mode = priv->mode; in ch7006_setup_properties()
332 const struct drm_display_mode *mode = &ch_mode->mode; in ch7006_setup_properties()
333 uint8_t *regs = state->regs; in ch7006_setup_properties()
337 flicker = interpolate(0, 2, 3, priv->flicker); in ch7006_setup_properties()
342 contrast = interpolate(0, 5, 7, priv->contrast); in ch7006_setup_properties()
345 scale = norm->vtotal*fixed1; in ch7006_setup_properties()
346 do_div(scale, mode->vtotal); in ch7006_setup_properties()
348 aspect = ch_mode->enc_hdisp*fixed1; in ch7006_setup_properties()
349 do_div(aspect, ch_mode->enc_vdisp); in ch7006_setup_properties()
351 hpos = round_fixed((norm->hvirtual * aspect - mode->hdisplay * scale) in ch7006_setup_properties()
352 * priv->hmargin * mode->vtotal) / norm->vtotal / 100 / 4; in ch7006_setup_properties()
357 vpos = max(0, norm->vdisplay - round_fixed(mode->vdisplay*scale) in ch7006_setup_properties()
358 + norm->voffset) * priv->vmargin / 100 / 2; in ch7006_setup_properties()
467 state->regs[CH7006_FFILTER] = (state->regs[CH7006_FFILTER] & 0xf0) | in ch7006_state_save()
468 (state->regs[CH7006_FFILTER] & 0x0c) >> 2 | in ch7006_state_save()
469 (state->regs[CH7006_FFILTER] & 0x03) << 2; in ch7006_state_save()