diff options
author | Takashi Iwai <tiwai@suse.de> | 2014-08-04 12:28:21 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2014-08-04 12:28:21 -0400 |
commit | e9e3bdffe38b256f920eacc455d30deba5e97655 (patch) | |
tree | cfa546f6370c117e012c12605da22ce189542127 /sound/core | |
parent | f42bb22243d2ae264d721b055f836059fe35321f (diff) | |
parent | ae34a78c430c37c06404f032fb04e51315204281 (diff) |
Merge tag 'asoc-v3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Updates for v3.17
This has been a pretty exciting release in terms of the framework, we've
finally got support for multiple CODECs attached to a single DAI link
which has been something there's been interest in as long as I've been
working on ASoC. A big thanks to Benoit and Misael for their work on
this.
Otherwise it's been a fairly standard release for development, including
more componentisation work from Lars-Peter and a good selection of both
CODEC and CPU drivers.
- Support for multiple CODECs attached to a single DAI, enabling
systems with for example multiple DAC/speaker drivers on a single
link, contributed by Benoit Cousson based on work from Misael Lopez
Cruz.
- Support for byte controls larger than 256 bytes based on the use of
TLVs contributed by Omair Mohammed Abdullah.
- More componentisation work from Lars-Peter Clausen.
- The remainder of the conversions of CODEC drivers to params_width()
- Drivers for Cirrus Logic CS4265, Freescale i.MX ASRC blocks, Realtek
RT286 and RT5670, Rockchip RK3xxx I2S controllers and Texas Instruments
TAS2552.
- Lots of updates and fixes, especially to the DaVinci, Intel,
Freescale, Realtek, and rcar drivers.
Diffstat (limited to 'sound/core')
-rw-r--r-- | sound/core/control.c | 6 | ||||
-rw-r--r-- | sound/core/pcm_dmaengine.c | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/sound/core/control.c b/sound/core/control.c index f0b0e14497a5..b9611344ff9e 100644 --- a/sound/core/control.c +++ b/sound/core/control.c | |||
@@ -1406,11 +1406,11 @@ static long snd_ctl_ioctl(struct file *file, unsigned int cmd, unsigned long arg | |||
1406 | case SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS: | 1406 | case SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS: |
1407 | return snd_ctl_subscribe_events(ctl, ip); | 1407 | return snd_ctl_subscribe_events(ctl, ip); |
1408 | case SNDRV_CTL_IOCTL_TLV_READ: | 1408 | case SNDRV_CTL_IOCTL_TLV_READ: |
1409 | return snd_ctl_tlv_ioctl(ctl, argp, 0); | 1409 | return snd_ctl_tlv_ioctl(ctl, argp, SNDRV_CTL_TLV_OP_READ); |
1410 | case SNDRV_CTL_IOCTL_TLV_WRITE: | 1410 | case SNDRV_CTL_IOCTL_TLV_WRITE: |
1411 | return snd_ctl_tlv_ioctl(ctl, argp, 1); | 1411 | return snd_ctl_tlv_ioctl(ctl, argp, SNDRV_CTL_TLV_OP_WRITE); |
1412 | case SNDRV_CTL_IOCTL_TLV_COMMAND: | 1412 | case SNDRV_CTL_IOCTL_TLV_COMMAND: |
1413 | return snd_ctl_tlv_ioctl(ctl, argp, -1); | 1413 | return snd_ctl_tlv_ioctl(ctl, argp, SNDRV_CTL_TLV_OP_CMD); |
1414 | case SNDRV_CTL_IOCTL_POWER: | 1414 | case SNDRV_CTL_IOCTL_POWER: |
1415 | return -ENOPROTOOPT; | 1415 | return -ENOPROTOOPT; |
1416 | case SNDRV_CTL_IOCTL_POWER_STATE: | 1416 | case SNDRV_CTL_IOCTL_POWER_STATE: |
diff --git a/sound/core/pcm_dmaengine.c b/sound/core/pcm_dmaengine.c index 76cbb9ec953a..6542c4083594 100644 --- a/sound/core/pcm_dmaengine.c +++ b/sound/core/pcm_dmaengine.c | |||
@@ -65,13 +65,15 @@ int snd_hwparams_to_dma_slave_config(const struct snd_pcm_substream *substream, | |||
65 | enum dma_slave_buswidth buswidth; | 65 | enum dma_slave_buswidth buswidth; |
66 | int bits; | 66 | int bits; |
67 | 67 | ||
68 | bits = snd_pcm_format_physical_width(params_format(params)); | 68 | bits = params_physical_width(params); |
69 | if (bits < 8 || bits > 64) | 69 | if (bits < 8 || bits > 64) |
70 | return -EINVAL; | 70 | return -EINVAL; |
71 | else if (bits == 8) | 71 | else if (bits == 8) |
72 | buswidth = DMA_SLAVE_BUSWIDTH_1_BYTE; | 72 | buswidth = DMA_SLAVE_BUSWIDTH_1_BYTE; |
73 | else if (bits == 16) | 73 | else if (bits == 16) |
74 | buswidth = DMA_SLAVE_BUSWIDTH_2_BYTES; | 74 | buswidth = DMA_SLAVE_BUSWIDTH_2_BYTES; |
75 | else if (bits == 24) | ||
76 | buswidth = DMA_SLAVE_BUSWIDTH_3_BYTES; | ||
75 | else if (bits <= 32) | 77 | else if (bits <= 32) |
76 | buswidth = DMA_SLAVE_BUSWIDTH_4_BYTES; | 78 | buswidth = DMA_SLAVE_BUSWIDTH_4_BYTES; |
77 | else | 79 | else |