{
        struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
 
-       if (dai->active)
+       if (snd_soc_dai_active(dai))
                return 0;
 
        regmap_update_bits(afe->regmap, AUDIO_TOP_CON0,
 {
        struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
 
-       if (dai->active)
+       if (snd_soc_dai_active(dai))
                return;
 
        mt8173_afe_set_i2s_enable(afe, false);
        struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
        struct mt8173_afe_private *afe_priv = afe->platform_priv;
 
-       if (dai->active)
+       if (snd_soc_dai_active(dai))
                return 0;
 
        mt8173_afe_dais_enable_clks(afe, afe_priv->clocks[MT8173_CLK_I2S3_M],
        struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
        struct mt8173_afe_private *afe_priv = afe->platform_priv;
 
-       if (dai->active)
+       if (snd_soc_dai_active(dai))
                return;
 
        mt8173_afe_dais_disable_clks(afe, afe_priv->clocks[MT8173_CLK_I2S3_M],