Lines Matching refs:pll_clock
20 struct pll_clock { struct
26 #define to_pll_clock(_hw) container_of(_hw, struct pll_clock, hw) argument
31 struct pll_clock *pll_clock = to_pll_clock(hw); in pll_recalc_rate() local
32 int mul = 1 << (readb(pll_clock->pllcr) & 3); in pll_recalc_rate()
65 struct pll_clock *pll_clock = to_pll_clock(hw); in pll_set_rate() local
69 val = readb(pll_clock->sckcr); in pll_set_rate()
71 writeb(val, pll_clock->sckcr); in pll_set_rate()
72 val = readb(pll_clock->pllcr); in pll_set_rate()
75 writeb(val, pll_clock->pllcr); in pll_set_rate()
91 struct pll_clock *pll_clock; in h8s2678_pll_clk_setup() local
102 pll_clock = kzalloc(sizeof(*pll_clock), GFP_KERNEL); in h8s2678_pll_clk_setup()
103 if (!pll_clock) in h8s2678_pll_clk_setup()
106 pll_clock->sckcr = of_iomap(node, 0); in h8s2678_pll_clk_setup()
107 if (pll_clock->sckcr == NULL) { in h8s2678_pll_clk_setup()
112 pll_clock->pllcr = of_iomap(node, 1); in h8s2678_pll_clk_setup()
113 if (pll_clock->pllcr == NULL) { in h8s2678_pll_clk_setup()
124 pll_clock->hw.init = &init; in h8s2678_pll_clk_setup()
126 ret = clk_hw_register(NULL, &pll_clock->hw); in h8s2678_pll_clk_setup()
133 of_clk_add_hw_provider(node, of_clk_hw_simple_get, &pll_clock->hw); in h8s2678_pll_clk_setup()
137 iounmap(pll_clock->pllcr); in h8s2678_pll_clk_setup()
139 iounmap(pll_clock->sckcr); in h8s2678_pll_clk_setup()
141 kfree(pll_clock); in h8s2678_pll_clk_setup()