git.openpandora.org
/
pandora-kernel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6343325
)
dma: imx-dma: Fix kernel crash due to missing clock conversion
author
Fabio Estevam
<festevam@gmail.com>
Tue, 3 Jul 2012 18:33:29 +0000
(15:33 -0300)
committer
Vinod Koul
<vinod.koul@linux.intel.com>
Fri, 27 Jul 2012 03:19:53 +0000
(08:49 +0530)
With the new i.MX clock infrastructure we need to request the dma clocks
seperately: ahb and ipg clocks.
This fixes the following kernel crash and make audio to be functional again:
root@freescale /home$ aplay audio48k16S.wav
Playing WAVE 'audio48k16S.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
Unable to handle kernel NULL pointer dereference at virtual address
00000000
pgd =
c7b74000
[
00000000
] *pgd=
a7bb5831
, *pte=
00000000
, *ppte=
00000000
Internal error: Oops: 17 [#1] PREEMPT ARM
Modules linked in:
CPU: 0 Not tainted (3.5.0-rc5-next-
20120702
-00007-g3028b64 #1128)
PC is at snd_dmaengine_pcm_get_chan+0x8/0x10
LR is at snd_imx_pcm_hw_params+0x18/0xdc
pc : [<
c02d3cf8
>] lr : [<
c02e95ec
>] psr:
a0000013
sp :
c7b45e30
ip :
ffffffff
fp :
c7ae58e0
r10:
00000000
r9 :
c7ae981c
r8 :
c7b88800
r7 :
c7ae5a60
r6 :
c7ae5b20
r5 :
c7ae9810
r4 :
c7afa060
r3 :
00000000
r2 :
00000001
r1 :
c7b88800
r0 :
c7afa060
Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control:
0005317f
Table:
a7b74000
DAC:
00000015
Process aplay (pid: 701, stack limit = 0xc7b44270)
Stack: (0xc7b45e30 to 0xc7b46000)
5e20:
00100000
00000029
c7b88800
c02db870
5e40:
c7ae5a60
c02d4594
00000010
01ae5a60
c7ae5a60
c7ae9810
c7ae9810
c7afa060
5e60:
c7ae5b20
c7ae5a60
c7b88800
c02e3ef0
c02e3e08
c7b1e400
c7afa060
c7b88800
5e80:
00000000
c0014da8
c7b44000
00000000
bec566ac
c02cd400
c7afa060
c7afa060
5ea0:
bec56800
c7b88800
c0014da8
c02cdd7c
c04ee710
c04ee7b8
00000003
c005fc74
5ec0:
00000000
7fffffff
c7b45f00
c7afa060
c7b67420
c7ba3070
00000004
c0014da8
5ee0:
c7b44000
00000000
bec566ac
c02ced88
c04e95f8
b6f5ab04
c7b45fb0
0145a468
5f00:
0145a600
bec566bc
bec56800
c7b67420
c7ba3070
c00d499c
c7b45f18
c7b45f18
5f20:
0000001a
00000004
00000001
c7b44000
c0527f40
00000009
00000008
00000000
5f40:
c7b44000
c002c9ec
00000001
c04f0ab0
c04ebec0
00000101
00000000
0000000a
5f60:
60000093
c7b67420
bec56800
c25c4111
00000004
c0014da8
c7b44000
00000000
5f80:
bec566ac
c00d4f38
b6ffb658
00000000
c0522d80
0145a468
b6fd5000
0145a418
5fa0:
00000036
c0014c00
0145a468
b6fd5000
00000004
c25c4111
bec56800
00020001
5fc0:
0145a468
b6fd5000
0145a418
00000036
0145a468
0145a600
bec566bc
bec566ac
5fe0:
0145a468
bec56388
b6f65ce4
b6dcebec
20000010
00000004
00000000
00000000
[<
c02d3cf8
>] (snd_dmaengine_pcm_get_chan+0x8/0x10) from [<
c02e95ec
>] (snd_imx_pcm_hw_params+0x18/0xdc)
[<
c02e95ec
>] (snd_imx_pcm_hw_params+0x18/0xdc) from [<
c02e3ef0
>] (soc_pcm_hw_params+0xe8/0x1f0)
[<
c02e3ef0
>] (soc_pcm_hw_params+0xe8/0x1f0) from [<
c02cd400
>] (snd_pcm_hw_params+0x124/0x474)
[<
c02cd400
>] (snd_pcm_hw_params+0x124/0x474) from [<
c02cdd7c
>] (snd_pcm_common_ioctl1+0x4b4/0xf74)
[<
c02cdd7c
>] (snd_pcm_common_ioctl1+0x4b4/0xf74) from [<
c02ced88
>] (snd_pcm_playback_ioctl1+0x30/0x510)
[<
c02ced88
>] (snd_pcm_playback_ioctl1+0x30/0x510) from [<
c00d499c
>] (do_vfs_ioctl+0x80/0x5e4)
[<
c00d499c
>] (do_vfs_ioctl+0x80/0x5e4) from [<
c00d4f38
>] (sys_ioctl+0x38/0x60)
[<
c00d4f38
>] (sys_ioctl+0x38/0x60) from [<
c0014c00
>] (ret_fast_syscall+0x0/0x2c)
Code:
e593000c
e12fff1e
e59030a0
e59330bc
(
e5930000
)
---[ end trace
fa518c8ba3a74e97
]--
Reported-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
Cc: stable@vger.kernel.org
No differences found