Lines Matching defs:cs47l15

39 #define DRV_NAME "cs47l15-codec"
41 struct cs47l15 {
73 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
74 struct madera_priv *priv = &cs47l15->core;
88 ret = madera_set_adsp_clk(&cs47l15->core, w->shift, freq);
111 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
113 ucontrol->value.integer.value[0] = !!cs47l15->in1_lp_mode;
123 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
125 if (!!ucontrol->value.integer.value[0] == cs47l15->in1_lp_mode)
139 cs47l15->in1_lp_mode = false;
152 cs47l15->in1_lp_mode = true;
1129 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
1133 return madera_set_fll_refclk(&cs47l15->fll[0], source, fref,
1136 return madera_set_fll_ao_refclk(&cs47l15->fll[1], source, fref,
1139 return madera_set_fll_syncclk(&cs47l15->fll[0], source, fref,
1148 .name = "cs47l15-aif1",
1170 .name = "cs47l15-aif2",
1192 .name = "cs47l15-aif3",
1214 .name = "cs47l15-cpu-trace",
1225 .name = "cs47l15-dsp-trace",
1240 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
1241 struct madera_priv *priv = &cs47l15->core;
1245 if (strcmp(asoc_rtd_to_codec(rtd, 0)->name, "cs47l15-dsp-trace") == 0) {
1259 struct cs47l15 *cs47l15 = data;
1260 struct madera_priv *priv = &cs47l15->core;
1279 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
1280 struct madera *madera = cs47l15->core.madera;
1307 wm_adsp2_component_probe(&cs47l15->core.adsp[0], component);
1314 struct cs47l15 *cs47l15 = snd_soc_component_get_drvdata(component);
1315 struct madera *madera = cs47l15->core.madera;
1321 wm_adsp2_component_remove(&cs47l15->core.adsp[0], component);
1365 struct cs47l15 *cs47l15;
1376 cs47l15 = devm_kzalloc(&pdev->dev, sizeof(struct cs47l15),
1378 if (!cs47l15)
1381 platform_set_drvdata(pdev, cs47l15);
1383 cs47l15->core.madera = madera;
1384 cs47l15->core.dev = &pdev->dev;
1385 cs47l15->core.num_inputs = 4;
1387 ret = madera_core_init(&cs47l15->core);
1391 ret = madera_init_overheat(&cs47l15->core);
1397 cs47l15);
1407 cs47l15->core.adsp[0].part = "cs47l15";
1408 cs47l15->core.adsp[0].num = 1;
1409 cs47l15->core.adsp[0].type = WMFW_ADSP2;
1410 cs47l15->core.adsp[0].rev = 2;
1411 cs47l15->core.adsp[0].dev = madera->dev;
1412 cs47l15->core.adsp[0].regmap = madera->regmap_32bit;
1414 cs47l15->core.adsp[0].base = MADERA_DSP1_CONFIG_1;
1415 cs47l15->core.adsp[0].mem = cs47l15_dsp1_regions;
1416 cs47l15->core.adsp[0].num_mems = ARRAY_SIZE(cs47l15_dsp1_regions);
1418 cs47l15->core.adsp[0].lock_regions =
1421 ret = wm_adsp2_init(&cs47l15->core.adsp[0]);
1425 ret = madera_init_bus_error_irq(&cs47l15->core, 0, wm_adsp2_bus_error);
1430 &cs47l15->fll[0]);
1432 &cs47l15->fll[1]);
1435 madera_init_dai(&cs47l15->core, i);
1458 madera_free_bus_error_irq(&cs47l15->core, 0);
1460 wm_adsp2_remove(&cs47l15->core.adsp[0]);
1463 madera_free_irq(madera, MADERA_IRQ_DSP_IRQ1, cs47l15);
1465 madera_free_overheat(&cs47l15->core);
1467 madera_core_free(&cs47l15->core);
1474 struct cs47l15 *cs47l15 = platform_get_drvdata(pdev);
1478 madera_free_bus_error_irq(&cs47l15->core, 0);
1480 wm_adsp2_remove(&cs47l15->core.adsp[0]);
1482 madera_set_irq_wake(cs47l15->core.madera, MADERA_IRQ_DSP_IRQ1, 0);
1483 madera_free_irq(cs47l15->core.madera, MADERA_IRQ_DSP_IRQ1, cs47l15);
1484 madera_free_overheat(&cs47l15->core);
1485 madera_core_free(&cs47l15->core);
1492 .name = "cs47l15-codec",
1505 MODULE_ALIAS("platform:cs47l15-codec");