diff options
author | Timo Teräs <timo.teras@iki.fi> | 2015-12-18 06:38:33 +0000 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2015-12-18 06:59:06 +0000 |
commit | 57a77853ac8b73c8d596d76b0cfc817778c73699 (patch) | |
tree | 9d4e78c2d539b7fdb79f221d5af7eabb2e652e8a /main/linux-rpi/rpi-dma-i2s-fix.patch | |
parent | 218c9e63e3db210702c05f5122417f9dddcbe5dd (diff) | |
download | aports-57a77853ac8b73c8d596d76b0cfc817778c73699.tar.bz2 aports-57a77853ac8b73c8d596d76b0cfc817778c73699.tar.xz |
main/linux-rpi: upgrade to 4.1.15, update patches and config
Diffstat (limited to 'main/linux-rpi/rpi-dma-i2s-fix.patch')
-rw-r--r-- | main/linux-rpi/rpi-dma-i2s-fix.patch | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/main/linux-rpi/rpi-dma-i2s-fix.patch b/main/linux-rpi/rpi-dma-i2s-fix.patch deleted file mode 100644 index 82fa6dcf7c..0000000000 --- a/main/linux-rpi/rpi-dma-i2s-fix.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 8a2e9aec63f46deceacd0a92a66835a07fb18a31 Mon Sep 17 00:00:00 2001 -From: Matthias Reichl <hias@horus.com> -Date: Sun, 8 Nov 2015 16:58:57 +0100 -Subject: [PATCH] bcm2708-dmaengine: fix calculation of cyclic DMA frames - -The calculation of the number of required frames was wrong which -could lead to the last frame being longer than the requested period -length and even the maximum supported transfer size. - -eg when requesting a 88208 bytes buffer with a period len of 22052 -(the defaults when playing a 44.1kHz stereo 16bit file with aplay) -the code would allocate 3 frames, two with 22052 bytes and the -last one with 44104 bytes instead of the expected 4 frames with -22052 bytes each. - -Signed-off-by: Matthias Reichl <hias@horus.com> ---- - drivers/dma/bcm2708-dmaengine.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/dma/bcm2708-dmaengine.c b/drivers/dma/bcm2708-dmaengine.c -index 85ce18b..91eac60 100644 ---- a/drivers/dma/bcm2708-dmaengine.c -+++ b/drivers/dma/bcm2708-dmaengine.c -@@ -710,7 +710,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_cyclic( - max_size = MAX_NORMAL_TRANSFER; - period_len = min(period_len, max_size); - -- d->frames = (buf_len-1) / period_len + 1; -+ d->frames = DIV_ROUND_UP(buf_len, period_len); - - /* Allocate memory for control blocks */ - d->control_block_size = d->frames * sizeof(struct bcm2835_dma_cb); --- -2.6.3 - - -From 8e469d0e00fa0f337e0e5ccdb504ce0ecf6ea6d6 Mon Sep 17 00:00:00 2001 -From: Matthias Reichl <hias@horus.com> -Date: Sun, 8 Nov 2015 17:00:45 +0100 -Subject: [PATCH] bcm2708-i2s: match period_bytes_max to DMA controller limit - -bcm2708-dmaengine supports a maximum transfer length of 32k bytes on -the lite channels. period_bytes_max should reflect this limit. - -Signed-off-by: Matthias Reichl <hias@horus.com> ---- - sound/soc/bcm/bcm2708-i2s.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sound/soc/bcm/bcm2708-i2s.c b/sound/soc/bcm/bcm2708-i2s.c -index 5e93cd6..b65d785 100644 ---- a/sound/soc/bcm/bcm2708-i2s.c -+++ b/sound/soc/bcm/bcm2708-i2s.c -@@ -881,7 +881,7 @@ static struct snd_pcm_hardware bcm2708_pcm_hardware = { - SNDRV_PCM_FMTBIT_S24_LE | - SNDRV_PCM_FMTBIT_S32_LE, - .period_bytes_min = 32, -- .period_bytes_max = 64 * PAGE_SIZE, -+ .period_bytes_max = SZ_32K, - .periods_min = 2, - .periods_max = 255, - .buffer_bytes_max = 128 * PAGE_SIZE, --- -2.6.3 - |