Lines Matching refs:hlcdc
11 #include <linux/mfd/atmel-hlcdc.h>
31 struct atmel_hlcdc *hlcdc;
45 struct atmel_hlcdc *hlcdc = atmel->hlcdc;
50 struct clk *new_clk = hlcdc->slow_clk;
69 new_clk = hlcdc->sys_clk;
104 if (new_clk == hlcdc->sys_clk)
107 ret = regmap_update_bits(hlcdc->regmap,
131 ret = regmap_update_bits(hlcdc->regmap, ATMEL_HLCDC_CFG(6),
139 ret = regmap_write(hlcdc->regmap, ATMEL_HLCDC_EN,
144 ret = regmap_read_poll_timeout(hlcdc->regmap, ATMEL_HLCDC_SR,
151 ret = regmap_write(hlcdc->regmap, ATMEL_HLCDC_DIS,
156 ret = regmap_read_poll_timeout(hlcdc->regmap, ATMEL_HLCDC_SR,
190 clk_disable_unprepare(atmel->hlcdc->periph_clk);
204 ret = clk_prepare_enable(atmel->hlcdc->periph_clk);
217 .compatible = "atmel,at91sam9n12-hlcdc",
222 .compatible = "atmel,at91sam9x5-hlcdc",
226 .compatible = "atmel,sama5d2-hlcdc",
229 .compatible = "atmel,sama5d3-hlcdc",
233 .compatible = "atmel,sama5d4-hlcdc",
236 { .compatible = "microchip,sam9x60-hlcdc", },
247 struct atmel_hlcdc *hlcdc;
250 hlcdc = dev_get_drvdata(dev->parent);
257 ret = clk_prepare_enable(hlcdc->periph_clk);
265 atmel->hlcdc = hlcdc;
270 clk_disable_unprepare(hlcdc->periph_clk);
286 clk_disable_unprepare(atmel->hlcdc->periph_clk);
290 { .compatible = "atmel,hlcdc-pwm" },
296 .name = "atmel-hlcdc-pwm",
305 MODULE_ALIAS("platform:atmel-hlcdc-pwm");