- 26 5月, 2015 2 次提交
-
-
由 Alexandre Belloni 提交于
It is currently possible to have CONFIG_SND_ATMEL_SOC_SSC=y with either CONFIG_SND_ATMEL_SOC_PDC=m or CONFIG_SND_ATMEL_SOC_DMA=m. This results in a driver that compiles but does not link with this kind of error: sound/built-in.o: In function `atmel_ssc_set_audio': (.text+0x87d90): undefined reference to `atmel_pcm_pdc_platform_register' sound/built-in.o: In function `atmel_ssc_put_audio': (.text+0x8879a): undefined reference to `atmel_pcm_pdc_platform_unregister' Solve that by compiling the selected PCM driver (PDC, DMA or both) in the Atmel SSC DAI driver. Reported-by: NRandy Dunlap <rdunlap@infradead.org> Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Alexandre Belloni 提交于
Enclose the options in if SND_ATMEL_SOC ... endif to remove the dependency. Also remove the useless description for SND_ATMEL_SOC_SSC. Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 28 4月, 2015 1 次提交
-
-
由 Lars-Peter Clausen 提交于
Whether residue can be reported or not is not a property of the audio controller but of the DMA controller. The FLAG_NO_RESIDUE was initially added when the DMAengine framework had no support for describing the residue reporting capabilities of the controller. Support for this was added quite a while ago and recently the DMAengine framework started to complain if a driver does not describe its capabilities and a lot of patches have been merged that add support for this where it was missing. So it should be safe to assume that driver on actively used platforms properly implement the DMA capabilities API. This patch makes the FLAG_NO_RESIDUE internal and no longer allows audio controller drivers to manually set the flag. If a DMA driver against expectations does not support reporting its capabilities for now the generic DMAengine PCM driver will now emit a warning and simply assume that residue reporting is not supported. In the future this might be changed to aborting with an error. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 27 4月, 2015 1 次提交
-
-
由 Lars-Peter Clausen 提交于
According to the schematics the both LHPOUT and RHPOUT are connected to the external connector. RHPOUT is missing from the DAPM routes, but otherwise they seem to be complete. This patch adds the missing route and then sets the fully_routed flag for the card. This allows to remove all the manual calls to snd_soc_dapm_nc_pin(). Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 12 4月, 2015 2 次提交
-
-
由 Lars-Peter Clausen 提交于
The Atmel ASoC machine drivers don't have any compile time arch dependencies anymore. Make it possible to select them when COMPILE_TEST is enabled to get better compile test coverage. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Lars-Peter Clausen 提交于
The SND_AT91_SOC_SAM9G20_WM8731 and SND_AT91_SOC_SAM9X5_WM8731 machine driver symbols select SND_SOC_WM8731 which depends on SND_SOC_I2C_AND_SPI. So the machine driver symbols need to depend on SND_SOC_I2C_AND_SPI as well, otherwise we might end up with a invalid configuration, which will sooner or later upset the randconfig auto-builders. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 02 4月, 2015 2 次提交
-
-
由 Alexandre Belloni 提交于
atmel-pcm-dma is not limited to a buffer size of 64kB like atmel-pcm-pdc. Increase buffer_bytes_max to 512kB to allow for higher bit rates (i.e. 32bps at 192kHz) to work correctly. By default, keep the prealloc at 64kB. Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Alexandre Belloni 提交于
atmel-pcm.c was split into two files to create a generic framework for both PDC and DMA. atmel-pcm-dma.c is using the generic dmaengine framework since 95e0e07e (ASoC: atmel-pcm: use generic dmaengine framework). Merge atmel-pcm.c in atmel-pcm-pdc.c as this is now the only user. Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 03 3月, 2015 1 次提交
-
-
由 Alexandre Belloni 提交于
Atmel based boards can now only be used with device tree. Drop non DT initialization. Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 10 2月, 2015 1 次提交
-
-
由 Peter Rosin 提交于
When the SSC acts as BCK master, use a ratnum rule to limit the rate instead of only doing the standard rates. When the SSC acts as BCK slave, allow any BCK frequency up to the SSC master clock, divided by either of 2, 3 or 6. Put a cap at 384kHz. Who's /ever/ going to need more than that? The divider of 2, 3 or 6 is selected based on the Serial Clock Ratio Considerations section from the SSC documentation: The Transmitter and the Receiver can be programmed to operate with the clock signals provided on either the TK or RK pins. This allows the SSC to support many slave-mode data transfers. In this case, the maximum clock speed allowed on the RK pin is: - Peripheral clock divided by 2 if Receiver Frame Synchro is input - Peripheral clock divided by 3 if Receiver Frame Synchro is output In addition, the maximum clock speed allowed on the TK pin is: - Peripheral clock divided by 6 if Transmit Frame Synchro is input - Peripheral clock divided by 2 if Transmit Frame Synchro is output Signed-off-by: NPeter Rosin <peda@axentia.se> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 02 2月, 2015 1 次提交
-
-
由 Bo Shen 提交于
As DMA framework request DMA using direction only in prep_slave function, (The At91 xdma driver has adapted to this request). So won't check direction when do DMA configuration. Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 30 1月, 2015 4 次提交
-
-
由 Bo Shen 提交于
Only using PDC, it needs to clean PDC registers. Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Bo Shen 提交于
In startup function, enable ssc clock and in shutdown function, disable clock. And also remove disable ssc in shutdown function, as ssc is disabled in prepare function. Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Bo Shen 提交于
When SCC work in DSP A mode, the data outputs/inputs are shift out on falling edge, the frame sync are sample on the rising edge. Reported-by: NSongjun Wu <songjun.wu@atmel.com> Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Peter Rosin 提交于
Signed-off-by: NPeter Rosin <peda@axentia.se> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 28 1月, 2015 2 次提交
-
-
由 Bo Shen 提交于
As the clock can be get from TK/RK pin, so remove the comments. Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Bo Shen 提交于
According to the I2S specification information as following: - WS = 0, channel 1 (left) - WS = 1, channel 2 (right) So, the start event should be TF/RF falling edge. Reported-by: NSongjun Wu <songjun.wu@atmel.com> Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org> Cc: stable@vger.kernel.org
-
- 15 1月, 2015 1 次提交
-
-
由 Alexandre Belloni 提交于
The SOC_AT91SAM9X5 option is going to be removed, only depend on ARCH_AT91 like for the other drivers. Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 07 1月, 2015 2 次提交
-
-
由 Alexandre Belloni 提交于
A mach/ header is included but never used. Simply remove it. Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Lars-Peter Clausen 提交于
Set the dai_fmt field in the dai_link struct instead of manually calling snd_soc_dai_fmt(). This makes the code cleaner and shorter. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 08 12月, 2014 1 次提交
-
-
由 Matthieu Crapet 提交于
Signed-off-by: NMatthieu Crapet <mcrapet@gmail.com> Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 02 12月, 2014 2 次提交
-
-
由 Nicolas Ferre 提交于
Now that the driver snd-soc-afeb9260.c is deleted, remove its Kconfig option. Reported-by: NPaul Bolle <pebolle@tiscali.nl> Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
由 Nicolas Ferre 提交于
During the removal of all AT91 !DT boards, we removed the AFEB9260. This driver is !DT and was only used by this board, so we delete it as well. Reported-by: NPaul Bolle <pebolle@tiscali.nl> Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 10 11月, 2014 1 次提交
-
-
由 Takashi Iwai 提交于
Add a new helper function snd_pcm_stop_xrun() to the standard sequnce lock/snd_pcm_stop(XRUN)/unlock by a single call, and replace the existing open codes with this helper. The function checks the PCM running state to prevent setting the wrong state, too, for more safety. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 03 11月, 2014 1 次提交
-
-
由 Peter Rosin 提交于
The CMR divider register is shared by playback and capture. The SSC driver therefore tries to enforce rules so that the needed register content do not conflict during simultaneous playback/capture. However, the implementation also prevents changing the register content in half-duplex scenarios, which is needed when using the OSS API. Thus, only lock the divider if there is a stream in the other direction. Fixes the below program to not fail with the atmel ssc dai in master mode. int main(void) { int fd; int format; int channels; int speed; if ((fd = open("/dev/dsp", O_WRONLY, 0)) == -1) { perror("open"); return 1; } format = AFMT_S16_LE; if (ioctl(fd, SNDCTL_DSP_SETFMT, &format) == -1) { perror("SNDCTL_DSP_SETFMT"); return 1; } channels = 2; if (ioctl(fd, SNDCTL_DSP_CHANNELS, &channels) == -1) { perror("SNDCTL_DSP_CHANNELS"); return 1; } speed = 22025; if (ioctl(fd, SNDCTL_DSP_SPEED, &speed) == -1) { perror("SNDCTL_DSP_SPEED"); return 1; } return 0; } Signed-off-by: NPeter Rosin <peda@axentia.se> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@kernel.org>
-
- 20 10月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
A platform_driver does not need to set an owner, it will be populated by the driver core. Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 21 6月, 2014 1 次提交
-
-
由 Bo Shen 提交于
When SSC work as master, it will generate the frame sync signal. On old SoCs, it only supports frame sync length less or equal to 16bits, on newer SoCs, it supports frame sync length extension, which can support frame size larger than 16 bits. So, add this to make it supports playback 24/32 bits audio clips. Signed-off-by: NBo Shen <voice.shen@atmel.com> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 10 6月, 2014 1 次提交
-
-
由 Bo Shen 提交于
Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 20 5月, 2014 1 次提交
-
-
由 Jarkko Nikula 提交于
ALSA SoC core marks widgets as connected by default when they are initialized in snd_soc_dapm_new_control() so there is no need to call snd_soc_dapm_enable_pin() from machine driver init functions. Signed-off-by: NJarkko Nikula <jarkko.nikula@linux.intel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 13 5月, 2014 1 次提交
-
-
由 Lars-Peter Clausen 提交于
Suspend/resume support for the atmel-pcm-pdc driver was broken in commit f0fba2ad ("ASoC: multi-component - ASoC Multi-Component Support"). It essentially reverted the modifications done in commit 10cab262 ("ASoC: Change how suspend and resume obtain the PCM runtime"). The suspend and resume handlers at the beginning check if dai->runtime is not NULL, but dai->runtime is always NULL, hence the code never runs. Considering that nobody noticed any problems in the last 4 years since the code was broken and that the driver does not set SNDRV_PCM_INFO_RESUME, which means applications are expected to stop and restart the audio stream during suspend/resume, it is probably safe to assume that his code is not needed and can be removed. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 08 5月, 2014 1 次提交
-
-
由 Nicolas Ferre 提交于
This include file is about to disapear. In addition it is useless for this code. So it is time to remove it. Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Acked-by: NMark Brown <broonie@linaro.org>
-
- 02 5月, 2014 1 次提交
-
-
由 Arnd Bergmann 提交于
The WM8904 codec driver needs I2C to be enabled, so the SND_ATMEL_SOC_WM8904 option also requires this. Found using randconfig build testing. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NXia Kaixu <kaixu.xia@linaro.org> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 10 3月, 2014 1 次提交
-
-
由 Lars-Peter Clausen 提交于
Use table based setup to register the DAPM widgets and routes. This on one hand makes the code a bit shorter and cleaner and on the other hand the board level DAPM elements get registered in the card's DAPM context rather than in the CODEC's DAPM context. While we are at it also remove the snd_soc_dapm_enable_pin() in the init callback. Pins are enabled by default. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Tested-by: NBo Shen <voice.shen@atmel.com> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 07 3月, 2014 1 次提交
-
-
由 Max Filippov 提交于
Now that AIC23 supports two control interfaces all existing I2C users should select I2C variant. Signed-off-by: NMax Filippov <jcmvbkbc@gmail.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 13 2月, 2014 1 次提交
-
-
由 Bo Shen 提交于
When SSC works in slave mode, according to the hardware design, the clock can get from TK pin, also can get from RK pin. So, add one parameter to choose where the clock from. Signed-off-by: NBo Shen <voice.shen@atmel.com> Acked-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 07 1月, 2014 1 次提交
-
-
由 Lars-Peter Clausen 提交于
The ASoC core assumes that the PCM component of the ASoC card transparently moves data around and does not impose any restrictions on the memory layout or the transfer speed. It ignores all fields from the snd_pcm_hardware struct for the PCM driver that are related to this. Setting these fields in the PCM driver might suggest otherwise though, so rather not set them. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Acked-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 31 12月, 2013 1 次提交
-
-
由 Bo Shen 提交于
When call snd_soc_register_card, it will set driver data to this device through dev_set_drvdata, then in driver, no need to call platform_set_drvdata again, so remove it. Signed-off-by: NBo Shen <voice.shen@atmel.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
- 13 12月, 2013 1 次提交
-
-
由 Nicolas Ferre 提交于
This AT91 specific Kconfig option removed the code that dealt with programmable clocks. Each AT91 SoC embeds programmable clocks and there is little gain to remove this code in case that such a clock is not used. If this option is not selected, it causes certain drivers to fail to build. We simply remove this option instead of adding code just to build a workaround. Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NKevin Hilman <khilman@linaro.org>
-
- 04 12月, 2013 2 次提交
-
-
由 Bo Shen 提交于
Change sam9x5 with wm8731 work in DSP A mode, this will fix the left/right channel swap issue. Signed-off-by: NBo Shen <voice.shen@atmel.com> Tested-by: NRichard Genoud <richard.genoud@gmail.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-
由 Bo Shen 提交于
According to the SSC specifiation, it should be enabled after DMA is enabled. So, add trigger operation to make sure the right sequence. Signed-off-by: NBo Shen <voice.shen@atmel.com> Tested-by: NRichard Genoud <richard.genoud@gmail.com> Signed-off-by: NMark Brown <broonie@linaro.org>
-