Lines Matching defs:rt715

3 // rt715-sdca.c -- rt715 ALSA SoC audio driver
30 #include "rt715-sdca.h"
32 static int rt715_sdca_index_write(struct rt715_sdca_priv *rt715,
35 struct regmap *regmap = rt715->mbq_regmap;
43 dev_err(&rt715->slave->dev,
50 static int rt715_sdca_index_read(struct rt715_sdca_priv *rt715,
53 struct regmap *regmap = rt715->mbq_regmap;
61 dev_err(&rt715->slave->dev,
68 static int rt715_sdca_index_update_bits(struct rt715_sdca_priv *rt715,
74 ret = rt715_sdca_index_read(rt715, nid, reg, &tmp);
80 return rt715_sdca_index_write(rt715, nid, reg, tmp);
137 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
142 if (ucontrol->value.integer.value[i] != rt715->kctl_2ch_orig[i]) {
149 rt715->kctl_2ch_orig[i] = ucontrol->value.integer.value[i];
153 ret = regmap_write(rt715->mbq_regmap, mc->reg + i, gain_val);
168 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
177 if (ucontrol->value.integer.value[i] != rt715->kctl_4ch_orig[i]) {
184 rt715->kctl_4ch_orig[i] = ucontrol->value.integer.value[i];
188 ret = regmap_write(rt715->mbq_regmap, reg_base + i,
204 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
213 if (ucontrol->value.integer.value[i] != rt715->kctl_8ch_orig[i]) {
220 rt715->kctl_8ch_orig[i] = ucontrol->value.integer.value[i];
225 ret = regmap_write(rt715->mbq_regmap, reg, gain_val);
242 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
247 ret = regmap_read(rt715->mbq_regmap, mc->reg + i, &val);
263 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
272 ret = regmap_read(rt715->mbq_regmap, reg_base + i, &val);
288 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
298 ret = regmap_read(rt715->mbq_regmap, reg_base + i, &val_l);
307 ret = regmap_read(rt715->mbq_regmap, reg, &val_r);
352 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
364 if (ucontrol->value.integer.value[i] != rt715->kctl_switch_orig[i]) {
371 rt715->kctl_switch_orig[i * 2] = ucontrol->value.integer.value[i * 2];
378 rt715->kctl_switch_orig[i * 2 + 1] =
515 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
529 rt715_sdca_index_read(rt715, RT715_VENDOR_HDA_CTL,
553 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
575 rt715_sdca_index_read(rt715, RT715_VENDOR_HDA_CTL,
582 rt715_sdca_index_update_bits(rt715, RT715_VENDOR_HDA_CTL,
664 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
668 regmap_write(rt715->regmap,
674 regmap_write(rt715->regmap,
764 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
767 if (!rt715->first_hw_init)
808 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
820 if (!rt715->slave)
828 rt715_sdca_index_write(rt715, RT715_VENDOR_REG, RT715_SDW_INPUT_SEL,
833 rt715_sdca_index_write(rt715, RT715_VENDOR_REG, RT715_SDW_INPUT_SEL,
841 retval = sdw_stream_add_slave(rt715->slave, &stream_config,
901 regmap_write(rt715->regmap,
912 struct rt715_sdca_priv *rt715 = snd_soc_component_get_drvdata(component);
916 if (!rt715->slave)
919 sdw_stream_remove_slave(rt715->slave, sdw_stream);
936 .name = "rt715-aif1",
948 .name = "rt715-aif2",
972 struct rt715_sdca_priv *rt715;
975 rt715 = devm_kzalloc(dev, sizeof(*rt715), GFP_KERNEL);
976 if (!rt715)
979 dev_set_drvdata(dev, rt715);
980 rt715->slave = slave;
981 rt715->regmap = regmap;
982 rt715->mbq_regmap = mbq_regmap;
983 rt715->hw_sdw_ver = slave->id.sdw_version;
985 regcache_cache_only(rt715->regmap, true);
986 regcache_cache_only(rt715->mbq_regmap, true);
992 rt715->hw_init = false;
993 rt715->first_hw_init = false;
1024 struct rt715_sdca_priv *rt715 = dev_get_drvdata(dev);
1027 if (rt715->hw_init)
1030 regcache_cache_only(rt715->regmap, false);
1031 regcache_cache_only(rt715->mbq_regmap, false);
1036 if (!rt715->first_hw_init) {
1040 rt715->first_hw_init = true;
1045 rt715_sdca_index_read(rt715, RT715_VENDOR_REG,
1050 regmap_write(rt715->regmap,
1055 rt715_sdca_index_update_bits(rt715, RT715_VENDOR_REG,
1058 rt715_sdca_index_update_bits(rt715, RT715_VENDOR_REG,
1060 rt715_sdca_index_update_bits(rt715, RT715_VENDOR_REG,
1064 rt715_sdca_index_update_bits(rt715, RT715_VENDOR_REG,
1067 regmap_write(rt715->regmap,
1071 regmap_update_bits(rt715->regmap, RT715_INT_MASK, 0x1, 0x1);
1074 rt715->hw_init = true;
1082 MODULE_DESCRIPTION("ASoC rt715 driver SDW SDCA");