Changelog: v5->v6: * Sorted out rxtx clk source in DT binding. * Use devm_xxxx() functions. * Use platform_get_resource() instead. v4->v5: * Dropped rx/tx-clksrc-names DT bindings. * Use standard clock binding instead to pass the clock source list. * Update the compatible list by using "imx35", the first SoC that has spdif. v3->v4: * Use regmap for CPU DAI driver. * Use individual clock source for 32KHz, 44KHz, 48KHz playback. * Determine clock source configuration from 'clocks' entry. * Added imx53 to compatible list, merged imx6q and imx6dl in the list. * Improve the algorism of reverse_bits(). * Dropped the unneeded clk_put(). v2->v3: * Removed a wrong tag from the commit of patch-1. v1->v2: * Dropped one applied patch for spdif dummy codec drivers. * Use generic DMA DT binding. * Let spdif controller driver calculate the clock div. * Added one optional clock source for spdif tx. * Reivsed documentation accordingly.
Nicolin Chen (2): ASoC: fsl: Add S/PDIF CPU DAI driver ASoC: fsl: Add S/PDIF machine driver
.../devicetree/bindings/sound/fsl,spdif.txt | 56 + .../devicetree/bindings/sound/imx-audio-spdif.txt | 29 + sound/soc/fsl/Kconfig | 14 + sound/soc/fsl/Makefile | 4 + sound/soc/fsl/fsl_spdif.c | 1272 ++++++++++++++++++++ sound/soc/fsl/fsl_spdif.h | 224 ++++ sound/soc/fsl/imx-spdif.c | 134 ++ 7 files changed, 1733 insertions(+), 0 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/fsl,spdif.txt create mode 100644 Documentation/devicetree/bindings/sound/imx-audio-spdif.txt create mode 100644 sound/soc/fsl/fsl_spdif.c create mode 100644 sound/soc/fsl/fsl_spdif.h create mode 100644 sound/soc/fsl/imx-spdif.c