{
        struct snd_soc_dai_link *dai_link;
        struct snd_soc_acpi_mach *mach;
+       struct avs_mach_pdata *pdata;
        struct snd_soc_card *card;
        struct device *dev = &pdev->dev;
        const char *pname;
 
        mach = dev_get_platdata(dev);
        pname = mach->mach_params.platform;
+       pdata = mach->pdata;
 
        ret = avs_mach_get_ssp_tdm(dev, mach, &ssp_port, &tdm_slot);
        if (ret)
        if (!card)
                return -ENOMEM;
 
-       card->name = "avs_rt5514";
+       if (pdata->obsolete_card_names) {
+               card->name = "avs_rt5514";
+       } else {
+               card->driver_name = "avs_rt5514";
+               card->long_name = card->name = "AVS I2S ALC5514";
+       }
        card->dev = dev;
        card->owner = THIS_MODULE;
        card->dai_link = dai_link;