Lines Matching defs:ep93xx_pwm
36 struct ep93xx_pwm {
41 static inline struct ep93xx_pwm *to_ep93xx_pwm(struct pwm_chip *chip)
64 struct ep93xx_pwm *ep93xx_pwm = to_ep93xx_pwm(chip);
66 void __iomem *base = ep93xx_pwm->base;
74 writew(0x0, ep93xx_pwm->base + EP93XX_PWMx_ENABLE);
75 clk_disable_unprepare(ep93xx_pwm->clk);
83 ret = clk_prepare_enable(ep93xx_pwm->clk);
88 writew(0x1, ep93xx_pwm->base + EP93XX_PWMx_INVERT);
90 writew(0x0, ep93xx_pwm->base + EP93XX_PWMx_INVERT);
92 clk_disable_unprepare(ep93xx_pwm->clk);
97 writew(0x0, ep93xx_pwm->base + EP93XX_PWMx_ENABLE);
98 clk_disable_unprepare(ep93xx_pwm->clk);
109 ret = clk_prepare_enable(ep93xx_pwm->clk);
114 c = clk_get_rate(ep93xx_pwm->clk);
141 clk_disable_unprepare(ep93xx_pwm->clk);
147 ret = clk_prepare_enable(ep93xx_pwm->clk);
151 writew(0x1, ep93xx_pwm->base + EP93XX_PWMx_ENABLE);
166 struct ep93xx_pwm *ep93xx_pwm;
169 chip = devm_pwmchip_alloc(&pdev->dev, 1, sizeof(*ep93xx_pwm));
172 ep93xx_pwm = to_ep93xx_pwm(chip);
174 ep93xx_pwm->base = devm_platform_ioremap_resource(pdev, 0);
175 if (IS_ERR(ep93xx_pwm->base))
176 return PTR_ERR(ep93xx_pwm->base);
178 ep93xx_pwm->clk = devm_clk_get(&pdev->dev, "pwm_clk");
179 if (IS_ERR(ep93xx_pwm->clk))
180 return PTR_ERR(ep93xx_pwm->clk);