- 03 10月, 2013 1 次提交
-
-
由 Guenter Roeck 提交于
irq_of_parse_and_map() returns 0 on error, not NO_IRQ. Fix the following xtensa:allmodconfig build error. sound/soc/fsl/fsl_ssi.c:705:26: error: 'NO_IRQ' undeclared (first use in this function) make[4]: *** [sound/soc/fsl/fsl_ssi.o] Error 1 Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Grant Likely <grant.likely@linaro.org> Signed-off-by: NGuenter Roeck <linux@roeck-us.net> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 27 8月, 2013 1 次提交
-
-
由 Fabio Estevam 提交于
Driver core clears the driver data to NULL after device_release or on probe failure, so just remove it from here. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 22 8月, 2013 4 次提交
-
-
由 Michael Grzeschik 提交于
We have to disable the ssi irq, as it is not safe for all platforms to write back into the status register. It also runs into non-linefetch aborts. Signed-off-by: NMichael Grzeschik <m.grzeschik@pengutronix.de> Signed-off-by: NMark Brown <broonie@linaro.org>
-
由 Michael Grzeschik 提交于
imx-pcm-fiq is checking for TE RE bits, so enable them only if necessary. Signed-off-by: NMichael Grzeschik <m.grzeschik@pengutronix.de> Signed-off-by: NMark Brown <broonie@linaro.org>
-
由 Steffen Trumtrar 提交于
The chip errata for the i.MX35, Rev.2 has the following errata: ENGcm06222: SSI:Transmission does not take place in bit length early frame sync configuration The workaround states, that TX_EN and SSI_EN bits should be set in the same register write. As the next errata in the document (ENGcm06532) says to always write RX_EN and TX_EN in the same register write in network mode. Therefore include the whole write to CCSR_SSI_SCR_TE and CCSR_SSI_SCR_RE into the write to CCSR_SSI_SCR_SSIEN Signed-off-by: NSteffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: NMark Brown <broonie@linaro.org>
-
由 Markus Pargmann 提交于
This patch adds ac97-slave support. For ac97, the registers have to be setup earlier than for other ssi modes because there is some communication with the external device before streaming. So this patch introduces a fsl_ssi_setup function to setup the registers for different ssi operation modes seperately. This patch was tested with imx27-pca100. Signed-off-by: NMarkus Pargmann <mpa@pengutronix.de> Tested-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 20 8月, 2013 1 次提交
-
-
由 Fabio Estevam 提交于
In fsl_ssi_remove() we need to remove the resources in the opposite order that they were acquired in probe. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 07 8月, 2013 2 次提交
-
-
由 Markus Pargmann 提交于
There may be some platforms using fsl-ssi that do not have a DMA driver with generic DMA bindings. So this patch adds support for the generic DMA bindings, while still accepting the old "fsl,dma-events" property if "dmas" is not found. Signed-off-by: NMarkus Pargmann <mpa@pengutronix.de> Tested-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
由 Markus Pargmann 提交于
Add support for non-dma pcm for imx platforms with imx-pcm-fiq support. Instead of imx-pcm-audio, in this case imx-pcm-fiq-audio device is added and the SIER flags are set differently. We need imx-pcm-fiq for some boards that use an incompatible codec. imx-pcm-fiq handles those codecs differently and allows to operate with them. DMA is not possible because some data sent by the codecs, e.g. wm9712, is not in the datastream. Also some data is mixed up in the fifos, so that we need to sort them out manually. Signed-off-by: NMarkus Pargmann <mpa@pengutronix.de> Tested-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 26 7月, 2013 1 次提交
-
-
由 Nicolin Chen 提交于
Let CPU DAI drivers set SDMA periperal type directly to support more dma types(SPDIF, ESAI) other than only two for SSI. This will easily allow some non-SSI drivers to use the imx-pcm-dma as well. Signed-off-by: NNicolin Chen <b42378@freescale.com> Acked-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 22 7月, 2013 1 次提交
-
-
由 Fabio Estevam 提交于
Add MODULE_ALIAS, so that auto module loading can work. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Acked-by: NTimur Tavi <timur@tabi.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 19 7月, 2013 1 次提交
-
-
由 Mark Brown 提交于
Use the ARM version by default as that's the more generally portable one, it doesn't matter if they work well on random platforms when the goal is only build coverage. Signed-off-by: NMark Brown <broonie@linaro.org> Acked-by: NTimur Tabi <timur@tabi.org>
-
- 17 7月, 2013 2 次提交
-
-
由 Fabio Estevam 提交于
clk_prepare_enable() may fail, so let's check its return value and propagate it in the case of error. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
由 Fabio Estevam 提交于
Using devm_ functions can make the code cleaner and smaller. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 15 7月, 2013 1 次提交
-
-
由 Nicolin Chen 提交于
The code enabled SSIEN when triggered by SNDRV_PCM_TRIGGER_START, so move the disable code to SNDRV_PCM_TRIGGER_STOP for symmetric. This also allows us to use the SSI driver more flexible so that it can support some use cases like "aplay S16_LE.wav S24_LE.wav" which would call the driver in sequence like: startup()->hw_params(S16_LE)->trigger(START)->tirgger(STOP)-> hw_params(S24_LE)->trigger(START)->tirgger(STOP)->shutdown() If we disable SSIEN in shutdown(), the second hw_params() would bypass the sample bits setting while using symmetric_rate. Signed-off-by: NNicolin Chen <b42378@freescale.com> Acked-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 15 5月, 2013 1 次提交
-
-
由 Shawn Guo 提交于
Rather than instantiating imx-pcm-audio to call imx_pcm_dma_init(), fsl_ssi can just directly call it to save the use of imx-pcm-audio. With this change, fsl_ssi becomes not only a cpu DAI but also a platform device, so updates platform device setup in imx-sgtl5000 accordingly. Signed-off-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 17 4月, 2013 1 次提交
-
-
由 Lars-Peter Clausen 提交于
This allows us to access the DAI DMA data when we create the PCM. We'll use this when converting imx to generic DMA engine PCM driver. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Tested-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 05 4月, 2013 1 次提交
-
-
由 Lars-Peter Clausen 提交于
Use the common DAI DMA data struct for fsl/imx, this allows us to use the common helper function to configure the DMA slave config based on the DAI DMA data. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Tested-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 27 3月, 2013 1 次提交
-
-
由 Kuninori Morimoto 提交于
Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 26 3月, 2013 1 次提交
-
-
由 Lars-Peter Clausen 提交于
Currently the imx_dma_data struct, which gets passed to the dmaengine driver, is allocated and constructed in the pcm driver from the data stored in the dma_params struct. The dma_params struct gets passed to the pcm driver from the dai driver. Instead of going this route of indirection embed the dma_data struct directly into the dma_params struct and let the dai driver fill it in. This allows us to simplify the imx-pcm-dma driver quite a bit, since it doesn't have care about memory managing the imx_dma_data struct anymore. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Tested-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 09 12月, 2012 1 次提交
-
-
由 Bill Pemberton 提交于
CONFIG_HOTPLUG is going away as an option. As result the __dev* markings will be going away. Remove use of __devinit, __devexit_p, __devinitdata, __devinitconst, and __devexit. Signed-off-by: NBill Pemberton <wfp5p@virginia.edu> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 05 6月, 2012 1 次提交
-
-
由 Mark Brown 提交于
This reverts commit 014e5b56 since PowerPC doesn't use clkdev and hasn't implemented devm_clk_get() itself. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 04 6月, 2012 1 次提交
-
-
由 Richard Zhao 提交于
Signed-off-by: NRichard Zhao <richard.zhao@freescale.com> Acked-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 01 4月, 2012 4 次提交
-
-
由 Shawn Guo 提交于
For power saving, most IMX platform initilization code turns off modules' clock, and expects driver turn on clock as needed. Signed-off-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Shawn Guo 提交于
The dma peripheral_type for SSI should be IMX_DMATYPE_SSI_SP if the SSI is on SPBA bus. Signed-off-by: NShawn Guo <shawn.guo@linaro.org> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Shawn Guo 提交于
Makes necessary changes on fsl_ssi to let it work with imx pcm and machine drivers. Signed-off-by: NShawn Guo <shawn.guo@linaro.org> Acked-by: NSascha Hauer <s.hauer@pengutronix.de> Acked-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Shawn Guo 提交于
Provide different pair of accessors for accessing SSI registers on PowerPC and ARM/IMX, so that fsl_ssi driver can be built on both architectures. Signed-off-by: NShawn Guo <shawn.guo@linaro.org> Acked-by: NSascha Hauer <s.hauer@pengutronix.de> Acked-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 09 3月, 2012 1 次提交
-
-
由 Shawn Guo 提交于
Check /compatible rather than /model to determine the machine name. The p1022ds older device trees get a different /model from the new ones, while /compatible is consistent there, so checking /compatible will save the bother of detecting older p1022ds device trees. Signed-off-by: NShawn Guo <shawn.guo@linaro.org> Acked-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 29 11月, 2011 1 次提交
-
-
由 Axel Lin 提交于
Factor out some boilerplate code. Signed-off-by: NAxel Lin <axel.lin@gmail.com> Acked-by: NTimur Tabi <timur@freescale.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>
-
- 15 11月, 2011 1 次提交
-
-
由 Timur Tabi 提交于
Commit 6992f533 ("sysfs: Use one lockdep class per sysfs attribute") requires 'struct attribute' objects to be initialized with sysfs_attr_init(). Signed-off-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
- 16 9月, 2011 1 次提交
-
-
由 Timur Tabi 提交于
The Freescale SSI audio controller supports "synchronous" and "asynchronous" modes. In synchronous mode, playback and capture use the same input clock, so sample rates must be the same during simultaneous playback and capture. Unfortunately, the code which supports asynchronous mode is just broken in various ways. In particular, it was constraining sample sizes as well as the sample rate. The fix also allows us to simplify the code by eliminating the 'asynchronous', 'playback', and 'capture' variables that were used to keep track of playback and capture streams. Unfortunately, it turns out that simulataneous playback and record does not actually work on the only platform that supports asynchronous mode: the Freescale P1022DS reference board. If a second stream is started, the SSI grinds to halt for both streams. This is true even if the P1022 is configured for synchronous mode, so it's likely a hardware problem that needs to be worked around. Signed-off-by: NTimur Tabi <timur@freescale.com> Acked-by: NLiam Girdwood <lrg@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 17 8月, 2011 1 次提交
-
-
由 Timur Tabi 提交于
The PowerPC Freescale SSI driver is claiming the IRQ when the IRQ when the device is opened, which means that the /proc/interrupts entry for the SSI exists only during playback or capture. This also meant that the user won't know that the IRQ number is wrong until he tries to use the device. Instead, we should claim the IRQ when the device is probed. Signed-off-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 14 6月, 2011 1 次提交
-
-
由 Jiri Kosina 提交于
This is a partial revert of 28f65c11 ("treewide: Convert uses of struct resource to resource_size(ptr)") as the code is rewritten in the sound tree and thus the change is obsolete. Reported-by: NStephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 10 6月, 2011 1 次提交
-
-
由 Joe Perches 提交于
Several fixes as well where the +1 was missing. Done via coccinelle scripts like: @@ struct resource *ptr; @@ - ptr->end - ptr->start + 1 + resource_size(ptr) and some grep and typing. Mostly uncompiled, no cross-compilers. Signed-off-by: NJoe Perches <joe@perches.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 09 6月, 2011 1 次提交
-
-
由 Timur Tabi 提交于
Device tree integer properties are encoded in big-endian format, but some of the Freescale ASoC drivers were assuming that the host is in big-endian format as well. Although this is true, it's better to use endian-safe accessors. Also add a check for a failed ioremap() call in the SSI driver. Signed-off-by: NTimur Tabi <timur@freescale.com> Acked-by: NLiam Girdwood <lrg@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 01 3月, 2011 1 次提交
-
-
由 Grant Likely 提交于
Get rid of users of of_platform_driver in drivers/sound. The of_platform_{,un}register_driver functions are going away, so the users need to be converted to using the platform_bus_type directly. Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
-
- 21 8月, 2010 1 次提交
-
-
由 Timur Tabi 提交于
'struct of_device' no longer exists, and its functionality has been merged into platform_device. Update the MPC8610 HPCD audio drivers (fsl_ssi, fsl_dma, and mpc8610_hpcd) accordingly. Also add a #include for slab.h, which is now needed for kmalloc and kfree. Signed-off-by: NTimur Tabi <timur@freescale.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 19 8月, 2010 1 次提交
-
-
由 Timur Tabi 提交于
Add code that programs the DMA and SSI controllers differently based on the FIFO depth of the SSI. The SSI devices on the MPC8610 and the P1022 are identical in every way except one: the transmit and receive FIFO depth. On the MPC8610, the depth is eight. On the P1022, it's fifteen. The device tree nodes for the SSI include a "fsl,fifo-depth" property that specifies the FIFO depth. Signed-off-by: NTimur Tabi <timur@freescale.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 12 8月, 2010 1 次提交
-
-
由 Timur Tabi 提交于
Add support for adding "status = disabled" to an SSI node to incidate that it is not wired on the board. This replaces the not-so-intuitive previous method of omitting a codec-handle property. Signed-off-by: NTimur Tabi <timur@freescale.com> Acked-by: NKumar Gala <galak@kernel.crashing.org> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-