Lines Matching +full:switching +full:- +full:freq
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
42 #define TARGET_ROOT_PRE_PODF(n) ((((n) - 1) & 0x7) << 16)
46 #define TARGET_ROOT_POST_PODF(n) ((((n) - 1) & 0x3f) << 0)
83 READ4(clk, sc->offset, &val);
102 READ4(clk, sc->offset, &val);
107 WRITE4(clk, sc->offset, val);
123 READ4(clk, sc->offset, &val);
126 WRITE4(clk, sc->offset, val);
133 imx_clk_composite_recalc(struct clknode *clk, uint64_t *freq)
141 READ4(clk, sc->offset, ®);
149 dprintf("parent_freq=%ju, div=%u\n", *freq, div);
150 *freq = *freq / pre_div / post_div;
151 dprintf("Final freq=%ju\n", *freq);
167 diff = (int64_t)ftarget - (int64_t)cur;
216 dprintf("Finding best parent/div for target freq of %ju\n", *fout);
220 best_parent = -1;
225 dprintf("Testing with parent %s (%d) at freq %ju\n",
228 if (!imx_clk_composite_find_best(fparent, *fout, &pre_div, &post_div, sc->flags))
231 diff = abs((int64_t)*fout - (int64_t)cur);
238 dprintf("Best parent so far %s (%d) with best freq at "
248 if (best_parent == -1)
258 dprintf("Switching parent index from %d to %d\n", p_idx,
266 READ4(clk, sc->offset, &val);
298 &clkdef->clkdef);
304 sc->offset = clkdef->offset;
305 sc->flags = clkdef->flags;