Lines Matching defs:cs42l43
20 #include <linux/mfd/cs42l43.h>
21 #include <linux/mfd/cs42l43-regs.h>
30 #include <sound/cs42l43.h>
39 #include "cs42l43.h"
174 struct cs42l43 *cs42l43 = priv->core;
196 regmap_update_bits(cs42l43->regmap, CS42L43_BLOCK_EN8,
210 regmap_update_bits(cs42l43->regmap, CS42L43_BLOCK_EN8,
302 struct cs42l43 *cs42l43 = priv->core;
303 int provider = !dai->id || !!regmap_test_bits(cs42l43->regmap,
346 struct cs42l43 *cs42l43 = priv->core;
356 regmap_update_bits(cs42l43->regmap, CS42L43_SAMPLE_RATE1,
367 struct cs42l43 *cs42l43 = priv->core;
368 int dsp_mode = !!regmap_test_bits(cs42l43->regmap, CS42L43_ASP_CTRL,
370 int provider = !!regmap_test_bits(cs42l43->regmap, CS42L43_ASP_CLK_CONFIG2,
407 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_CLK_CONFIG1,
411 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_FSYNC_CTRL1,
415 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_FSYNC_CTRL4,
439 regmap_update_bits(cs42l43->regmap, reg,
456 struct cs42l43 *cs42l43 = priv->core;
457 int provider = regmap_test_bits(cs42l43->regmap, CS42L43_ASP_CLK_CONFIG2,
524 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_CTRL,
527 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_DATA_CTRL,
531 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_CLK_CONFIG2,
535 regmap_update_bits(cs42l43->regmap, CS42L43_ASP_FSYNC_CTRL3,
657 .name = "cs42l43-asp",
676 .name = "cs42l43-dp1",
688 .name = "cs42l43-dp2",
700 .name = "cs42l43-dp3",
712 .name = "cs42l43-dp4",
724 .name = "cs42l43-dp5",
736 .name = "cs42l43-dp6",
748 .name = "cs42l43-dp7",
1034 struct cs42l43 *cs42l43 = priv->core;
1038 regmap_update_bits(cs42l43->regmap, CS42L43_INTP_VOLUME_CTRL1,
1040 regmap_update_bits(cs42l43->regmap, CS42L43_INTP_VOLUME_CTRL1,
1048 struct cs42l43 *cs42l43 = priv->core;
1063 ret = regcache_drop_region(cs42l43->regmap, CS42L43_SHUTTER_CONTROL,
1070 ret = regmap_read(cs42l43->regmap, CS42L43_SHUTTER_CONTROL, &val);
1268 struct cs42l43 *cs42l43 = priv->core;
1274 regmap_update_bits(cs42l43->regmap, CS42L43_MUTE_EQ_IN0,
1278 regmap_update_bits(cs42l43->regmap, CS42L43_COEFF_RD_WR0,
1282 regmap_write(cs42l43->regmap, CS42L43_COEFF_DATA_IN0,
1285 regmap_update_bits(cs42l43->regmap, CS42L43_COEFF_RD_WR0,
1290 ret = regmap_read_poll_timeout(cs42l43->regmap, CS42L43_INIT_DONE0,
1296 regmap_update_bits(cs42l43->regmap, CS42L43_MUTE_EQ_IN0,
1321 struct cs42l43 *cs42l43 = priv->core;
1323 lockdep_assert_held(&cs42l43->pll_lock);
1328 if (regmap_test_bits(cs42l43->regmap, CS42L43_CTRL_REG, CS42L43_PLL_EN_MASK)) {
1355 struct cs42l43 *cs42l43 = priv->core;
1361 lockdep_assert_held(&cs42l43->pll_lock);
1365 freq = cs42l43->sdw_freq;
1366 else if (!cs42l43->sdw_freq)
1367 cs42l43->sdw_freq = freq;
1392 regmap_update_bits(cs42l43->regmap, CS42L43_PLL_CONTROL,
1396 regmap_write(cs42l43->regmap, CS42L43_FDIV_FRAC, config->div);
1397 regmap_update_bits(cs42l43->regmap, CS42L43_CTRL_REG,
1401 regmap_update_bits(cs42l43->regmap, CS42L43_CAL_RATIO,
1403 regmap_update_bits(cs42l43->regmap, CS42L43_PLL_CONTROL,
1408 regmap_update_bits(cs42l43->regmap, CS42L43_CTRL_REG,
1414 regmap_update_bits(cs42l43->regmap, CS42L43_CTRL_REG,
1416 regmap_update_bits(cs42l43->regmap, CS42L43_PLL_CONTROL,
1424 cs42l43->sdw_pll_active = true;
1433 regmap_multi_reg_write(cs42l43->regmap, enable_seq, ARRAY_SIZE(enable_seq));
1444 struct cs42l43 *cs42l43 = priv->core;
1448 lockdep_assert_held(&cs42l43->pll_lock);
1450 regmap_multi_reg_write(cs42l43->regmap, disable_seq, ARRAY_SIZE(disable_seq));
1451 regmap_update_bits(cs42l43->regmap, CS42L43_CTRL_REG, CS42L43_PLL_EN_MASK, 0);
1452 regmap_update_bits(cs42l43->regmap, CS42L43_PLL_CONTROL,
1455 cs42l43->sdw_pll_active = false;
1465 struct cs42l43 *cs42l43 = priv->core;
1468 mutex_lock(&cs42l43->pll_lock);
1493 mutex_unlock(&cs42l43->pll_lock);
1553 struct cs42l43 *cs42l43 = priv->core;
1573 regmap_update_bits(cs42l43->regmap, CS42L43_BLOCK_EN8,
1599 struct cs42l43 *cs42l43 = priv->core;
1638 ret = regmap_read(cs42l43->regmap, reg, val);
1646 regmap_update_bits(cs42l43->regmap, reg, mute | ramp, mute);
1649 regmap_update_bits(cs42l43->regmap, reg, mute | ramp, *val);
1663 struct cs42l43 *cs42l43 = priv->core;
1681 regmap_update_bits(cs42l43->regmap, CS42L43_BLOCK_EN3,
2117 struct cs42l43 *cs42l43 = priv->core;
2120 mutex_lock(&cs42l43->pll_lock);
2122 mutex_unlock(&cs42l43->pll_lock);
2130 struct cs42l43 *cs42l43 = priv->core;
2132 snd_soc_component_init_regmap(component, cs42l43->regmap);
2160 .name = "cs42l43-codec",
2286 struct cs42l43 *cs42l43 = dev_get_drvdata(pdev->dev.parent);
2296 priv->core = cs42l43;
2298 priv->dom = irq_find_matching_fwnode(dev_fwnode(cs42l43->dev), DOMAIN_BUS_ANY);
2338 ret = regmap_read(cs42l43->regmap, CS42L43_SHUTTER_CONTROL, &val);
2360 priv->mclk = clk_get_optional(cs42l43->dev, "mclk");
2455 { "cs42l43-codec", },
2462 .name = "cs42l43-codec",