/linux-6.6.21/sound/soc/mediatek/common/ |
D | mtk-afe-fe-dai.c | 41 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mtk_afe_fe_startup() local 44 struct mtk_base_afe_memif *memif = &afe->memif[memif_num]; in mtk_afe_fe_startup() 45 const struct snd_pcm_hardware *mtk_afe_hardware = afe->mtk_afe_hardware; in mtk_afe_fe_startup() 53 mtk_regmap_update_bits(afe->regmap, memif->data->agent_disable_reg, in mtk_afe_fe_startup() 71 dev_err(afe->dev, "hw_constraint_minmax failed\n"); in mtk_afe_fe_startup() 79 dev_err(afe->dev, "snd_pcm_hw_constraint_integer failed\n"); in mtk_afe_fe_startup() 83 int irq_id = mtk_dynamic_irq_acquire(afe); in mtk_afe_fe_startup() 85 if (irq_id != afe->irqs_size) { in mtk_afe_fe_startup() 89 dev_err(afe->dev, "%s() error: no more asys irq\n", in mtk_afe_fe_startup() 102 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mtk_afe_fe_shutdown() local [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt8188/ |
D | mt8188-afe-clk.c | 226 static int mt8188_afe_setup_apll_tuner(struct mtk_base_afe *afe, unsigned int id) in mt8188_afe_setup_apll_tuner() argument 233 regmap_update_bits(afe->regmap, in mt8188_afe_setup_apll_tuner() 238 regmap_update_bits(afe->regmap, in mt8188_afe_setup_apll_tuner() 243 regmap_update_bits(afe->regmap, in mt8188_afe_setup_apll_tuner() 251 static int mt8188_afe_enable_tuner_clk(struct mtk_base_afe *afe, in mt8188_afe_enable_tuner_clk() argument 254 struct mt8188_afe_private *afe_priv = afe->platform_priv; in mt8188_afe_enable_tuner_clk() 258 mt8188_afe_enable_clk(afe, afe_priv->clk[MT8188_CLK_AUD_APLL]); in mt8188_afe_enable_tuner_clk() 259 mt8188_afe_enable_clk(afe, afe_priv->clk[MT8188_CLK_AUD_APLL1_TUNER]); in mt8188_afe_enable_tuner_clk() 262 mt8188_afe_enable_clk(afe, afe_priv->clk[MT8188_CLK_AUD_APLL2]); in mt8188_afe_enable_tuner_clk() 263 mt8188_afe_enable_clk(afe, afe_priv->clk[MT8188_CLK_AUD_APLL2_TUNER]); in mt8188_afe_enable_tuner_clk() [all …]
|
D | mt8188-dai-adda.c | 59 static unsigned int afe_adda_dl_rate_transform(struct mtk_base_afe *afe, in afe_adda_dl_rate_transform() argument 86 dev_info(afe->dev, "%s(), rate %u invalid, use 48kHz!!!\n", in afe_adda_dl_rate_transform() 92 static unsigned int afe_adda_ul_rate_transform(struct mtk_base_afe *afe, in afe_adda_ul_rate_transform() argument 109 dev_info(afe->dev, "%s(), rate %u invalid, use 48kHz!!!\n", in afe_adda_ul_rate_transform() 115 static int mt8188_adda_mtkaif_init(struct mtk_base_afe *afe) in mt8188_adda_mtkaif_init() argument 117 struct mt8188_afe_private *afe_priv = afe->platform_priv; in mt8188_adda_mtkaif_init() 125 regmap_set_bits(afe->regmap, AFE_ADDA_MTKAIF_CFG0, in mt8188_adda_mtkaif_init() 128 regmap_set_bits(afe->regmap, AFE_AUD_PAD_TOP, RG_RX_PROTOCOL2); in mt8188_adda_mtkaif_init() 131 dev_info(afe->dev, "%s(), calibration fail\n", __func__); in mt8188_adda_mtkaif_init() 153 regmap_update_bits(afe->regmap, AFE_ADDA_MTKAIF_RX_CFG2, mask, val); in mt8188_adda_mtkaif_init() [all …]
|
/linux-6.6.21/drivers/media/i2c/adv748x/ |
D | adv748x-afe.c | 55 static int adv748x_afe_status(struct adv748x_afe *afe, u32 *signal, in adv748x_afe_status() argument 58 struct adv748x_state *state = adv748x_afe_to_state(afe); in adv748x_afe_status() 112 static void adv748x_afe_fill_format(struct adv748x_afe *afe, in adv748x_afe_fill_format() argument 122 fmt->height = afe->curr_norm & V4L2_STD_525_60 ? 480 : 576; in adv748x_afe_fill_format() 157 int adv748x_afe_s_input(struct adv748x_afe *afe, unsigned int input) in adv748x_afe_s_input() argument 159 struct adv748x_state *state = adv748x_afe_to_state(afe); in adv748x_afe_s_input() 167 struct adv748x_afe *afe = adv748x_sd_to_afe(sd); in adv748x_afe_g_pixelaspect() local 169 if (afe->curr_norm & V4L2_STD_525_60) { in adv748x_afe_g_pixelaspect() 186 struct adv748x_afe *afe = adv748x_sd_to_afe(sd); in adv748x_afe_g_std() local 188 *norm = afe->curr_norm; in adv748x_afe_g_std() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt8195/ |
D | mt8195-afe-clk.c | 217 static int mt8195_afe_setup_apll_tuner(struct mtk_base_afe *afe, in mt8195_afe_setup_apll_tuner() argument 225 regmap_update_bits(afe->regmap, cfg->apll_div_reg, in mt8195_afe_setup_apll_tuner() 229 regmap_update_bits(afe->regmap, cfg->ref_ck_sel_reg, in mt8195_afe_setup_apll_tuner() 233 regmap_update_bits(afe->regmap, cfg->upper_bound_reg, in mt8195_afe_setup_apll_tuner() 240 static int mt8195_afe_enable_tuner_clk(struct mtk_base_afe *afe, in mt8195_afe_enable_tuner_clk() argument 243 struct mt8195_afe_private *afe_priv = afe->platform_priv; in mt8195_afe_enable_tuner_clk() 247 mt8195_afe_enable_clk(afe, afe_priv->clk[MT8195_CLK_AUD_APLL]); in mt8195_afe_enable_tuner_clk() 248 mt8195_afe_enable_clk(afe, afe_priv->clk[MT8195_CLK_AUD_APLL1_TUNER]); in mt8195_afe_enable_tuner_clk() 251 mt8195_afe_enable_clk(afe, afe_priv->clk[MT8195_CLK_AUD_APLL2]); in mt8195_afe_enable_tuner_clk() 252 mt8195_afe_enable_clk(afe, afe_priv->clk[MT8195_CLK_AUD_APLL2_TUNER]); in mt8195_afe_enable_tuner_clk() [all …]
|
D | mt8195-dai-adda.c | 66 static unsigned int afe_adda_dl_rate_transform(struct mtk_base_afe *afe, in afe_adda_dl_rate_transform() argument 93 dev_info(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in afe_adda_dl_rate_transform() 99 static unsigned int afe_adda_ul_rate_transform(struct mtk_base_afe *afe, in afe_adda_ul_rate_transform() argument 116 dev_info(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in afe_adda_ul_rate_transform() 122 static int mt8195_adda_mtkaif_init(struct mtk_base_afe *afe) in mt8195_adda_mtkaif_init() argument 124 struct mt8195_afe_private *afe_priv = afe->platform_priv; in mt8195_adda_mtkaif_init() 135 regmap_update_bits(afe->regmap, AFE_ADDA_MTKAIF_CFG0, mask, val); in mt8195_adda_mtkaif_init() 136 regmap_update_bits(afe->regmap, AFE_ADDA6_MTKAIF_CFG0, mask, val); in mt8195_adda_mtkaif_init() 140 regmap_update_bits(afe->regmap, AFE_AUD_PAD_TOP, mask, val); in mt8195_adda_mtkaif_init() 143 dev_info(afe->dev, "%s(), calibration fail\n", __func__); in mt8195_adda_mtkaif_init() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt8186/ |
D | mt8186-afe-clk.c | 73 int mt8186_set_audio_int_bus_parent(struct mtk_base_afe *afe, in mt8186_set_audio_int_bus_parent() argument 76 struct mt8186_afe_private *afe_priv = afe->platform_priv; in mt8186_set_audio_int_bus_parent() 82 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in mt8186_set_audio_int_bus_parent() 91 static int apll1_mux_setting(struct mtk_base_afe *afe, bool enable) in apll1_mux_setting() argument 93 struct mt8186_afe_private *afe_priv = afe->platform_priv; in apll1_mux_setting() 99 dev_err(afe->dev, "%s clk_prepare_enable %s fail %d\n", in apll1_mux_setting() 106 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in apll1_mux_setting() 115 dev_err(afe->dev, "%s clk_prepare_enable %s fail %d\n", in apll1_mux_setting() 122 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in apll1_mux_setting() 131 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in apll1_mux_setting() [all …]
|
D | mt8186-dai-adda.c | 72 static struct mtk_afe_adda_priv *get_adda_priv_by_name(struct mtk_base_afe *afe, in get_adda_priv_by_name() argument 75 struct mt8186_afe_private *afe_priv = afe->platform_priv; in get_adda_priv_by_name() 86 static unsigned int adda_dl_rate_transform(struct mtk_base_afe *afe, in adda_dl_rate_transform() argument 113 dev_dbg(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in adda_dl_rate_transform() 120 static unsigned int adda_ul_rate_transform(struct mtk_base_afe *afe, in adda_ul_rate_transform() argument 137 dev_dbg(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in adda_ul_rate_transform() 208 static int mtk_adda_ul_src_dmic(struct mtk_base_afe *afe, int id) in mtk_adda_ul_src_dmic() argument 222 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() 224 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() 228 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() [all …]
|
D | mt8186-dai-src.c | 99 static unsigned int mtk_get_src_freq_mode(struct mtk_base_afe *afe, int rate) in mtk_get_src_freq_mode() argument 129 dev_err(afe->dev, "%s(), rate %d invalid!!!\n", in mtk_get_src_freq_mode() 171 static int mtk_set_src_1_param(struct mtk_base_afe *afe, int id) in mtk_set_src_1_param() argument 173 struct mt8186_afe_private *afe_priv = afe->platform_priv; in mtk_set_src_1_param() 179 unsigned int out_freq_mode = mtk_get_src_freq_mode(afe, rate_out); in mtk_set_src_1_param() 180 unsigned int in_freq_mode = mtk_get_src_freq_mode(afe, rate_in); in mtk_set_src_1_param() 183 regmap_update_bits(afe->regmap, AFE_GENERAL1_ASRC_2CH_CON3, in mtk_set_src_1_param() 188 regmap_update_bits(afe->regmap, AFE_GENERAL1_ASRC_2CH_CON4, in mtk_set_src_1_param() 192 regmap_write(afe->regmap, AFE_GENERAL1_ASRC_2CH_CON5, 0x3f5986); in mtk_set_src_1_param() 193 regmap_write(afe->regmap, AFE_GENERAL1_ASRC_2CH_CON5, 0x3f5987); in mtk_set_src_1_param() [all …]
|
D | mt8186-dai-i2s.c | 76 static int get_i2s_id_by_name(struct mtk_base_afe *afe, in get_i2s_id_by_name() argument 91 static struct mtk_afe_i2s_priv *get_i2s_priv_by_name(struct mtk_base_afe *afe, in get_i2s_priv_by_name() argument 94 struct mt8186_afe_private *afe_priv = afe->platform_priv; in get_i2s_priv_by_name() 95 int dai_id = get_i2s_id_by_name(afe, name); in get_i2s_priv_by_name() 117 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mt8186_i2s_hd_get() local 120 i2s_priv = get_i2s_priv_by_name(afe, kcontrol->id.name); in mt8186_i2s_hd_get() 130 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mt8186_i2s_hd_set() local 140 dev_dbg(afe->dev, "%s(), kcontrol name %s, hd_en %d\n", in mt8186_i2s_hd_set() 143 i2s_priv = get_i2s_priv_by_name(afe, kcontrol->id.name); in mt8186_i2s_hd_set() 362 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mtk_i2s_en_event() local [all …]
|
D | mt8186-afe-clk.h | 82 int mt8186_set_audio_int_bus_parent(struct mtk_base_afe *afe, int clk_id); 83 int mt8186_init_clock(struct mtk_base_afe *afe); 84 int mt8186_afe_enable_cgs(struct mtk_base_afe *afe); 85 void mt8186_afe_disable_cgs(struct mtk_base_afe *afe); 86 int mt8186_afe_enable_clock(struct mtk_base_afe *afe); 87 void mt8186_afe_disable_clock(struct mtk_base_afe *afe); 88 int mt8186_afe_suspend_clock(struct mtk_base_afe *afe); 89 int mt8186_afe_resume_clock(struct mtk_base_afe *afe); 91 int mt8186_apll1_enable(struct mtk_base_afe *afe); 92 void mt8186_apll1_disable(struct mtk_base_afe *afe); [all …]
|
D | mt8186-dai-tdm.c | 104 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mtk_tdm_en_event() local 105 struct mt8186_afe_private *afe_priv = afe->platform_priv; in mtk_tdm_en_event() 114 mt8186_afe_gpio_request(afe->dev, true, tdm_priv->id, 0); in mtk_tdm_en_event() 117 mt8186_afe_gpio_request(afe->dev, false, tdm_priv->id, 0); in mtk_tdm_en_event() 131 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mtk_tdm_mck_en_event() local 132 struct mt8186_afe_private *afe_priv = afe->platform_priv; in mtk_tdm_mck_en_event() 141 mt8186_mck_enable(afe, tdm_priv->mclk_id, tdm_priv->mclk_rate); in mtk_tdm_mck_en_event() 145 mt8186_mck_disable(afe, tdm_priv->mclk_id); in mtk_tdm_mck_en_event() 203 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mtk_afe_tdm_mclk_connect() local 204 struct mt8186_afe_private *afe_priv = afe->platform_priv; in mtk_afe_tdm_mclk_connect() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt7986/ |
D | mt7986-afe-pcm.c | 111 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(component); in mt7986_memif_fs() local 113 return mt7986_afe_rate_transform(afe->dev, rate); in mt7986_memif_fs() 121 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(component); in mt7986_irq_fs() local 123 return mt7986_afe_rate_transform(afe->dev, rate); in mt7986_irq_fs() 321 static int mt7986_init_clock(struct mtk_base_afe *afe) in mt7986_init_clock() argument 323 struct mt7986_afe_private *afe_priv = afe->platform_priv; in mt7986_init_clock() 326 afe_priv->clks = devm_kcalloc(afe->dev, CLK_NUM, in mt7986_init_clock() 335 ret = devm_clk_bulk_get(afe->dev, afe_priv->num_clks, afe_priv->clks); in mt7986_init_clock() 337 return dev_err_probe(afe->dev, ret, "Failed to get clocks\n"); in mt7986_init_clock() 344 struct mtk_base_afe *afe = dev; in mt7986_afe_irq_handler() local [all …]
|
D | mt7986-dai-etdm.c | 121 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mtk_dai_etdm_startup() local 122 struct mt7986_afe_private *afe_priv = afe->platform_priv; in mtk_dai_etdm_startup() 127 return dev_err_probe(afe->dev, ret, "Failed to enable clocks\n"); in mtk_dai_etdm_startup() 129 regmap_update_bits(afe->regmap, AUDIO_TOP_CON2, CLK_OUT5_PDN_MASK, 0); in mtk_dai_etdm_startup() 130 regmap_update_bits(afe->regmap, AUDIO_TOP_CON2, CLK_IN5_PDN_MASK, 0); in mtk_dai_etdm_startup() 138 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mtk_dai_etdm_shutdown() local 139 struct mt7986_afe_private *afe_priv = afe->platform_priv; in mtk_dai_etdm_shutdown() 141 regmap_update_bits(afe->regmap, AUDIO_TOP_CON2, CLK_OUT5_PDN_MASK, in mtk_dai_etdm_shutdown() 143 regmap_update_bits(afe->regmap, AUDIO_TOP_CON2, CLK_IN5_PDN_MASK, in mtk_dai_etdm_shutdown() 163 static int mtk_dai_etdm_config(struct mtk_base_afe *afe, in mtk_dai_etdm_config() argument [all …]
|
/linux-6.6.21/drivers/iio/health/ |
D | afe4403.c | 141 struct afe4403_data *afe = iio_priv(indio_dev); in afe440x_show_register() local 147 ret = regmap_field_read(afe->fields[afe440x_attr->field], ®_val); in afe440x_show_register() 165 struct afe4403_data *afe = iio_priv(indio_dev); in afe440x_store_register() local 180 ret = regmap_field_write(afe->fields[afe440x_attr->field], val); in afe440x_store_register() 217 static int afe4403_read(struct afe4403_data *afe, unsigned int reg, u32 *val) in afe4403_read() argument 224 ret = spi_write_then_read(afe->spi, tx, 4, NULL, 0); in afe4403_read() 228 ret = spi_write_then_read(afe->spi, ®, 1, rx, sizeof(rx)); in afe4403_read() 236 ret = spi_write_then_read(afe->spi, tx, 4, NULL, 0); in afe4403_read() 247 struct afe4403_data *afe = iio_priv(indio_dev); in afe4403_read_raw() local 256 ret = afe4403_read(afe, reg, val); in afe4403_read_raw() [all …]
|
D | afe4404.c | 172 struct afe4404_data *afe = iio_priv(indio_dev); in afe440x_show_register() local 178 ret = regmap_field_read(afe->fields[afe440x_attr->field], ®_val); in afe440x_show_register() 196 struct afe4404_data *afe = iio_priv(indio_dev); in afe440x_store_register() local 211 ret = regmap_field_write(afe->fields[afe440x_attr->field], val); in afe440x_store_register() 252 struct afe4404_data *afe = iio_priv(indio_dev); in afe4404_read_raw() local 261 ret = regmap_read(afe->regmap, value_reg, val); in afe4404_read_raw() 267 ret = regmap_field_read(afe->fields[offdac_field], val); in afe4404_read_raw() 277 ret = regmap_field_read(afe->fields[led_field], val); in afe4404_read_raw() 298 struct afe4404_data *afe = iio_priv(indio_dev); in afe4404_write_raw() local 306 return regmap_field_write(afe->fields[offdac_field], val); in afe4404_write_raw() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt8192/ |
D | mt8192-dai-adda.c | 69 static unsigned int adda_dl_rate_transform(struct mtk_base_afe *afe, in adda_dl_rate_transform() argument 96 dev_warn(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in adda_dl_rate_transform() 102 static unsigned int adda_ul_rate_transform(struct mtk_base_afe *afe, in adda_ul_rate_transform() argument 119 dev_warn(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in adda_ul_rate_transform() 259 static int mtk_adda_ul_src_dmic(struct mtk_base_afe *afe, int id) in mtk_adda_ul_src_dmic() argument 277 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() 280 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() 285 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() 288 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() 291 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic() [all …]
|
D | mt8192-afe-clk.c | 63 int mt8192_set_audio_int_bus_parent(struct mtk_base_afe *afe, in mt8192_set_audio_int_bus_parent() argument 66 struct mt8192_afe_private *afe_priv = afe->platform_priv; in mt8192_set_audio_int_bus_parent() 72 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in mt8192_set_audio_int_bus_parent() 80 static int apll1_mux_setting(struct mtk_base_afe *afe, bool enable) in apll1_mux_setting() argument 82 struct mt8192_afe_private *afe_priv = afe->platform_priv; in apll1_mux_setting() 88 dev_err(afe->dev, "%s clk_prepare_enable %s fail %d\n", in apll1_mux_setting() 95 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in apll1_mux_setting() 104 dev_err(afe->dev, "%s clk_prepare_enable %s fail %d\n", in apll1_mux_setting() 111 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in apll1_mux_setting() 120 dev_err(afe->dev, "%s clk_set_parent %s-%s fail %d\n", in apll1_mux_setting() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt2701/ |
D | mt2701-afe-clock-ctrl.c | 25 int mt2701_init_clock(struct mtk_base_afe *afe) in mt2701_init_clock() argument 27 struct mt2701_afe_private *afe_priv = afe->platform_priv; in mt2701_init_clock() 31 afe_priv->base_ck[i] = devm_clk_get(afe->dev, base_clks[i]); in mt2701_init_clock() 33 dev_err(afe->dev, "failed to get %s\n", base_clks[i]); in mt2701_init_clock() 45 i2s_path->sel_ck = devm_clk_get(afe->dev, name); in mt2701_init_clock() 47 dev_err(afe->dev, "failed to get %s\n", name); in mt2701_init_clock() 52 i2s_path->div_ck = devm_clk_get(afe->dev, name); in mt2701_init_clock() 54 dev_err(afe->dev, "failed to get %s\n", name); in mt2701_init_clock() 59 i2s_path->mclk_ck = devm_clk_get(afe->dev, name); in mt2701_init_clock() 61 dev_err(afe->dev, "failed to get %s\n", name); in mt2701_init_clock() [all …]
|
D | mt2701-afe-pcm.c | 84 static int mt2701_dai_num_to_i2s(struct mtk_base_afe *afe, int num) in mt2701_dai_num_to_i2s() argument 86 struct mt2701_afe_private *afe_priv = afe->platform_priv; in mt2701_dai_num_to_i2s() 90 dev_err(afe->dev, "%s, num not available, num %d, val %d\n", in mt2701_dai_num_to_i2s() 111 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mt2701_afe_i2s_startup() local 112 struct mt2701_afe_private *afe_priv = afe->platform_priv; in mt2701_afe_i2s_startup() 113 int i2s_num = mt2701_dai_num_to_i2s(afe, dai->id); in mt2701_afe_i2s_startup() 119 return mt2701_afe_enable_mclk(afe, mode ? 1 : i2s_num); in mt2701_afe_i2s_startup() 122 static int mt2701_afe_i2s_path_disable(struct mtk_base_afe *afe, in mt2701_afe_i2s_path_disable() argument 135 regmap_update_bits(afe->regmap, i2s_data->i2s_ctrl_reg, in mt2701_afe_i2s_path_disable() 138 mt2701_afe_disable_i2s(afe, i2s_path, stream_dir); in mt2701_afe_i2s_path_disable() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt8183/ |
D | mt8183-dai-adda.c | 50 static unsigned int adda_dl_rate_transform(struct mtk_base_afe *afe, in adda_dl_rate_transform() argument 77 dev_warn(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in adda_dl_rate_transform() 83 static unsigned int adda_ul_rate_transform(struct mtk_base_afe *afe, in adda_ul_rate_transform() argument 100 dev_warn(afe->dev, "%s(), rate %d invalid, use 48kHz!!!\n", in adda_ul_rate_transform() 147 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt); in mtk_adda_ul_event() local 148 struct mt8183_afe_private *afe_priv = afe->platform_priv; in mtk_adda_ul_event() 150 dev_dbg(afe->dev, "%s(), name %s, event 0x%x\n", in mtk_adda_ul_event() 158 regmap_update_bits(afe->regmap, AFE_ADDA_MTKAIF_RX_CFG0, in mtk_adda_ul_event() 162 regmap_update_bits(afe->regmap, AFE_ADDA_MTKAIF_RX_CFG0, in mtk_adda_ul_event() 164 regmap_update_bits(afe->regmap, AFE_ADDA_UL_SRC_CON0, in mtk_adda_ul_event() [all …]
|
D | mt8183-afe-clk.c | 92 int mt8183_init_clock(struct mtk_base_afe *afe) in mt8183_init_clock() argument 94 struct mt8183_afe_private *afe_priv = afe->platform_priv; in mt8183_init_clock() 97 afe_priv->clk = devm_kcalloc(afe->dev, CLK_NUM, sizeof(*afe_priv->clk), in mt8183_init_clock() 103 afe_priv->clk[i] = devm_clk_get(afe->dev, aud_clks[i]); in mt8183_init_clock() 105 dev_err(afe->dev, "%s(), devm_clk_get %s fail, ret %ld\n", in mt8183_init_clock() 115 int mt8183_afe_enable_clock(struct mtk_base_afe *afe) in mt8183_afe_enable_clock() argument 117 struct mt8183_afe_private *afe_priv = afe->platform_priv; in mt8183_afe_enable_clock() 122 dev_err(afe->dev, "%s(), clk_prepare_enable %s fail %d\n", in mt8183_afe_enable_clock() 129 dev_err(afe->dev, "%s(), clk_prepare_enable %s fail %d\n", in mt8183_afe_enable_clock() 137 dev_err(afe->dev, "%s(), clk_set_parent %s-%s fail %d\n", in mt8183_afe_enable_clock() [all …]
|
D | mt8183-afe-pcm.c | 148 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(component); in mt8183_memif_fs() local 151 return mt8183_rate_transform(afe->dev, rate, id); in mt8183_memif_fs() 159 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(component); in mt8183_irq_fs() local 161 return mt8183_general_rate_transform(afe->dev, rate); in mt8183_irq_fs() 929 struct mtk_base_afe *afe = dev; in mt8183_afe_irq_handler() local 939 regmap_read(afe->regmap, AFE_IRQ_MCU_EN, &mcu_en); in mt8183_afe_irq_handler() 941 ret = regmap_read(afe->regmap, AFE_IRQ_MCU_STATUS, &status); in mt8183_afe_irq_handler() 946 dev_err(afe->dev, "%s(), irq status err, ret %d, status 0x%x, mcu_en 0x%x\n", in mt8183_afe_irq_handler() 954 struct mtk_base_afe_memif *memif = &afe->memif[i]; in mt8183_afe_irq_handler() 962 irq = &afe->irqs[memif->irq_usage]; in mt8183_afe_irq_handler() [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt8173/ |
D | mt8173-afe-pcm.c | 196 static int mt8173_afe_set_i2s(struct mtk_base_afe *afe, unsigned int rate) in mt8173_afe_set_i2s() argument 205 regmap_update_bits(afe->regmap, AFE_ADDA_TOP_CON0, 0x1, 0x1); in mt8173_afe_set_i2s() 206 regmap_update_bits(afe->regmap, AFE_ADDA2_TOP_CON0, 0x1, 0x1); in mt8173_afe_set_i2s() 213 regmap_update_bits(afe->regmap, AFE_I2S_CON2, ~AFE_I2S_CON2_EN, val); in mt8173_afe_set_i2s() 220 regmap_update_bits(afe->regmap, AFE_I2S_CON1, ~AFE_I2S_CON1_EN, val); in mt8173_afe_set_i2s() 224 static void mt8173_afe_set_i2s_enable(struct mtk_base_afe *afe, bool enable) in mt8173_afe_set_i2s_enable() argument 228 regmap_read(afe->regmap, AFE_I2S_CON2, &val); in mt8173_afe_set_i2s_enable() 233 regmap_update_bits(afe->regmap, AFE_I2S_CON2, 0x1, enable); in mt8173_afe_set_i2s_enable() 236 regmap_update_bits(afe->regmap, AFE_I2S_CON1, 0x1, enable); in mt8173_afe_set_i2s_enable() 239 static int mt8173_afe_dais_enable_clks(struct mtk_base_afe *afe, in mt8173_afe_dais_enable_clks() argument [all …]
|
/linux-6.6.21/sound/soc/mediatek/mt6797/ |
D | mt6797-afe-pcm.c | 145 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(component); in mt6797_memif_fs() local 148 return mt6797_rate_transform(afe->dev, rate, id); in mt6797_memif_fs() 156 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(component); in mt6797_irq_fs() local 158 return mt6797_general_rate_transform(afe->dev, rate); in mt6797_irq_fs() 604 struct mtk_base_afe *afe = dev; in mt6797_afe_irq_handler() local 613 regmap_read(afe->regmap, AFE_IRQ_MCU_EN, &mcu_en); in mt6797_afe_irq_handler() 615 ret = regmap_read(afe->regmap, AFE_IRQ_MCU_STATUS, &status); in mt6797_afe_irq_handler() 617 dev_err(afe->dev, "%s(), irq status err, ret %d, status 0x%x, mcu_en 0x%x\n", in mt6797_afe_irq_handler() 628 struct mtk_base_afe_memif *memif = &afe->memif[i]; in mt6797_afe_irq_handler() 633 irq = &afe->irqs[memif->irq_usage]; in mt6797_afe_irq_handler() [all …]
|