Lines Matching defs:ad1836
23 #include "ad1836.h"
166 struct ad1836_priv *ad1836 = snd_soc_component_get_drvdata(dai->component);
185 regmap_update_bits(ad1836->regmap, AD1836_DAC_CTRL1,
189 regmap_update_bits(ad1836->regmap, AD1836_ADC_CTRL2,
225 [AD1836] = AD183X_DAI("ad1836", 3, 2),
232 struct ad1836_priv *ad1836 = snd_soc_component_get_drvdata(component);
234 return regmap_update_bits(ad1836->regmap, AD1836_ADC_CTRL2,
240 struct ad1836_priv *ad1836 = snd_soc_component_get_drvdata(component);
242 return regmap_update_bits(ad1836->regmap, AD1836_ADC_CTRL2,
252 struct ad1836_priv *ad1836 = snd_soc_component_get_drvdata(component);
258 num_dacs = ad183x_dais[ad1836->type].playback.channels_max / 2;
259 num_adcs = ad183x_dais[ad1836->type].capture.channels_max / 2;
261 /* default setting for ad1836 */
263 regmap_write(ad1836->regmap, AD1836_DAC_CTRL1, 0x300);
265 regmap_write(ad1836->regmap, AD1836_DAC_CTRL2, 0x0);
267 regmap_write(ad1836->regmap, AD1836_ADC_CTRL1, 0x100);
269 regmap_write(ad1836->regmap, AD1836_ADC_CTRL2, 0x180);
272 regmap_write(ad1836->regmap, AD1836_DAC_L_VOL(i), 0x3FF);
273 regmap_write(ad1836->regmap, AD1836_DAC_R_VOL(i), 0x3FF);
276 if (ad1836->type == AD1836) {
278 regmap_write(ad1836->regmap, AD1836_ADC_CTRL3, 0x3A);
284 regmap_write(ad1836->regmap, AD1836_ADC_CTRL3, 0x00);
315 struct ad1836_priv *ad1836 = snd_soc_component_get_drvdata(component);
317 regmap_update_bits(ad1836->regmap, AD1836_ADC_CTRL2,
366 struct ad1836_priv *ad1836;
369 ad1836 = devm_kzalloc(&spi->dev, sizeof(struct ad1836_priv),
371 if (ad1836 == NULL)
374 ad1836->regmap = devm_regmap_init_spi(spi, &ad1836_regmap_config);
375 if (IS_ERR(ad1836->regmap))
376 return PTR_ERR(ad1836->regmap);
378 ad1836->type = spi_get_device_id(spi)->driver_data;
380 spi_set_drvdata(spi, ad1836);
383 &soc_component_dev_ad1836, &ad183x_dais[ad1836->type], 1);
389 { "ad1836", AD1836 },
399 .name = "ad1836",
407 MODULE_DESCRIPTION("ASoC ad1836 driver");