Lines Matching defs:clock
110 /** Derive the pixel clock for the given refclk and divisors for 8xx chips. */
111 static void mrst_lvds_clock(int refclk, struct gma_clock_t *clock)
113 clock->dot = (refclk * clock->m) / (14 * clock->p1);
116 static void mrst_print_pll(struct gma_clock_t *clock)
119 clock->dot, clock->m, clock->m1, clock->m2, clock->n,
120 clock->p1, clock->p2);
127 struct gma_clock_t clock;
132 memset(&clock, 0, sizeof(clock));
134 for (clock.m = limit->m.min; clock.m <= limit->m.max; clock.m++) {
135 for (clock.n = limit->n.min; clock.n <= limit->n.max;
136 clock.n++) {
137 for (clock.p1 = limit->p1.min;
138 clock.p1 <= limit->p1.max; clock.p1++) {
140 clock.p = clock.p1 * limit->p2.p2_slow;
141 target_vco = target * clock.p;
150 actual_freq = (refclk * clock.m) /
151 (clock.n * clock.p);
166 *best_clock = clock;
178 * Returns a set of divisors for the desired target clock with the given refclk,
185 struct gma_clock_t clock;
189 memset(&clock, 0, sizeof(clock));
191 for (clock.m = limit->m.min; clock.m <= limit->m.max; clock.m++) {
192 for (clock.p1 = limit->p1.min; clock.p1 <= limit->p1.max;
193 clock.p1++) {
196 mrst_lvds_clock(refclk, &clock);
198 this_err = abs(clock.dot - target);
200 *best_clock = clock;
368 struct gma_clock_t clock;
503 ok = limit->find_pll(limit, crtc, adjusted_mode->clock,
504 refclk, &clock);
508 clock.p1 = (1L << (clock.p1 - 1));
509 clock.m -= 2;
510 clock.n = (1L << (clock.n - 1));
516 mrst_print_pll(&clock);
519 fp = clock.n << 16 | clock.m;
521 fp = oaktrail_m_converts[(clock.m - MRST_M_MIN)] << 8;
535 adjusted_mode->clock / mode->clock;
546 dpll |= clock.p1 << 16; // dpll |= (1 << (clock.p1 - 1)) << 16;
548 dpll |= (1 << (clock.p1 - 2)) << 17;
660 .clock = mrst_lvds_clock,