static int rockchip_wm8960_audio_probe(struct platform_device *pdev) { int ret; struct snd_soc_card *card = &rk_wm8960_snd_card; card->dev = &pdev->dev; platform_set_drvdata(pdev, card); ret = rockchip_of_get_sound_card_info(card); if (ret) { dev_err(&pdev->dev, "get sound card_info failed (%d)\n", ret); return ret; } ret = snd_soc_register_card(card); if (ret) { dev_err(&pdev->dev, "snd_soc_register_card failed (%d)\n", ret); card->dev = NULL; return ret; } dev_info(&pdev->dev, "wm8960 audio init success.\n"); return 0; }
/* dts: rockchip-rt3261 { compatible = "rockchip-rt3261"; dais { dai0 { audio-codec = <&rt3261>; i2s-controller = <&i2s0>; format = "i2s"; //continuous-clock; //bitclock-inversion; //frame-inversion; //bitclock-master; //frame-master; }; dai1 { audio-codec = <&rt3261>; i2s-controller = <&i2s0>; format = "dsp_a"; //continuous-clock; bitclock-inversion; //frame-inversion; //bitclock-master; //frame-master; }; }; }; */ static int rockchip_rt3261_audio_probe(struct platform_device *pdev) { int ret; struct snd_soc_card *card = &rockchip_rt3261_snd_card; card->dev = &pdev->dev; ret = rockchip_of_get_sound_card_info(card); if (ret) { printk("%s() get sound card info failed:%d\n", __FUNCTION__, ret); return ret; } ret = snd_soc_register_card(card); if (ret) printk("%s() register card failed:%d\n", __FUNCTION__, ret); return ret; }