aboutsummaryrefslogtreecommitdiffstats
path: root/sound
Commit message (Collapse)AuthorAge
* ASoC: rsnd: add rsnd_scu_transfer_start()Kuninori Morimoto2013-12-31
| | | | | | | | | | | | | | | | | Renesas sound has SRC (= Sampling Rate Converter), but, the HW implementation depends on its generation. It was part of SRU on Gen1, and SCU on Gen2. This SCU needs DMA transfer to use it. Current rsnd driver is using it as DMA transfer buffer (= no rate convert), and Gen1 is only supported at this point. This patch cleanup it with focusing about SRC and Gen2 part. SRC_CTRL/BUSIF_MODE are used for transfer start. This patch adds rsnd_scu_transfer_start() and merge these Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rsnd: route setting is needed only Gen1Kuninori Morimoto2013-12-31
| | | | | | | | | | | | | | | | | | | | Renesas sound has SRC (= Sampling Rate Converter), but, the HW implementation depends on its generation. It was part of SRU on Gen1, and SCU on Gen2. This SCU needs DMA transfer to use it. Current rsnd driver is using it as DMA transfer buffer (= no rate convert), and Gen1 is only supported at this point. This patch cleanup it with focusing about SRC and Gen2 part. rsnd_scu_set_route() is needed only Gen1. This patch renames it to rsnd_scu_set_route_if_gen1() and it adds comment to rsnd_reg member in order to clarify it is used for Gen1. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rsnd: make sure variable name for 44.1kHz/48kHzKuninori Morimoto2013-12-31
| | | | | | | | | | This driver is assuming that RBGA is used as source clock of 44.1kHz category, and RBGB is used as source clock of 48kHz category. This patch clarifies the variable name. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rsnd: tidyup register namingKuninori Morimoto2013-12-31
| | | | | | | Use correct register name which appears in the datasheet Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rsnd: tidyup ssi commentKuninori Morimoto2013-12-31
| | | | | | | we can check rsnd_ssi_init(), not, rsnd_ssi_start() Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rsnd: add rsnd_adg_set_ssi_clk() and cleanup adgKuninori Morimoto2013-12-31
| | | | | | | | | This patch adds rsnd_adg_set_ssi_clk() to access to AUDIO_CLK_SEL0/1/2, and removes last user of rsnd_write/read/bset which is very low level function. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: fsi: remove original filter from fsi_dma_probe()Kuninori Morimoto2013-12-11
| | | | | | | | Remove original filter from fsi_dma_probe(), and use SH-DMA suitable filter. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rsnd: gen: fixup Gen2 channel sizeKuninori Morimoto2013-12-10
| | | | | | | Gen2 has 0 - 9, total 10 channels, not 9 channels. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: use devm_clk_get() instead of clk_get()Kuninori Morimoto2013-12-04
| | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: add Gen2 sound supportKuninori Morimoto2013-11-29
| | | | | | | | This patch adds Gen2 sound support for Renesas R-Car. But, it is supporting PIO transfer only at this point Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: remove rcar_gen_opsKuninori Morimoto2013-11-29
| | | | | | | | | | | Current rcar driver gen.c is using rcar_gen_ops which was made with the assumption that Gen1 and Gen2 need different behavior. but it was not needed. This patch removes unnecessary complex method. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: remove .path_init/exit from rsnd_gen_opsKuninori Morimoto2013-11-29
| | | | | | | | | | | | rsnd_gen_ops has .path_init/exit callback function which cares SRU/SSI (if Gen1) SCU/SSIU/SSI (if Gen2) path settings. But, the differences between Gen1/Gen2 are cared in ssi.c/scu.c, and the path itself is same in Gen1/Gen2. This patch removes .path_init/exit callback. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: add rsnd_is_accessible_reg()Kuninori Morimoto2013-11-29
| | | | | | | | | | | | Current rcar driver is supporting Gen1, and Gen2 will be supported soon. Then, some registers are used from Gen1 only, or from Gen2 only. To avoid NULL pointer access, this patch adds register accessible check function. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: separate regmap init common fieldKuninori Morimoto2013-11-29
| | | | | | | | | | The repmap initialization difference between Gen1/Gen2 is only register offset. This patch separates rsnd_gen1_regmap_init() into common part and Gen1 specific part. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: remove unused register settingsKuninori Morimoto2013-11-29
| | | | | | | AUDIO_CLK_SEL4/5 are not used Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* ASoC: rcar: some dubious one-bit signed bitfieldsDan Carpenter2013-11-24
| | | | | | | | | | | | Because these are signed they can either be 0 or -1 instead of 0 and 1 as intended. It doesn't cause a problem from what I can see, but it's dangerous and Sparse complains: sound/soc/sh/rcar/rsnd.h:177:25: error: dubious one-bit signed bitfield Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* Merge remote-tracking branch 'asoc/topic/wm8962' into asoc-nextMark Brown2013-10-24
|\
| * ASoC: wm8962: Move register initialisation to I2C probe()Mark Brown2013-10-18
| | | | | | | | | | | | | | This is more idiomatic and is required for robust operation since we must ensure that the clocking configuration is valid as rapidly as possible. Signed-off-by: Mark Brown <broonie@linaro.org>
| * ASoC: wm8962: Move interrupt initalisation to probe()Mark Brown2013-10-18
| | | | | | | | | | | | This is more idiomatic and fixes bugs in the error handling paths. Signed-off-by: Mark Brown <broonie@linaro.org>
* | Merge remote-tracking branch 'asoc/topic/wm8400' into asoc-nextMark Brown2013-10-24
|\ \
| * | ASoC: wm8400: Use regmap for I/OMark Brown2013-09-16
| | | | | | | | | | | | | | | | | | | | | Since we no longer have a fake register to simulate we can use the framework for I/O. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | ASoC: wm8400: Use supplies to manage input powerMark Brown2013-09-16
| | | | | | | | | | | | | | | | | | | | | Rather than using a fake register to manage input power create some supply widgets and use those. Signed-off-by: Mark Brown <broonie@linaro.org>
* | | Merge remote-tracking branch 'asoc/topic/twl6040' into asoc-nextMark Brown2013-10-24
|\ \ \
| * | | ASoC: twl6040: Use virtual DAPM mixer controlsLars-Peter Clausen2013-10-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using the new virtual DAPM mixer controls it is possible to remove the twl6040 specific implementation of virtual controls. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | Merge remote-tracking branch 'asoc/topic/dapm' into asoc-twl6040Mark Brown2013-10-07
| |\ \ \
| * | | | ASoC: twl6040: Remove redundant semicolonSachin Kamat2013-09-16
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | Redundant semicolon removed. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | Merge remote-tracking branch 'asoc/topic/twl4030' into asoc-nextMark Brown2013-10-24
|\ \ \ \
| * | | | ASoC: twl4030: Use virtual DAPM mixer controlsLars-Peter Clausen2013-10-07
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using the new virtual DAPM mixer controls it is possible to remove the twl4030 specific implementation of virtual controls. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | Merge remote-tracking branch 'asoc/topic/tpa6130a2' into asoc-nextMark Brown2013-10-24
|\ \ \ \
| * | | | ASoC: tpa6130a2: Add device tree supportSebastian Reichel2013-10-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add device tree support to tpa6130a2 driver and document the bindings. Signed-off-by: Sebastian Reichel <sre@debian.org> Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | | Merge remote-tracking branch 'asoc/topic/tlv320aic3x' into asoc-nextMark Brown2013-10-24
|\ \ \ \ \
| * | | | | ASoC: tlv320aic3x: Include linux/of.h headerSachin Kamat2013-10-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'of_match_ptr' is defined in linux/of.h. Include it explicitly. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic3x: Convert to direct regmap API usageMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is slightly more complex than a standard regmap conversion due to the moderately detailed cache control and the open coding of a register patch for the class D speaker on the TLV320AIC3007. Although the device supports paging this is not currently implemented as the additional pages are only used during the application of the patch for the TLV320AIC3007. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic3x: Don't reference cache datastructure directlyMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than referencing the cache directly read back the values we are going to restore, supporting refactoring to use regmap. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic3x: Move to table based DAPM initMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic3x: Move to table based control initMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic3x: Move resource acquisition to I2C probeMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is more idiomatic and interacts better with deferred probing. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic3x: Remove nonsense comment for register cacheMark Brown2013-09-24
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Every statement in this comment is incorrect either through bitrot or (mostly) through never having corresponded to reality in the first place. Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | | Merge remote-tracking branch 'asoc/topic/tlv320aic32x4' into asoc-nextMark Brown2013-10-24
|\ \ \ \ \
| * | | | | ASoC: tlv320aic32x4: Convert to direct regmap API usageMark Brown2013-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves us towards being able to remove the duplicate register I/O functionality in ASoC and saves some code. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic32x4: Move GPIO acquisition to I2C probeMark Brown2013-09-26
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | This is more idiomatic and interacts better with deferred probe. Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | | Merge remote-tracking branch 'asoc/topic/tlv320aic26' into asoc-nextMark Brown2013-10-24
|\ \ \ \ \
| * | | | | ASoC: tlv320aic26: Convert to direct regmap API usageMark Brown2013-09-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves us towards being able to remove the duplicated register I/O code in ASoC. The datasheet and the driver document the device as having a register map divided into pages but since the paging is actually done by sending the page address and the register address with each transaction this is no different to having a simple register address. The datasheet does also document the low five bits of the 16 bit "command" as unused which we could represent as padding but it seems simpler and less confusing to things that use block transfers or autoincrement to represent these as part of the register address. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic26: Use snd_soc_update_bits()Mark Brown2013-09-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use snd_soc_update_bits() rather than open coding. Since the register cache is currently only used where update_bits() is used this means the current register cache can be removed entirely. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic26: Convert to table based control initMark Brown2013-09-25
| |/ / / / | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | | Merge remote-tracking branch 'asoc/topic/tlv320aic23' into asoc-nextMark Brown2013-10-24
|\ \ \ \ \
| * | | | | ASoC: tlv320aic23: Convert to direct regmap API usageMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves us towards being able to remove the duplicated register I/O code in ASoC. Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic23: Convert to table based control initMark Brown2013-09-24
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | ASoC: tlv320aic23: Remove #defines for I2CMark Brown2013-09-24
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The only control interface supported by this driver is I2C so there is no need for conditional compilation around the control interface. Signed-off-by: Mark Brown <broonie@linaro.org>
* | | | | Merge remote-tracking branch 'asoc/topic/tegra' into asoc-nextMark Brown2013-10-24
|\ \ \ \ \