Lines Matching refs:clock
223 struct gma_clock_t *clock, bool is_lvds, u32 ddi_select) in cdv_dpll_set_clock_cdv() argument
281 m |= ((clock->m2) << SB_M_DIVIDER_SHIFT); in cdv_dpll_set_clock_cdv()
297 n_vco |= ((clock->n) << SB_N_DIVIDER_SHIFT); in cdv_dpll_set_clock_cdv()
299 if (clock->vco < 2250000) { in cdv_dpll_set_clock_cdv()
302 } else if (clock->vco < 2750000) { in cdv_dpll_set_clock_cdv()
305 } else if (clock->vco < 3300000) { in cdv_dpll_set_clock_cdv()
321 p |= SET_FIELD(clock->p1, SB_P1_DIVIDER); in cdv_dpll_set_clock_cdv()
322 switch (clock->p2) { in cdv_dpll_set_clock_cdv()
336 DRM_ERROR("Bad P2 clock: %d\n", clock->p2); in cdv_dpll_set_clock_cdv()
402 static void cdv_intel_clock(int refclk, struct gma_clock_t *clock) in cdv_intel_clock() argument
404 clock->m = clock->m2 + 2; in cdv_intel_clock()
405 clock->p = clock->p1 * clock->p2; in cdv_intel_clock()
406 clock->vco = (refclk * clock->m) / clock->n; in cdv_intel_clock()
407 clock->dot = clock->vco / clock->p; in cdv_intel_clock()
416 struct gma_clock_t clock; in cdv_intel_find_dp_pll() local
421 clock.p1 = 2; in cdv_intel_find_dp_pll()
422 clock.p2 = 10; in cdv_intel_find_dp_pll()
423 clock.n = 1; in cdv_intel_find_dp_pll()
424 clock.m1 = 0; in cdv_intel_find_dp_pll()
425 clock.m2 = 118; in cdv_intel_find_dp_pll()
427 clock.p1 = 1; in cdv_intel_find_dp_pll()
428 clock.p2 = 10; in cdv_intel_find_dp_pll()
429 clock.n = 1; in cdv_intel_find_dp_pll()
430 clock.m1 = 0; in cdv_intel_find_dp_pll()
431 clock.m2 = 98; in cdv_intel_find_dp_pll()
437 clock.p1 = 2; in cdv_intel_find_dp_pll()
438 clock.p2 = 10; in cdv_intel_find_dp_pll()
439 clock.n = 5; in cdv_intel_find_dp_pll()
440 clock.m1 = 0; in cdv_intel_find_dp_pll()
441 clock.m2 = 160; in cdv_intel_find_dp_pll()
443 clock.p1 = 1; in cdv_intel_find_dp_pll()
444 clock.p2 = 10; in cdv_intel_find_dp_pll()
445 clock.n = 5; in cdv_intel_find_dp_pll()
446 clock.m1 = 0; in cdv_intel_find_dp_pll()
447 clock.m2 = 133; in cdv_intel_find_dp_pll()
455 gma_crtc->clock_funcs->clock(refclk, &clock); in cdv_intel_find_dp_pll()
456 memcpy(best_clock, &clock, sizeof(struct gma_clock_t)); in cdv_intel_find_dp_pll()
590 struct gma_clock_t clock; in cdv_intel_crtc_mode_set() local
665 ok = limit->find_pll(limit, crtc, adjusted_mode->clock, refclk, in cdv_intel_crtc_mode_set()
666 &clock); in cdv_intel_crtc_mode_set()
669 adjusted_mode->clock, clock.dot); in cdv_intel_crtc_mode_set()
739 cdv_dpll_set_clock_cdv(dev, crtc, &clock, is_lvds, ddi_select); in cdv_intel_crtc_mode_set()
758 if (clock.p2 == 7) in cdv_intel_crtc_mode_set()
793 int sdvo_pixel_multiply = adjusted_mode->clock / mode->clock; in cdv_intel_crtc_mode_set()
840 static void i8xx_clock(int refclk, struct gma_clock_t *clock) in i8xx_clock() argument
842 clock->m = 5 * (clock->m1 + 2) + (clock->m2 + 2); in i8xx_clock()
843 clock->p = clock->p1 * clock->p2; in i8xx_clock()
844 clock->vco = refclk * clock->m / (clock->n + 2); in i8xx_clock()
845 clock->dot = clock->vco / clock->p; in i8xx_clock()
858 struct gma_clock_t clock; in cdv_intel_crtc_clock_get() local
881 clock.m1 = (fp & FP_M1_DIV_MASK) >> FP_M1_DIV_SHIFT; in cdv_intel_crtc_clock_get()
882 clock.m2 = (fp & FP_M2_DIV_MASK) >> FP_M2_DIV_SHIFT; in cdv_intel_crtc_clock_get()
883 clock.n = (fp & FP_N_DIV_MASK) >> FP_N_DIV_SHIFT; in cdv_intel_crtc_clock_get()
886 clock.p1 = in cdv_intel_crtc_clock_get()
890 if (clock.p1 == 0) { in cdv_intel_crtc_clock_get()
891 clock.p1 = 4; in cdv_intel_crtc_clock_get()
894 clock.p2 = 14; in cdv_intel_crtc_clock_get()
899 i8xx_clock(66000, &clock); in cdv_intel_crtc_clock_get()
901 i8xx_clock(48000, &clock); in cdv_intel_crtc_clock_get()
904 clock.p1 = 2; in cdv_intel_crtc_clock_get()
906 clock.p1 = in cdv_intel_crtc_clock_get()
912 clock.p2 = 4; in cdv_intel_crtc_clock_get()
914 clock.p2 = 2; in cdv_intel_crtc_clock_get()
916 i8xx_clock(48000, &clock); in cdv_intel_crtc_clock_get()
924 return clock.dot; in cdv_intel_crtc_clock_get()
959 mode->clock = cdv_intel_crtc_clock_get(dev, crtc); in cdv_intel_crtc_mode_get()
993 .clock = cdv_intel_clock,