summaryrefslogtreecommitdiffstats
path: root/sound/soc/sti
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: sti: select player for I2S/TDM TX busMoise Gergaud2016-04-182-14/+29
| | | | | | | | | By default, player#0 is connected to I2S/TDM TX bus. This patch connects player#1 to I2S/TDM TX bus. Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: unip reader tdm modeMoise Gergaud2016-04-121-61/+168
| | | | | | | | | | | | | | Here are the changes to enable reader tdm mode: - When TDM_ENABLE is set to 1, the i2s format should be automatically configured. Unfortunately this is not the case (HW bug). Then, we shall force DATA_SIZE setting. - Compute the transfer size for tdm mode: transfer size = user frame size - Manage tdm slots configuration given in DT. - Refine the hw param (channels & format) according to tdm slot config. Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: unip player tdm modeMoise Gergaud2016-04-123-18/+110
| | | | | | | | | | | | | | | | here are the changes to enable player tdm mode: - When TDM_ENABLE is set to 1, the i2s format should be automatically configured. Unfortunately this is not the case (HW bug). Then, we shall force DATA_SIZE setting. - Compute the transfer size for tdm mode: transfer size = user frame size - Manage tdm slots configuration given in DT. - Don't use mclk-fs when unip in tdm mode; use tdm slot config to compute frame size and to set mclk rate. - Refine the hw param (channels & format) according to tdm slot config. Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: helper functions to fix tdm runtime paramsMoise Gergaud2016-04-122-0/+52
| | | | | | Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: helper functions for unip tdm slots configurationMoise Gergaud2016-04-122-0/+113
| | | | | | | | | - sti_uniperiph_set_tdm_slot: store tdm slot config in unip context - sti_uniperiph_get_tdm_word_pos: configure unip tdm slots pos regs Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: define tdm type & default tdm hw configMoise Gergaud2016-04-121-1/+27
| | | | | | Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: rename unip player type into common player & reader typeMoise Gergaud2016-04-122-25/+25
| | | | | | Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: macro for uniperif tdm regs accessMoise Gergaud2016-04-121-0/+112
| | | | | | Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: correct typo errorsMoise Gergaud2016-03-311-11/+11
| | | | | | Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
*-. Merge remote-tracking branches 'asoc/topic/samsung', 'asoc/topic/sh', ↵Mark Brown2015-12-231-2/+1
|\ \ | | | | | | | | | 'asoc/topic/ssm2518' and 'asoc/topic/sti' into asoc-next
| | * ASoC: sti: set iec958 channel status sampling freqMoise Gergaud2015-11-251-2/+1
| |/ | | | | | | | | | | | | | | | | | | | | Previously, the iec958 channels status sampling freq was set only if not already set. It means that it is not updated for next PCM sessions. With this patch, we ensure the iec958 channels status sampling freq is set to the runtime rate for each PCM session. Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: sti: set player private dataMoise Gergaud2015-11-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | Set substream player private data. substream player private data is used in uni_player_irq_handler to lock, stop & unlock the stream when interrupt indicates underflow/overflow. If not set, then segmentation fault occurs. Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: sti: rename ST proprietary DT propertiesMoise Gergaud2015-11-192-4/+4
| | | | | | | | | | | | | | | | "st," prefix has been added for ST proprietary DT properties. Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* | ASoC: sti: remove wrong error messageMoise Gergaud2015-11-191-1/+0
|/ | | | | | Signed-off-by: Moise Gergaud <moise.gergaud@st.com> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: check return of of_property_readArnaud Pouliquen2015-09-102-5/+15
| | | | | | | | Add check on of_property_read to return error when DT required property is not defined. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti_uniperif: Ensure component is unregistered when unload moduleAxel Lin2015-08-301-3/+3
| | | | | | | | Use devm_snd_soc_register_component to ensure component is unregistered when unload the module. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: Add IEC controlArnaud Pouliquen2015-08-071-4/+73
| | | | | | | Add control to configure IEC60958 settings. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: uniperf: Staticise local symbolsLars-Peter Clausen2015-07-291-1/+1
| | | | | | | | | | | | uni_player_dai_ops is not used outside of this file so it should be static. Fixes the following sparse warning: sound/soc/sti/uniperif_player.c:959:30: warning: symbol 'uni_player_dai_ops' was not declared. Should it be static? Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: uniperf: Add missing __iomem annotationLars-Peter Clausen2015-07-291-1/+1
| | | | | | | | | | | | | | | | | | | | base referes to a iomem region, so it should have the __iomem annotation. Fixes the following warnings from sparse: sound/soc/sti/sti_uniperif.c:169:19: warning: incorrect type in assignment (different address spaces) sound/soc/sti/sti_uniperif.c:169:19: expected void *base sound/soc/sti/sti_uniperif.c:169:19: got void [noderef] <asn:2>* sound/soc/sti/uniperif_player.c:104:18: warning: incorrect type in argument 1 (different address spaces) sound/soc/sti/uniperif_player.c:104:18: expected void const volatile [noderef] <asn:2>*addr sound/soc/sti/uniperif_player.c:104:18: got void * [...] Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: error handling bug in sti_uniperiph_cpu_dai_of()Dan Carpenter2015-07-211-1/+1
| | | | | | | | There is a stray '!' which means the condition is never true. Fixes: f3bd847eb0a7 ('ASoC: sti: Add uniperipheral dai driver') Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti-uniperf: Fix implicit inclusion of pinctrlMark Brown2015-07-201-0/+1
| | | | | Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: sti_uniperiph_dai_create_ctrl() can be statickbuild test robot2015-07-173-5/+5
| | | | | Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: Add clock adjustement controlArnaud Pouliquen2015-07-162-1/+150
| | | | | | | Add capability to adjust player clock, for clocks drift management. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: Add ability to build sti driversArnaud Pouliquen2015-07-162-0/+15
| | | | | | | Define the platform and codec drivers, and how to build them. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: Add uniperipheral dai driverArnaud Pouliquen2015-07-162-0/+262
| | | | | | | | ASoc uniperipheral dai driver that manages uniperipheral DAIs and registers associated generic dma engine platform. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: Add CPU DAI driver for captureArnaud Pouliquen2015-07-162-0/+365
| | | | | | | | Add code to manage Uniperipheral reader IP instances. These DAIs are dedicated to capture and support I2S and IEC modes. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: minor corrections for uniplayerArnaud Pouliquen2015-07-161-3/+7
| | | | | | | Minor corrections after code review. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: Add CPU DAI driver for playbackArnaud Pouliquen2015-07-102-0/+1006
| | | | | | | | Add code to manage Uniperipheral player IP instances. These DAIs are dedicated to playback and support I2S and IEC modes. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
* ASoC: sti: Add uniperipheral header fileArnaud Pouliquen2015-07-101-0/+1099
Add the Uniperipheral header file for uniperipheral IPs registers definition. Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Mark Brown <broonie@kernel.org>
OpenPOWER on IntegriCloud