- 12 3月, 2012 8 次提交
-
-
由 Peter Ujfalusi 提交于
Remove the no longer valid check for McBSP1 regarding to signal mux selection (on OMAP4 McBSP4 has 6 pin setup). Only clear the srgr2, pcr0 register configuration if the requested clock configuration will actually going to touch it. In this way we can avoid issues if the CLKR/FSR mux has been configured after the clock selection. We are going to check for the valid McBSP port in the omap_mcbsp_6pin_src_mux() function based on the validity of the mux_signal callback (which is only valid for ports having 6 pin setup). Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
Use single function for the CLKR/FSR mux configuration. OMAP2/3 has 6 pin configuration on McBSP1 instance, while on OMAP4 McBSP4 instance have the 6 pin configuration so the omap2_mcbsp1_mux_* is not correct name for all support OMAP versions Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
Configure the DMA request line, port address, and stream name at probe time instead of every time we start a stream. These settings are static in the system. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: NGrazvydas Ignotas <notasas@gmail.com> Tested-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
Since the drivers has been merged, merge the two structures together. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: NGrazvydas Ignotas <notasas@gmail.com> Tested-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
Use devm_* where it is possible to save on cleanup path. Start merging the two mcbsp file content. Move pm_runtime_enable/disable calls to ASoC probe, remove from module probe/remove time. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: NGrazvydas Ignotas <notasas@gmail.com> Tested-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
We no longer need accessor functions for max_tx/rx_threshold, dma_op_mode or for the FIFO size. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: NGrazvydas Ignotas <notasas@gmail.com> Tested-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
The OMAP McBSP driver stack used to contain two different drivers. One of them was used as kind low-level access to the IP, while the other driver was the ASoC DAI driver. There were global, shared structures, in different places, the McBSP instances are reffered with id numbers (sometimes 0 based, in other cases 1 based id numbers). Create one single driver for OMAP McBSP with name: omap-mcbsp. Convert the old omap-mcbsp driver initially to be a library for the omap-mcbsp DAI driver. With this change we can get rid of all global variables, structures. Further cleanup is coming... Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: NGrazvydas Ignotas <notasas@gmail.com> Tested-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
由 Peter Ujfalusi 提交于
Move most of the content of the plat/mcbsp.h header file under sound/soc/omap/ to help further cleanups. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: NGrazvydas Ignotas <notasas@gmail.com> Tested-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
- 04 2月, 2012 1 次提交
-
-
由 Liam Girdwood 提交于
Currently ASoC can only add kcontrols using codec and platform component device handles. It's also desirable to add kcontrols for DAIs (i.e. McBSP) and for SoC card machine drivers too. This allows the kcontrol to have a direct handle to the parent ASoC component DAI/SoC Card/Platform/Codec device and hence easily get it's private data. This change makes snd_soc_add_controls() static and wraps it in the folowing calls (card and dai are new) :- snd_soc_add_card_controls() snd_soc_add_codec_controls() snd_soc_add_dai_controls() snd_soc_add_platform_controls() This patch also does a lot of small mechanical changes in individual codec drivers to replace snd_soc_add_controls() with snd_soc_add_codec_controls(). It also updates the McBSP DAI driver to use snd_soc_add_dai_controls(). Finally, it updates the existing machine drivers that register controls to either :- 1) Use snd_soc_add_card_controls() where no direct codec control is required. 2) Use snd_soc_add_codec_controls() where there is direct codec control. In the case of 1) above we also update the machine drivers to get the correct component data pointers from the kcontrol (rather than getting the machine pointer via the codec pointer). Signed-off-by: NLiam Girdwood <lrg@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 17 12月, 2011 1 次提交
-
-
由 Peter Ujfalusi 提交于
Allow McBSP FIFO configuration from ASoC dai driver on OMAP4 platform. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 25 11月, 2011 1 次提交
-
-
由 Axel Lin 提交于
Factor out some boilerplate code. Signed-off-by: NAxel Lin <axel.lin@gmail.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 23 11月, 2011 1 次提交
-
-
由 Lars-Peter Clausen 提交于
Commit 1ee46ebd("ASoC: Make the DAI ops constant in the DAI structure") introduced the possibility to have constant DAI ops structures, yet this is barley used in both existing drivers and also new drivers being submitted, although none of them modifies its DAI ops structure. The later is not surprising since existing drivers are often used as templates for new drivers. So this patch just constifies all existing snd_soc_dai_ops structs to eliminate the issue altogether. The patch was generated with the following coccinelle semantic patch: // <smpl> @@ identifier ops; @@ -struct snd_soc_dai_ops ops = +const struct snd_soc_dai_ops ops = { ... }; // </smpl> Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 10 10月, 2011 1 次提交
-
-
由 Michael Opdenacker 提交于
Signed-off-by: NMichael Opdenacker <michael.opdenacker@linaro.org> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 03 10月, 2011 1 次提交
-
-
由 Jarkko Nikula 提交于
Before commit 75d9ac46 ("ASoC: Allow DAI formats to be specified in the dai_link") expectation for omap-mcbsp was that snd_soc_dai_set_fmt is to be called first in machine hw_params callback before other CPU DAI functions. Thus it was enough that only omap_mcbsp_dai_set_dai_fmt cleared the mcbsp->regs structure. [Note that this was pure convention, it's always been OK to set things on init -- broonie] Now this doesn't hold anymore since machine drivers can set the DAI format only once on init time and thus mcbsp->regs may get out of sync when other CPU DAI functions are modifying them dynamically with different values between the calls. Therefore clear the accessed mcbsp->regs bits and bitfields in other functions too. Signed-off-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Cc: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 30 9月, 2011 1 次提交
-
-
由 Jarkko Nikula 提交于
Commit 75d9ac46 ("ASoC: Allow DAI formats to be specified in the dai_link") changed DAI format flag values and we cannot simply invert anymore e.g. frame-sync with ^= SND_SOC_DAIFMT_NB_IF (which was anyway misuse) as there is no anymore fixed bit position for bit-clock or frame-sync inversion. Fix this by relying only on DAI format flag values passed to us and by not making any assumption on individual bit positions. Signed-off-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 26 9月, 2011 1 次提交
-
-
由 Peter Ujfalusi 提交于
Fixes the following compile time warning: omap-mcbsp.c:519: warning: suggest explicit braces to avoid ambiguous ‘else’ Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 23 9月, 2011 1 次提交
-
-
由 Jarkko Nikula 提交于
Attempt to change McBSP CLKS source while another stream is active is not safe after commit d135865 ("OMAP: McBSP: implement functional clock switching via clock framework") in 2.6.37. CLKS parent clock switching using clock framework have to idle the McBSP before switching and then activate it again. This short break can cause a DMA transaction error to already running stream which halts and recovers only by closing and restarting the stream. This goes more fatal after commit e2fa61d4 ("OMAP3: l3: Introduce l3-interconnect error handling driver") in 2.6.39 where l3 driver detects a severe timeout error and does BUG_ON(). Fix this by not changing any configuration in omap_mcbsp_dai_set_dai_sysclk if the McBSP is already active. This test should have been here just from the beginning anyway. Signed-off-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
- 12 8月, 2011 1 次提交
-
-
由 Jarkko Nikula 提交于
My gmail account got disabled and I'm not going to reopen it. Signed-off-by: NJarkko Nikula <jarkko.nikula@bitmer.com> Acked-by: NLiam Girdwood <lrg@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 13 5月, 2011 1 次提交
-
-
由 Sanjeev Premi 提交于
Current checks for cpu type were too restrictive leading to failures for other silicons in same family. The problem was found while testing audio playback on AM37x and AM35x processors. But should exist on OMAP36xx as well. Signed-off-by: NSanjeev Premi <premi@ti.com> cc: Mark Brown <broonie@opensource.wolfsonmicro.com> cc: Liam Girdwood <lrg@ti.com> cc: Jarkko Nikula <jhnikula@gmail.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
- 11 5月, 2011 1 次提交
-
-
由 Peter Ujfalusi 提交于
Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Signed-off-by: NLiam Girdwood <lrg@ti.com>
-
- 25 2月, 2011 1 次提交
-
-
由 Kishon Vijay Abraham I 提交于
Removed the use of macros to obtain base address and DMA channel number. Instead use the McBSP driver API's that passes base address and DMA channel number to the client driver. Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 28 1月, 2011 1 次提交
-
-
由 Tony Lindgren 提交于
We want to have just CONFIG_ARCH_OMAP2, 3 and 4. The rest are nowadays just subcategories of these. Search and replace the following: ARCH_OMAP2420 SOC_OMAP2420 ARCH_OMAP2430 SOC_OMAP2430 ARCH_OMAP3430 SOC_OMAP3430 No functional changes. Signed-off-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NThomas Weber <weber@corscience.de> Acked-by: NSourav Poddar <sourav.poddar@ti.com>
-
- 23 12月, 2010 1 次提交
-
-
由 Jorge Eduardo Candelaria 提交于
This patch adds McBSP support for the OMAP4 CPU Signed-off-by: NJorge Eduardo Candelaria <jorge.candelaria@ti.com> Signed-off-by: NMargarita Olaya Cabrera <magi.olaya@ti.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 03 11月, 2010 1 次提交
-
-
由 Janusz Krzysztofik 提交于
In the new code introduced with commit cf4c87ab, "OMAP: McBSP: implement McBSP CLKR and FSR signal muxing via mach-omap2/mcbsp.c", the way omap1 build is supposed to bypass omap2 specific functionality doesn't optimize out all omap2 specific stuff. This breaks linking phase for omap1 machines, giving "undefined reference to `omap2_mcbsp1_mux_clkr_src'" and "undefined reference to `omap2_mcbsp1_mux_fsr_src'" errors. Fix it. Created and tested against linux-2.6.37-rc1. Signed-off-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NPaul Walmsley <paul@pwsan.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 09 10月, 2010 2 次提交
-
-
由 Paul Walmsley 提交于
Previously the OMAP McBSP ASoC driver implemented CLKS switching by using omap_ctrl_{read,write}l() directly. This is against policy; the OMAP System Control Module functions are not intended to be exported to drivers. These symbols are no longer exported, so as a result, the OMAP McBSP ASoC driver does not build as a module. Resolve the CLKS clock changing portion of this problem by creating a clock parent changing function that lives in arch/arm/mach-omap2/mcbsp.c, and modify the ASoC driver to use it. Due to the unfortunate way that McBSP support is implemented in ASoC and the OMAP tree, this symbol must be exported for use by sound/soc/omap/omap-mcbsp.c. Going forward, the McBSP device driver should be moved from arch/arm/*omap* into drivers/ or sound/soc/* and the CPU DAI driver should be implemented as a platform_driver as many other ASoC CPU DAI drivers are. These two steps should resolve many of the layering problems, which will rapidly reappear during a McBSP hwmod/PM runtime conversions. Signed-off-by: NPaul Walmsley <paul@pwsan.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Paul Walmsley 提交于
The OMAP ASoC McBSP code implemented CLKR and FSR signal muxing via direct System Control Module writes on OMAP2+. This required the omap_ctrl_{read,write}l() functions to be exported, which is against policy: the only code that should call those functions directly is OMAP core code, not device drivers. omap_ctrl_{read,write}*() are no longer exported, so the driver no longer builds as a module. Fix the pinmuxing part of the problem by removing calls to omap_ctrl_{read,write}l() from the OMAP ASoC McBSP code and implementing signal muxing functions in arch/arm/mach-omap2/mcbsp.c. Due to the unfortunate way that McBSP support is implemented in ASoC and the OMAP tree, these symbols must be exported for use by sound/soc/omap/omap-mcbsp.c. Going forward, the McBSP device driver should be moved from arch/arm/*omap* into drivers/ or sound/soc/*, and the CPU DAI driver should be implemented as a platform_driver as many other ASoC CPU DAI drivers are. These two steps should resolve many of the layering problems, which will rapidly reappear during a McBSP hwmod/PM runtime conversion. Signed-off-by: NPaul Walmsley <paul@pwsan.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 08 9月, 2010 1 次提交
-
-
由 G, Manjunath Kondaiah 提交于
This patch fixes sparse warning due non declaration of static function sound/soc/omap/omap-mcbsp.c:783:5: warning: symbol 'omap_mcbsp_st_info_volsw' was not declared. Should it be static? Signed-off-by: NG, Manjunath Kondaiah <manjugk@ti.com> Cc: alsa-devel@alsa-project.org Cc: Jarkko Nikula <jhnikula@gmail.com> Cc: Peter Ujfalusi <peter.ujfalusi@nokia.com> Cc: Liam Girdwood <lrg@slimlogic.co.uk> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Nishanth Menon <nm@ti.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 12 8月, 2010 1 次提交
-
-
由 Liam Girdwood 提交于
This patch extends the ASoC API to allow sound cards to have more than one CODEC and more than one platform DMA controller. This is achieved by dividing some current ASoC structures that contain both driver data and device data into structures that only either contain device data or driver data. i.e. struct snd_soc_codec ---> struct snd_soc_codec (device data) +-> struct snd_soc_codec_driver (driver data) struct snd_soc_platform ---> struct snd_soc_platform (device data) +-> struct snd_soc_platform_driver (driver data) struct snd_soc_dai ---> struct snd_soc_dai (device data) +-> struct snd_soc_dai_driver (driver data) struct snd_soc_device ---> deleted This now allows ASoC to be more tightly aligned with the Linux driver model and also means that every ASoC codec, platform and (platform) DAI is a kernel device. ASoC component private data is now stored as device private data. The ASoC sound card struct snd_soc_card has also been updated to store lists of it's components rather than a pointer to a codec and platform. The PCM runtime struct soc_pcm_runtime now has pointers to all its components. This patch adds DAPM support for ASoC multi-component and removes struct snd_soc_socdev from DAPM core. All DAPM calls are now made on a card, codec or runtime PCM level basis rather than using snd_soc_socdev. Other notable multi-component changes:- * Stream operations now de-reference less structures. * close_delayed work() now runs on a DAI basis rather than looping all DAIs in a card. * PM suspend()/resume() operations can now handle N CODECs and Platforms per sound card. * Added soc_bind_dai_link() to bind the component devices to the sound card. * Added soc_dai_link_probe() and soc_dai_link_remove() to probe and remove DAI link components. * sysfs entries can now be registered per component per card. * snd_soc_new_pcms() functionailty rolled into dai_link_probe(). * snd_soc_register_codec() now does all the codec list and mutex init. This patch changes the probe() and remove() of the CODEC drivers as follows:- o Make CODEC driver a platform driver o Moved all struct snd_soc_codec list, mutex, etc initialiasation to core. o Removed all static codec pointers (drivers now support > 1 codec dev) o snd_soc_register_pcms() now done by core. o snd_soc_register_dai() folded into snd_soc_register_codec(). CS4270 portions: Acked-by: NTimur Tabi <timur@freescale.com> Some TLV320aic23 and Cirrus platform fixes. Signed-off-by: NRyan Mallon <ryan@bluewatersys.com> TI CODEC and OMAP fixes Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Signed-off-by: NJarkko Nikula <jhnikula@gmail.com> Samsung platform and misc fixes :- Signed-off-by: NChanwoo Choi <cw00.choi@samsung.com> Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Reviewed-by: NJassi Brar <jassi.brar@samsung.com> Signed-off-by: NSeungwhan Youn <sw.youn@samsung.com> MPC8610 and PPC fixes. Signed-off-by: NTimur Tabi <timur@freescale.com> i.MX fixes and some core fixes. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> J4740 platform fixes:- Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> CC: Tony Lindgren <tony@atomide.com> CC: Nicolas Ferre <nicolas.ferre@atmel.com> CC: Kevin Hilman <khilman@deeprootsystems.com> CC: Sascha Hauer <s.hauer@pengutronix.de> CC: Atsushi Nemoto <anemo@mba.ocn.ne.jp> CC: Kuninori Morimoto <morimoto.kuninori@renesas.com> CC: Daniel Gloeckner <dg@emlix.com> CC: Manuel Lauss <mano@roarinelk.homelinux.net> CC: Mike Frysinger <vapier.adi@gmail.com> CC: Arnaud Patard <apatard@mandriva.com> CC: Wan ZongShun <mcuos.com@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 02 8月, 2010 4 次提交
-
-
由 Peter Ujfalusi 提交于
The use of sDMA packet mode in THRESHOLD mode removes the restriction on the period size. With the extended THRESHOLD mode user space can ask for any period size it wishes, and the driver will configure the sDMA and McBSP FIFO accordingly. Replace the hw_rule for the period size with static constraint, which will make sure that the period size will be always even (to avoid prime period size, which could be possible in mono stream) Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 Peter Ujfalusi 提交于
Utilize the sDMA controller's packet syncronization mode, when the McBSP FIFO is in use (by extending the THRESHOLD mode). When the sDMA is configured for packet mode, the sDMA frame size does not need to match with the McBSP threshold configuration. Uppon DMA request the sDMA will transfer packet size number of words, and still trigger interrupt on frame boundary. The patch extends the original THRESHOLD mode by doing the following: if (period_words <= max_threshold) Current THRESHOLD mode configuration Otherwise (period_words > max_threshold) McBSP threshold = sDMA packet size sDMA frame size = period size With the extended THRESHOLD mode we can remove the constraint for the maximum period size, since if the period size is bigger than the maximum allowed threshold, than the driver will switch to packet mode, and picks the best (biggest) threshold value, which can divide evenly the period size. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 Peter Ujfalusi 提交于
To make the code a bit more readable, change the indexed references to the omap_mcbsp_dai_dma_params elements with pointer. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 Peter Ujfalusi 提交于
In preparation for the extended threshold mode (sDMA packet mode support), the code need to be restructured. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 03 6月, 2010 2 次提交
-
-
由 Peter Ujfalusi 提交于
OMAP McBSP FIFO is word structured: McBSP2 has 1024 + 256 = 1280 word long buffer, McBSP1,3,4,5 has 128 word long buffer This means, that the size of the FIFO depends on the McBSP word size configuration. For example on McBSP3: 16bit samples: size is 128 * 2 = 256 bytes 32bit samples: size is 128 * 4 = 512 bytes It is simpler to place constraint for buffer and period based on channels. McBSP3 as example again (16 or 32 bit samples): 1 channel (mono): size is 128 frames (128 words) 2 channels (stereo): size is 128 / 2 = 64 frames (2 * 64 words) 4 channels: size is 128 / 4 = 32 frames (4 * 32 words) Use the second method to place hw_rule on buffer size, and in threshold mode to period size. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolsfonmicro.com> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 Peter Ujfalusi 提交于
Save the word length configuration of McBSP, and use that information to calculate, and configure the threshold in McBSP. Previously the calculation was only correct when the stream had 16bit audio. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolsfonmicro.com> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 14 5月, 2010 1 次提交
-
-
由 Sergey Lapin 提交于
This patchs should allow to use 32-bit samples on e.g. TLV320AIC3x codec, or others. Signed-off-by: NSergey Lapin <slapin@ossfans.org> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 06 4月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
This fixes a memory corruption when ASoC devices are used in full-duplex mode. Specifically for pxa-ssp code, where this pointer is dynamically allocated for each direction and destroyed upon each stream start. All other platforms are fixed blindly, I couldn't even compile-test them. Sorry for any breakage I may have caused. [Note that this is a backported version for 2.6.34. Upstream commit is fd23b7de] Signed-off-by: NDaniel Mack <daniel@caiaq.de> Reported-by: NSven Neumann <s.neumann@raumfeld.com> Reported-by: NMichael Hirsch <m.hirsch@raumfeld.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 20 3月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
This fixes a memory corruption when ASoC devices are used in full-duplex mode. Specifically for pxa-ssp code, where this pointer is dynamically allocated for each direction and destroyed upon each stream start. All other platforms are fixed blindly, I couldn't even compile-test them. Sorry for any breakage I may have caused. Reported-by: NSven Neumann <s.neumann@raumfeld.com> Reported-by: NMichael Hirsch <m.hirsch@raumfeld.com> Signed-off-by: NDaniel Mack <daniel@caiaq.de> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 19 3月, 2010 1 次提交
-
-
由 Peter Ujfalusi 提交于
Basic support for Left Justified coding for OMAP McBSP. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 12 3月, 2010 1 次提交
-
-
由 Peter Ujfalusi 提交于
Use the new delay calback function to report the delay through ALSA for application caused by the internal FIFO. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 24 2月, 2010 1 次提交
-
-
由 Ilkka Koskinen 提交于
Add ASoC interface for OMAP McBSP2 and McBSP3 sidetones. Signed-off-by: NIlkka Koskinen <ilkka.koskinen@nokia.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Tested-by: NJarkko Nikula <jhnikula@gmail.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-