aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/fsl/fsl_spdif.c
Commit message (Collapse)AuthorAge
* ENGR00321941 ASoC: fsl_spdif: fix that can't get the Rx Sample RateShengjiu Wang2014-07-09
| | | | | | The SRPC register should be volatile, LOCK bit is set by the hardware. Signed-off-by: Shengjiu Wang <b02247@freescale.com>
* ENGR00320241 ASoC: fsl_spdif: Complete the volatile register listNicolin Chen2014-06-27
| | | | | | | | | Not only SIS but also other read-only or write-only reigsters should be marked as volatile register so as not to let regcache cache them. So this patch just adds those missing registers. Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com> (cherry picked from commit 56ad235ba23274fc05422ad4b13153d1c56801c4)
* ENGR00318773-8 ASoC: fsl_spdif: Add driver suspend and resume to support ↵Nicolin Chen2014-06-19
| | | | | | | | | | | | MEGA Fast For i.MX6 SoloX, there is a mode of the SoC to shutdown all power source of modules during system suspend and resume procedure. Thus, SPDIF needs to save all the values of registers before the system suspend and restore them after the system resume. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00309468-3 ASoC: fsl_spdif: Print selected rate for debugNicolin Chen2014-04-21
| | | | | | | It'd better to tell people what's the current rate from the clock selecting function against the required sample rate. Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00309468-2 ASoC: fsl_spdif: Add sysclk_df divsor support for sysclk usageNicolin Chen2014-04-21
| | | | | | | | | | | | | | | The sysclk, which could be connected to IPG clock, is one of the eight clocks on the inner clock mux of SPDIF. Previously we forbade the usage of this clock due to imperfect clock selecting function. This patch adds the sysclk_df divisor so as to complete sysclk function. [ In order to potect those clocks from other modules and the situation when SPDIF root clock is shared with other module (ASRC on imx6sx for example) that demands us to fix the clock and not to change its rate, starting from now on, we no longer use clk_round() and clk_set_rate(). ] Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00309468-1 ASoC: fsl_spdif: Add coreclk control for DMA accessNicolin Chen2014-04-21
| | | | | | | | | | Even if we assign regmap to manage the coreclk control, we still need to open the clock if we are going to run the driver because DMA access would not be detected by regmap. So this patch adds clock control for coreclk. Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00289643-2 ASoC: fsl: Add missing spba clock for esai and spdifNicolin Chen2014-04-16
| | | | | | | | Both esai and spdif are using SDMA script to transmit and receive data while the essential spba clock is missed in the current two drivers. Thus add them. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ENGR00288421-2 ASoC: fsl_spdif: Ignore system clock due to potential riskNicolin Chen2014-04-16
| | | | | | | | | | | The current clock selecting mechanism would choose a clock and set its rate later when using it. It might be feasible for other clock sources but not for sysclk -- ipg clock. Changing ipg clock rate in specific driver would be a dangerous operation, so we here ingore the sysclk and will restore it after we accomplish a better mechanism. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ENGR00288421-1 ASoC: fsl_spdif: Use correct clock for Rx clock rate calculationNicolin Chen2014-04-16
| | | | | | | | | According to the Reference Manual, we should use system clock to calculate rx clock rate instead of spdif own clock. Thus add system clock to spdif driver and replace the incorrect one in rate calculation. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ENGR00283079-1 ASoC: fsl: Implement different DMA buffer sizesNicolin Chen2014-04-16
| | | | | | | | | Each CPU DAI driver has its own defined DMA buffer size, so this patch just drops the original one that uses a fixed size for all drivers and implements a different DMA buffer size to each driver. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ASoC: fsl_spdif: Remove redundant semicolonSachin Kamat2014-04-16
| | | | | | | | Redundant semicolon at the end of brace is removed. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ASoC: fsl_spdif: Reduce the noise on commentsFabio Estevam2014-04-16
| | | | | | | | | | Remove the "====" pattern to let the comments cleaner and more uniform. Also, do not use multi-line style for a single line comment. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Nicolin Chen <b42378@freescale.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: fsl_spdif: Staticse non-exported symbolsMark Brown2014-04-16
| | | | | Signed-off-by: Mark Brown <broonie@linaro.org> Acked-by: Nicolin Chen <B42378@freescale.com>
* ASoC: fsl: Add wrapping for dev_dbg() in fsl_spdif.cNicolin Chen2014-04-16
| | | | | | | Add wrapping '\n' for dev_dbg() in fsl_spdif.c Signed-off-by: Nicolin Chen <b42378@freescale.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ENGR00277894 asoc: fsl: add pm runtime for fsl audio codec.Shengjiu Wang2014-04-16
| | | | | | Add pm runtime for fsl audio codec Signed-off-by: Shengjiu Wang <b02247@freescale.com>
* ENGR00277458-1 ASoC: fsl: Use correct flag for imx_pcm_dma_init()Nicolin Chen2014-04-16
| | | | | | | | We are using generic dma binding from devicetree for spdif, thus use the correct flag. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ASoC: fsl_spdif: Remove unnecessary dev_set_drvdata()Fabio Estevam2014-04-16
| | | | | | | | | | Driver core clears the driver data to NULL after device_release or on probe failure, so just remove it from here. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Reviewed-by: Nicolin Chen <b42378@freescale.com> Signed-off-by: Mark Brown <broonie@linaro.org> Signed-off-by: Nicolin Chen <b42378@freescale.com>
* ASoC: fsl: Add S/PDIF CPU DAI driverNicolin Chen2014-04-16
This patch implements a device-tree-only CPU DAI driver for Freescale S/PDIF controller that supports stereo playback and record feature. Signed-off-by: Nicolin Chen <b42378@freescale.com> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@linaro.org>