Lines Matching refs:cdclk_state

2171 static int intel_compute_min_cdclk(struct intel_cdclk_state *cdclk_state)  in intel_compute_min_cdclk()  argument
2173 struct intel_atomic_state *state = cdclk_state->base.state; in intel_compute_min_cdclk()
2192 if (cdclk_state->min_cdclk[crtc->pipe] == min_cdclk) in intel_compute_min_cdclk()
2195 cdclk_state->min_cdclk[crtc->pipe] = min_cdclk; in intel_compute_min_cdclk()
2197 ret = intel_atomic_lock_global_state(&cdclk_state->base); in intel_compute_min_cdclk()
2202 min_cdclk = cdclk_state->force_min_cdclk; in intel_compute_min_cdclk()
2204 min_cdclk = max(cdclk_state->min_cdclk[pipe], min_cdclk); in intel_compute_min_cdclk()
2228 static int bxt_compute_min_voltage_level(struct intel_cdclk_state *cdclk_state) in bxt_compute_min_voltage_level() argument
2230 struct intel_atomic_state *state = cdclk_state->base.state; in bxt_compute_min_voltage_level()
2246 if (cdclk_state->min_voltage_level[crtc->pipe] == min_voltage_level) in bxt_compute_min_voltage_level()
2249 cdclk_state->min_voltage_level[crtc->pipe] = min_voltage_level; in bxt_compute_min_voltage_level()
2251 ret = intel_atomic_lock_global_state(&cdclk_state->base); in bxt_compute_min_voltage_level()
2258 min_voltage_level = max(cdclk_state->min_voltage_level[pipe], in bxt_compute_min_voltage_level()
2264 static int vlv_modeset_calc_cdclk(struct intel_cdclk_state *cdclk_state) in vlv_modeset_calc_cdclk() argument
2266 struct intel_atomic_state *state = cdclk_state->base.state; in vlv_modeset_calc_cdclk()
2270 min_cdclk = intel_compute_min_cdclk(cdclk_state); in vlv_modeset_calc_cdclk()
2276 cdclk_state->logical.cdclk = cdclk; in vlv_modeset_calc_cdclk()
2277 cdclk_state->logical.voltage_level = in vlv_modeset_calc_cdclk()
2280 if (!cdclk_state->active_pipes) { in vlv_modeset_calc_cdclk()
2281 cdclk = vlv_calc_cdclk(dev_priv, cdclk_state->force_min_cdclk); in vlv_modeset_calc_cdclk()
2283 cdclk_state->actual.cdclk = cdclk; in vlv_modeset_calc_cdclk()
2284 cdclk_state->actual.voltage_level = in vlv_modeset_calc_cdclk()
2287 cdclk_state->actual = cdclk_state->logical; in vlv_modeset_calc_cdclk()
2293 static int bdw_modeset_calc_cdclk(struct intel_cdclk_state *cdclk_state) in bdw_modeset_calc_cdclk() argument
2297 min_cdclk = intel_compute_min_cdclk(cdclk_state); in bdw_modeset_calc_cdclk()
2307 cdclk_state->logical.cdclk = cdclk; in bdw_modeset_calc_cdclk()
2308 cdclk_state->logical.voltage_level = in bdw_modeset_calc_cdclk()
2311 if (!cdclk_state->active_pipes) { in bdw_modeset_calc_cdclk()
2312 cdclk = bdw_calc_cdclk(cdclk_state->force_min_cdclk); in bdw_modeset_calc_cdclk()
2314 cdclk_state->actual.cdclk = cdclk; in bdw_modeset_calc_cdclk()
2315 cdclk_state->actual.voltage_level = in bdw_modeset_calc_cdclk()
2318 cdclk_state->actual = cdclk_state->logical; in bdw_modeset_calc_cdclk()
2324 static int skl_dpll0_vco(struct intel_cdclk_state *cdclk_state) in skl_dpll0_vco() argument
2326 struct intel_atomic_state *state = cdclk_state->base.state; in skl_dpll0_vco()
2332 vco = cdclk_state->logical.vco; in skl_dpll0_vco()
2361 static int skl_modeset_calc_cdclk(struct intel_cdclk_state *cdclk_state) in skl_modeset_calc_cdclk() argument
2365 min_cdclk = intel_compute_min_cdclk(cdclk_state); in skl_modeset_calc_cdclk()
2369 vco = skl_dpll0_vco(cdclk_state); in skl_modeset_calc_cdclk()
2377 cdclk_state->logical.vco = vco; in skl_modeset_calc_cdclk()
2378 cdclk_state->logical.cdclk = cdclk; in skl_modeset_calc_cdclk()
2379 cdclk_state->logical.voltage_level = in skl_modeset_calc_cdclk()
2382 if (!cdclk_state->active_pipes) { in skl_modeset_calc_cdclk()
2383 cdclk = skl_calc_cdclk(cdclk_state->force_min_cdclk, vco); in skl_modeset_calc_cdclk()
2385 cdclk_state->actual.vco = vco; in skl_modeset_calc_cdclk()
2386 cdclk_state->actual.cdclk = cdclk; in skl_modeset_calc_cdclk()
2387 cdclk_state->actual.voltage_level = in skl_modeset_calc_cdclk()
2390 cdclk_state->actual = cdclk_state->logical; in skl_modeset_calc_cdclk()
2396 static int bxt_modeset_calc_cdclk(struct intel_cdclk_state *cdclk_state) in bxt_modeset_calc_cdclk() argument
2398 struct intel_atomic_state *state = cdclk_state->base.state; in bxt_modeset_calc_cdclk()
2402 min_cdclk = intel_compute_min_cdclk(cdclk_state); in bxt_modeset_calc_cdclk()
2406 min_voltage_level = bxt_compute_min_voltage_level(cdclk_state); in bxt_modeset_calc_cdclk()
2413 cdclk_state->logical.vco = vco; in bxt_modeset_calc_cdclk()
2414 cdclk_state->logical.cdclk = cdclk; in bxt_modeset_calc_cdclk()
2415 cdclk_state->logical.voltage_level = in bxt_modeset_calc_cdclk()
2419 if (!cdclk_state->active_pipes) { in bxt_modeset_calc_cdclk()
2420 cdclk = bxt_calc_cdclk(dev_priv, cdclk_state->force_min_cdclk); in bxt_modeset_calc_cdclk()
2423 cdclk_state->actual.vco = vco; in bxt_modeset_calc_cdclk()
2424 cdclk_state->actual.cdclk = cdclk; in bxt_modeset_calc_cdclk()
2425 cdclk_state->actual.voltage_level = in bxt_modeset_calc_cdclk()
2428 cdclk_state->actual = cdclk_state->logical; in bxt_modeset_calc_cdclk()
2434 static int fixed_modeset_calc_cdclk(struct intel_cdclk_state *cdclk_state) in fixed_modeset_calc_cdclk() argument
2443 min_cdclk = intel_compute_min_cdclk(cdclk_state); in fixed_modeset_calc_cdclk()
2452 struct intel_cdclk_state *cdclk_state; in intel_cdclk_duplicate_state() local
2454 cdclk_state = kmemdup(obj->state, sizeof(*cdclk_state), GFP_KERNEL); in intel_cdclk_duplicate_state()
2455 if (!cdclk_state) in intel_cdclk_duplicate_state()
2458 cdclk_state->pipe = INVALID_PIPE; in intel_cdclk_duplicate_state()
2460 return &cdclk_state->base; in intel_cdclk_duplicate_state()
2478 struct intel_global_state *cdclk_state; in intel_atomic_get_cdclk_state() local
2480 cdclk_state = intel_atomic_get_global_obj_state(state, &dev_priv->cdclk.obj); in intel_atomic_get_cdclk_state()
2481 if (IS_ERR(cdclk_state)) in intel_atomic_get_cdclk_state()
2482 return ERR_CAST(cdclk_state); in intel_atomic_get_cdclk_state()
2484 return to_intel_cdclk_state(cdclk_state); in intel_atomic_get_cdclk_state()
2489 struct intel_cdclk_state *cdclk_state; in intel_cdclk_init() local
2491 cdclk_state = kzalloc(sizeof(*cdclk_state), GFP_KERNEL); in intel_cdclk_init()
2492 if (!cdclk_state) in intel_cdclk_init()
2496 &cdclk_state->base, &intel_cdclk_funcs); in intel_cdclk_init()