기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

커널버전은 2.6.21 이구요, ac97사용할려고 하는데요

waveplay로 wav파일을 열때 문제가 생깁니다.
waveplay에서는        open("/dev/dsp", O_WRONLY..
일때 문제가 발생한것을 확인했구요

커널에서는
arch/arm/mach-pxa/dma.c

    118 static int __init pxa_dma_init (void)
    119 {
    120         int ret;
    122         ret = request_irq (IRQ_DMA, dma_irq_handler, 0, "DMA", NULL);
    124         if (ret)
    125                 printk (KERN_CRIT "Wow!  Can't register IRQ for DMAn");
    126         return ret;
    127 }
등록은 되어서 /proc/interrupt에 DMA등록은되는데


     37 int pxa_request_dma (char *name, pxa_dma_prio prio,
     38                          void (*irq_handler)(int, void *),
     39                          void *data)
     40 {
        ...
     63         if (found) {
     64                 DCSR(i) = DCSR_STARTINTR|DCSR_ENDINTR|DCSR_BUSERR;                <<<----쓰지를 못합니다.

위 함수가 불려졌을때
dma 레지스터인 DCSR에 쓰지를 못하고 Unhandled fault 가 발생하네요;;
dma자체가 동작을 안하는것 같은데 추가로 어디를 봐야될지 모르겠습니다.


아래 로그 첨부합니다.

Unhandled fault: imprecise external abort (0x416) at 0x4012b8cc
Internal error: : 416 [#1]
Modules linked in:
CPU: 0
PC is at vprintk+0x2e4/0x2e8
LR is at pxa_request_dma+0x8c/0x110
pc : [<c00389d0>]    lr : [<c002ca34>]    Not tainted
sp : c37f1d50  ip : c0311324  fp : c37f1d78
r10: c01f8914  r9 : c0c12ae0  r8 : c034a668
r7 : c02eca88  r6 : a0000013  r5 : 00000008  r4 : f2000020
r3 : 00000000  r2 : 00000001  r1 : 00000000  r0 : c02c7120
Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  Segment user
Control: 397F
Table: A0F04000  DAC: 00000015
Process wavplay (pid: 902, stack limit = 0xc37f0250)
Stack: (0xc37f1d50 to 0xc37f2000)
1d40:                                     c3ebfae0 fffffff4 c0c12ae0 00000000
1d60: c0eb8000 ffffffff c034579c c37f1db0 c37f1d7c c01f8b64 c002c9b4 00000000
1d80: 00000012 ffffffff 00000000 c37f1dec c37f1e08 c3ebfac0 c0c1f600 c0d2be40
1da0: 00000000 c37f1dcc c37f1db4 c01dd828 c01f8a54 c0c12ae0 c37f1e30 00000000
1dc0: c37f1e78 c37f1dd0 c01e9fc4 c01dd7d0 0000000e 00000003 c0c1f708 c0c1f714
1de0: c37f0000 00000001 c0d380c4 c01384e8 00000000 00000000 c0caad40 c0034480
1e00: c0c1f714 c0c1f714 00000000 00000000 00000000 00000000 00000000 00000000
1e20: 00000000 00000000 00000000 00000000 70766177 0079616c 00000000 00000000
1e40: c0082a00 c0161f4c c0cc6a00 00e00003 c027d960 00000000 00000003 c0d2be40
1e60: c0d380c4 c37f0000 00000000 c37f1e9c c37f1e7c c01d1b80 c01e9d7c c0c23960
1e80: c0d380c4 00000000 00000000 c0d2be40 c37f1ec4 c37f1ea0 c0082c34 c01d1a3c
1ea0: 00000003 c0d2be40 c0d380c4 c0082ae4 c03f3220 c37bb41c c37f1eec c37f1ec8
1ec0: c007f16c c0082af0 c0d2be40 c37f1f0c 00000000 c3e5b000 ffffff9c 00016cf0
1ee0: c37f1f04 c37f1ef0 c007f288 c007f078 00000000 00000001 c37f1f70 c37f1f08
1f00: c007f2dc c007f260 c37f1f0c c37bb41c c03f3220 00000000 00000000 00000000
1f20: 00000101 00000001 00000000 c37f0000 c0d0eec8 c0d0eec0 ffffffe8 00016cf0
1f40: c37f1f70 c37f1f50 c007f48c c0095368 00000002 00000000 c0d2be40 00000001
1f60: 00000004 c37f1f94 c37f1f74 c007f610 c007f2a8 000180a4 000180a0 00000001
1f80: 00000005 c0023d44 c37f1fa4 c37f1f98 c007f678 c007f5cc 00000000 c37f1fa8
1fa0: c0023d0c c007f660 000180a4 000180a0 0000ca48 00000001 00000000 00000000
1fc0: 000180a4 000180a0 00000001 00018050 000161e8 000164e8 00016cf0 00000000
1fe0: 00000000 be834b88 00003d10 400df1a0 60000010 0000ca48 00030664 e92d4ff0
Backtrace:
[<c002c9a8>] (pxa_request_dma+0x0/0x110) from [<c01f8b64>] (pxa2xx_pcm_open+0x11c/0x188)
[<c01f8a48>] (pxa2xx_pcm_open+0x0/0x188) from [<c01dd828>] (snd_pcm_open_substream+0x64/0xac)
[<c01dd7c4>] (snd_pcm_open_substream+0x0/0xac) from [<c01e9fc4>] (snd_pcm_oss_open+0x254/0x448)
r5 = 00000000  r4 = C37F1E30
[<c01e9d70>] (snd_pcm_oss_open+0x0/0x448) from [<c01d1b80>] (soundcore_open+0x150/0x1d8)
[<c01d1a30>] (soundcore_open+0x0/0x1d8) from [<c0082c34>] (chrdev_open+0x150/0x168)
r8 = C0D2BE40  r7 = 00000000  r6 = 00000000  r5 = C0D380C4
r4 = C0C23960
[<c0082ae4>] (chrdev_open+0x0/0x168) from [<c007f16c>] (__dentry_open+0x100/0x1e8)
r8 = C37BB41C  r7 = C03F3220  r6 = C0082AE4  r5 = C0D380C4
r4 = C0D2BE40
[<c007f06c>] (__dentry_open+0x0/0x1e8) from [<c007f288>] (nameidata_to_filp+0x34/0x48)
[<c007f254>] (nameidata_to_filp+0x0/0x48) from [<c007f2dc>] (do_filp_open+0x40/0x48)
r4 = 00000001
[<c007f29c>] (do_filp_open+0x0/0x48) from [<c007f610>] (do_sys_open+0x50/0x94)
r5 = 00000004  r4 = 00000001
[<c007f5c0>] (do_sys_open+0x0/0x94) from [<c007f678>] (sys_open+0x24/0x28)
r8 = C0023D44  r7 = 00000005  r6 = 00000001  r5 = 000180A0
r4 = 000180A4
[<c007f654>] (sys_open+0x0/0x28) from [<c0023d0c>] (__sys_trace_return+0x0/0x34)
Code: c00273f4 3b9aca00 c02c75e8 c034bae4 (c034bb78)
)    = -1 ENOENT (No such file or directory)

고현철

2008.04.04 22:56:06
*.14.30.76

request dma에 들어가는 dma memory가 제대로 되어 있는지 확인하시기 바랍니다.

오대광

2008.04.05 05:50:23
*.121.121.57

답변 감사드립니다.

죄송하지만 정확히 어느 부분을 봐야되는지요?

고현철

2008.04.06 06:11:12
*.187.44.115

dma로 사용하는 메모리가 제대로 매핑이 된것인지, 아니면 실제로 주소에 있는 것인지 확인하시기 바랍니다.

그 경우 아니면 보통 이런 케이스는 발생안합니다.

오대광

2008.04.10 19:55:51
*.121.121.57

그렇군요..답변 감사드립니다.

좀더 삽질해보고 해결되면 결과 올릴께요

오대광

2008.04.21 20:17:36
*.121.121.57

해결했습니다

dma주소 세팅값이 다른주소세팅과 겹쳐 있었습니다. ㅜㅜ
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
228 MMSP2 보드에 USB HOST 포팅 질문입니다. <== [완료] [4] 이영재 2006-11-27 918
227 부팅 문제 질문 드립니다. [완료] [8] 김유석 2006-11-27 961
226 간단한 리눅스 환경변수 변경문제 물어볼께요.. [2] 이재훈 2006-11-24 1160
225 u-boot UImage 질문입니다. [완료] [1] 김유석 2006-11-23 1021
224 제품 양산시 커널을 어떻게 줄이나요??<====[완료] [3] 윤현승 2006-11-21 1068
223 [re] [긴급]I2C Interface 변효현 2006-11-21 823
222 풀 스크린 개념 ... 런쳐 에 관해서.. [2] 오용석 2006-11-19 936
221 SDL cpp file 컴파일 관련 [2] 김증일 2006-11-17 757
220 [완료] SDL Crosscompile 관련 질문 김증일 2006-11-17 908
219 SDL Cross compile 질문 [3] 김증일 2006-11-16 1020
218 u-boot에서의 usb ohci 구현에 대해서 질문드립니다. ==> [완료] [2] 박찬우 2006-11-15 829
217 H/W RESET에 관한 질문입니다. ===> [완료] [3] 신재곤 2006-11-15 819
216 추가 usb host 질문드립니다. ^^ => [완료] [8] 박찬우 2006-11-15 971
215 SDL 관련 질문 드립니다. [6] 김증일 2006-11-15 1254
214 임베디드리눅스 GUI 를 선택해야 하는데 ... [2] 장석원 2006-11-14 1069
213 GUI toolkit 선택 고민중...[완료] [7] 오용석 2006-11-13 1228
212 saa7111 을 이용해..[완료] [5] 박재현 2006-11-13 921
211 TFT-LCD 프레임버퍼 드라이버를 수정할때 [3] 장석원 2006-11-11 1275
210 [긴급]I2C Interface [9] 변효현 2006-11-10 1273
209 혹시 Video 스위칭 IC쪽 아시는분 있나요... [1] 이홍석 2006-11-10 1042

사용자 로그인