Lines Matching defs:wm8741
3 * wm8741.c -- WM8741 ALSA SoC Audio driver
28 #include "wm8741.h"
179 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
181 if (wm8741->sysclk)
184 wm8741->sysclk_constraints);
194 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
201 if (!wm8741->sysclk) {
208 for (i = 0; i < wm8741->sysclk_constraints->count; i++) {
209 if (wm8741->sysclk_constraints->list[i] == params_rate(params))
213 if (i == wm8741->sysclk_constraints->count) {
215 params_rate(params), wm8741->sysclk);
262 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
268 wm8741->sysclk_constraints = NULL;
271 wm8741->sysclk_constraints = &constraints_11289;
274 wm8741->sysclk_constraints = &constraints_12288;
277 wm8741->sysclk_constraints = &constraints_16384;
280 wm8741->sysclk_constraints = &constraints_16934;
283 wm8741->sysclk_constraints = &constraints_18432;
287 wm8741->sysclk_constraints = &constraints_22579;
290 wm8741->sysclk_constraints = &constraints_24576;
293 wm8741->sysclk_constraints = &constraints_36864;
299 wm8741->sysclk = freq;
394 .name = "wm8741",
417 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
420 switch (wm8741->pdata.diff_mode) {
427 wm8741->pdata.diff_mode << WM8741_DIFF_SHIFT);
448 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
450 switch (wm8741->pdata.diff_mode) {
476 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
479 ret = regulator_bulk_enable(ARRAY_SIZE(wm8741->supplies),
480 wm8741->supplies);
508 regulator_bulk_disable(ARRAY_SIZE(wm8741->supplies), wm8741->supplies);
515 struct wm8741_priv *wm8741 = snd_soc_component_get_drvdata(component);
517 regulator_bulk_disable(ARRAY_SIZE(wm8741->supplies), wm8741->supplies);
535 { .compatible = "wlf,wm8741", },
550 static int wm8741_set_pdata(struct device *dev, struct wm8741_priv *wm8741)
558 wm8741->pdata.diff_mode = diff_mode;
561 memcpy(&wm8741->pdata, pdata, sizeof(wm8741->pdata));
571 struct wm8741_priv *wm8741;
574 wm8741 = devm_kzalloc(&i2c->dev, sizeof(struct wm8741_priv),
576 if (wm8741 == NULL)
579 for (i = 0; i < ARRAY_SIZE(wm8741->supplies); i++)
580 wm8741->supplies[i].supply = wm8741_supply_names[i];
582 ret = devm_regulator_bulk_get(&i2c->dev, ARRAY_SIZE(wm8741->supplies),
583 wm8741->supplies);
589 wm8741->regmap = devm_regmap_init_i2c(i2c, &wm8741_regmap);
590 if (IS_ERR(wm8741->regmap)) {
591 ret = PTR_ERR(wm8741->regmap);
596 ret = wm8741_set_pdata(&i2c->dev, wm8741);
602 i2c_set_clientdata(i2c, wm8741);
611 { "wm8741", 0 },
618 .name = "wm8741",
629 struct wm8741_priv *wm8741;
632 wm8741 = devm_kzalloc(&spi->dev, sizeof(struct wm8741_priv),
634 if (wm8741 == NULL)
637 for (i = 0; i < ARRAY_SIZE(wm8741->supplies); i++)
638 wm8741->supplies[i].supply = wm8741_supply_names[i];
640 ret = devm_regulator_bulk_get(&spi->dev, ARRAY_SIZE(wm8741->supplies),
641 wm8741->supplies);
647 wm8741->regmap = devm_regmap_init_spi(spi, &wm8741_regmap);
648 if (IS_ERR(wm8741->regmap)) {
649 ret = PTR_ERR(wm8741->regmap);
654 ret = wm8741_set_pdata(&spi->dev, wm8741);
660 spi_set_drvdata(spi, wm8741);
669 .name = "wm8741",
688 printk(KERN_ERR "Failed to register wm8741 SPI driver: %d\n",