Lines Matching refs:dac
3 * Pistachio internal dac driver
82 static void pistachio_internal_dac_pwr_off(struct pistachio_internal_dac *dac)
84 regmap_update_bits(dac->regmap, PISTACHIO_INTERNAL_DAC_CTRL,
88 pistachio_internal_dac_reg_writel(dac->regmap, 0,
92 static void pistachio_internal_dac_pwr_on(struct pistachio_internal_dac *dac)
94 regmap_update_bits(dac->regmap, PISTACHIO_INTERNAL_DAC_SRST,
98 regmap_update_bits(dac->regmap, PISTACHIO_INTERNAL_DAC_SRST,
101 pistachio_internal_dac_reg_writel(dac->regmap,
105 regmap_update_bits(dac->regmap, PISTACHIO_INTERNAL_DAC_CTRL,
124 struct pistachio_internal_dac *dac = snd_soc_component_get_drvdata(component);
126 snd_soc_component_init_regmap(component, dac->regmap);
146 struct pistachio_internal_dac *dac;
151 dac = devm_kzalloc(dev, sizeof(*dac), GFP_KERNEL);
153 if (!dac)
156 platform_set_drvdata(pdev, dac);
158 dac->regmap = syscon_regmap_lookup_by_phandle(pdev->dev.of_node,
160 if (IS_ERR(dac->regmap))
161 return PTR_ERR(dac->regmap);
163 dac->supply = devm_regulator_get(dev, "VDD");
164 if (IS_ERR(dac->supply)) {
165 ret = PTR_ERR(dac->supply);
171 ret = regulator_enable(dac->supply);
177 voltage = regulator_get_voltage(dac->supply);
192 regmap_update_bits(dac->regmap, PISTACHIO_INTERNAL_DAC_CTRL,
195 pistachio_internal_dac_pwr_off(dac);
196 pistachio_internal_dac_pwr_on(dac);
215 pistachio_internal_dac_pwr_off(dac);
217 regulator_disable(dac->supply);
224 struct pistachio_internal_dac *dac = dev_get_drvdata(&pdev->dev);
227 pistachio_internal_dac_pwr_off(dac);
228 regulator_disable(dac->supply);
236 struct pistachio_internal_dac *dac = dev_get_drvdata(dev);
239 ret = regulator_enable(dac->supply);
245 pistachio_internal_dac_pwr_on(dac);
252 struct pistachio_internal_dac *dac = dev_get_drvdata(dev);
254 pistachio_internal_dac_pwr_off(dac);
256 regulator_disable(dac->supply);
268 { .compatible = "img,pistachio-internal-dac" },
275 .name = "img-pistachio-internal-dac",