Searched refs:gck (Results 1 - 2 of 2) sorted by relevance

/linux-4.4.14/drivers/clk/at91/
H A Dclk-generated.c43 struct clk_generated *gck = to_clk_generated(hw); clk_generated_enable() local
44 struct at91_pmc *pmc = gck->pmc; clk_generated_enable()
48 __func__, gck->gckdiv, gck->parent_id); clk_generated_enable()
51 pmc_write(pmc, AT91_PMC_PCR, (gck->id & AT91_PMC_PCR_PID_MASK)); clk_generated_enable()
54 pmc_write(pmc, AT91_PMC_PCR, tmp | AT91_PMC_PCR_GCKCSS(gck->parent_id) clk_generated_enable()
56 | AT91_PMC_PCR_GCKDIV(gck->gckdiv) clk_generated_enable()
64 struct clk_generated *gck = to_clk_generated(hw); clk_generated_disable() local
65 struct at91_pmc *pmc = gck->pmc; clk_generated_disable()
69 pmc_write(pmc, AT91_PMC_PCR, (gck->id & AT91_PMC_PCR_PID_MASK)); clk_generated_disable()
77 struct clk_generated *gck = to_clk_generated(hw); clk_generated_is_enabled() local
78 struct at91_pmc *pmc = gck->pmc; clk_generated_is_enabled()
82 pmc_write(pmc, AT91_PMC_PCR, (gck->id & AT91_PMC_PCR_PID_MASK)); clk_generated_is_enabled()
93 struct clk_generated *gck = to_clk_generated(hw); clk_generated_recalc_rate() local
95 return DIV_ROUND_CLOSEST(parent_rate, gck->gckdiv + 1); clk_generated_recalc_rate()
101 struct clk_generated *gck = to_clk_generated(hw); clk_generated_determine_rate() local
120 (gck->range.max && min_rate > gck->range.max)) clk_generated_determine_rate()
157 struct clk_generated *gck = to_clk_generated(hw); clk_generated_set_parent() local
162 gck->parent_id = index; clk_generated_set_parent()
168 struct clk_generated *gck = to_clk_generated(hw); clk_generated_get_parent() local
170 return gck->parent_id; clk_generated_get_parent()
178 struct clk_generated *gck = to_clk_generated(hw); clk_generated_set_rate() local
184 if (gck->range.max && rate > gck->range.max) clk_generated_set_rate()
191 gck->gckdiv = div - 1; clk_generated_set_rate()
210 * @gck: Generated clock to set the startup parameters for.
215 static void clk_generated_startup(struct clk_generated *gck) clk_generated_startup() argument
217 struct at91_pmc *pmc = gck->pmc; clk_generated_startup()
221 pmc_write(pmc, AT91_PMC_PCR, (gck->id & AT91_PMC_PCR_PID_MASK)); clk_generated_startup()
225 gck->parent_id = (tmp & AT91_PMC_PCR_GCKCSS_MASK) clk_generated_startup()
227 gck->gckdiv = (tmp & AT91_PMC_PCR_GCKDIV_MASK) clk_generated_startup()
236 struct clk_generated *gck; at91_clk_register_generated() local
240 gck = kzalloc(sizeof(*gck), GFP_KERNEL); at91_clk_register_generated()
241 if (!gck) at91_clk_register_generated()
250 gck->id = id; at91_clk_register_generated()
251 gck->hw.init = &init; at91_clk_register_generated()
252 gck->pmc = pmc; at91_clk_register_generated()
253 gck->range = *range; at91_clk_register_generated()
255 clk = clk_register(NULL, &gck->hw); at91_clk_register_generated()
257 kfree(gck); at91_clk_register_generated()
259 clk_generated_startup(gck); at91_clk_register_generated()
/linux-4.4.14/drivers/mmc/host/
H A Dsdhci-of-at91.c33 struct clk *gck; member in struct:sdhci_at91_priv
89 priv->gck = devm_clk_get(&pdev->dev, "multclk"); sdhci_at91_probe()
90 if (IS_ERR(priv->gck)) { sdhci_at91_probe()
92 return PTR_ERR(priv->gck); sdhci_at91_probe()
101 * controller. In order to set the rate of gck, we have to get the sdhci_at91_probe()
110 ret = clk_set_rate(priv->gck, gck_rate); sdhci_at91_probe()
112 dev_err(&pdev->dev, "failed to set gck"); sdhci_at91_probe()
116 * We need to check if we have the requested rate for gck because in sdhci_at91_probe()
118 * is the closest one gck can provide. We have to update the value sdhci_at91_probe()
121 real_gck_rate = clk_get_rate(priv->gck); sdhci_at91_probe()
131 dev_info(&pdev->dev, "update clk mul to %u as gck rate is %u Hz\n", sdhci_at91_probe()
136 clk_prepare_enable(priv->gck); sdhci_at91_probe()
154 clk_disable_unprepare(priv->gck); sdhci_at91_probe()
170 clk_disable_unprepare(priv->gck); sdhci_at91_remove()

Completed in 119 milliseconds