18c2ecf20Sopenharmony_ciFreescale Generic ASoC Sound Card with ASRC support 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThe Freescale Generic ASoC Sound Card can be used, ideally, for all Freescale 48c2ecf20Sopenharmony_ciSoCs connecting with external CODECs. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciThe idea of this generic sound card is a bit like ASoC Simple Card. However, 78c2ecf20Sopenharmony_cifor Freescale SoCs (especially those released in recent years), most of them 88c2ecf20Sopenharmony_cihave ASRC (Documentation/devicetree/bindings/sound/fsl,asrc.txt) inside. And 98c2ecf20Sopenharmony_cithis is a specific feature that might be painstakingly controlled and merged 108c2ecf20Sopenharmony_ciinto the Simple Card. 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ciSo having this generic sound card allows all Freescale SoC users to benefit 138c2ecf20Sopenharmony_cifrom the simplification of a new card support and the capability of the wide 148c2ecf20Sopenharmony_cisample rates support through ASRC. 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciNote: The card is initially designed for those sound cards who use AC'97, I2S 178c2ecf20Sopenharmony_ci and PCM DAI formats. However, it'll be also possible to support those non 188c2ecf20Sopenharmony_ci AC'97/I2S/PCM type sound cards, such as S/PDIF audio and HDMI audio, as 198c2ecf20Sopenharmony_ci long as the driver has been properly upgraded. 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciThe compatible list for this generic sound card currently: 238c2ecf20Sopenharmony_ci "fsl,imx-audio-ac97" 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci "fsl,imx-audio-cs42888" 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci "fsl,imx-audio-cs427x" 288c2ecf20Sopenharmony_ci (compatible with CS4271 and CS4272) 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci "fsl,imx-audio-wm8962" 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci "fsl,imx-audio-sgtl5000" 338c2ecf20Sopenharmony_ci (compatible with Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt) 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci "fsl,imx-audio-wm8960" 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci "fsl,imx-audio-mqs" 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci "fsl,imx-audio-wm8524" 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci "fsl,imx-audio-tlv320aic32x4" 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ciRequired properties: 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci - compatible : Contains one of entries in the compatible list. 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci - model : The user-visible name of this sound complex 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci - audio-cpu : The phandle of an CPU DAI controller 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci - audio-codec : The phandle of an audio codec 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ciOptional properties: 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci - audio-asrc : The phandle of ASRC. It can be absent if there's no 568c2ecf20Sopenharmony_ci need to add ASRC support via DPCM. 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci - audio-routing : A list of the connections between audio components. 598c2ecf20Sopenharmony_ci Each entry is a pair of strings, the first being the 608c2ecf20Sopenharmony_ci connection's sink, the second being the connection's 618c2ecf20Sopenharmony_ci source. There're a few pre-designed board connectors: 628c2ecf20Sopenharmony_ci * Line Out Jack 638c2ecf20Sopenharmony_ci * Line In Jack 648c2ecf20Sopenharmony_ci * Headphone Jack 658c2ecf20Sopenharmony_ci * Mic Jack 668c2ecf20Sopenharmony_ci * Ext Spk 678c2ecf20Sopenharmony_ci * AMIC (stands for Analog Microphone Jack) 688c2ecf20Sopenharmony_ci * DMIC (stands for Digital Microphone Jack) 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci Note: The "Mic Jack" and "AMIC" are redundant while 718c2ecf20Sopenharmony_ci coexisting in order to support the old bindings 728c2ecf20Sopenharmony_ci of wm8962 and sgtl5000. 738c2ecf20Sopenharmony_ci 748c2ecf20Sopenharmony_ci - hp-det-gpio : The GPIO that detect headphones are plugged in 758c2ecf20Sopenharmony_ci - mic-det-gpio : The GPIO that detect microphones are plugged in 768c2ecf20Sopenharmony_ci - bitclock-master : Indicates dai-link bit clock master; for details see simple-card.yaml. 778c2ecf20Sopenharmony_ci - frame-master : Indicates dai-link frame master; for details see simple-card.yaml. 788c2ecf20Sopenharmony_ci - dai-format : audio format, for details see simple-card.yaml. 798c2ecf20Sopenharmony_ci - frame-inversion : dai-link uses frame clock inversion, for details see simple-card.yaml. 808c2ecf20Sopenharmony_ci - bitclock-inversion : dai-link uses bit clock inversion, for details see simple-card.yaml. 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ciOptional unless SSI is selected as a CPU DAI: 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci - mux-int-port : The internal port of the i.MX audio muxer (AUDMUX) 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ci - mux-ext-port : The external port of the i.MX audio muxer 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ciExample: 898c2ecf20Sopenharmony_cisound-cs42888 { 908c2ecf20Sopenharmony_ci compatible = "fsl,imx-audio-cs42888"; 918c2ecf20Sopenharmony_ci model = "cs42888-audio"; 928c2ecf20Sopenharmony_ci audio-cpu = <&esai>; 938c2ecf20Sopenharmony_ci audio-asrc = <&asrc>; 948c2ecf20Sopenharmony_ci audio-codec = <&cs42888>; 958c2ecf20Sopenharmony_ci audio-routing = 968c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT1L", 978c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT1R", 988c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT2L", 998c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT2R", 1008c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT3L", 1018c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT3R", 1028c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT4L", 1038c2ecf20Sopenharmony_ci "Line Out Jack", "AOUT4R", 1048c2ecf20Sopenharmony_ci "AIN1L", "Line In Jack", 1058c2ecf20Sopenharmony_ci "AIN1R", "Line In Jack", 1068c2ecf20Sopenharmony_ci "AIN2L", "Line In Jack", 1078c2ecf20Sopenharmony_ci "AIN2R", "Line In Jack"; 1088c2ecf20Sopenharmony_ci}; 109