From mboxrd@z Thu Jan 1 00:00:00 1970 From: san.mlists@gmail.com (Santhosh N) Date: Thu, 23 Sep 2010 12:35:22 +0530 Subject: PXA270 audio problem In-Reply-To: References: Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, Following are the AC97 and DMA register dumps. I am printing out the DMA registers from the pxa2xx_pcm_trigger function. I have noticed that, the touchscreen and audio record continues to work after the problem. In the problem state, the DMA interrupts occur for audio record but not for playback. AC97: BeforeProblem AfterProblem 0:00 = 02a0 0:00 = 02a0 0:02 = 0d0d 0:02 = 0d0d 0:04 = 0000 0:04 = 0000 0:06 = 0000 0:06 = 0000 0:08 = 0000 0:08 = 0000 0:0a = 0000 0:0a = 0000 0:0c = 0000 0:0c = 0000 0:0e = 0000 0:0e = 0000 0:10 = 0000 0:10 = 0000 0:12 = 0000 0:12 = 0000 0:14 = 0000 0:14 = 0000 0:16 = 0000 0:16 = 0000 0:18 = 0000 0:18 = 0000 0:1a = 0000 0:1a = 0000 0:1c = 0000 0:1c = 0000 0:1e = 0000 0:1e = 0000 0:20 = 0000 0:20 = 0000 0:22 = 0000 0:22 = 0000 0:24 = 0000 0:24 = 0000 0:26 = 000b 0:26 = 000b 0:28 = 0001 0:28 = 0001 0:2a = 0001 0:2a = 0001 0:2c = 5622 0:2c = 3e80 0:2e = 0000 0:2e = 0000 0:30 = 0000 0:30 = 0000 0:32 = bb80 0:32 = bb80 0:34 = 0000 0:34 = 0000 0:36 = 0000 0:36 = 0000 0:38 = 0000 0:38 = 0000 0:3a = 0000 0:3a = 0000 0:3c = 0000 0:3c = 0000 0:3e = 0000 0:3e = 0000 0:40 = 0000 0:40 = 0000 0:42 = 0000 0:42 = 0000 0:44 = 0000 0:44 = 0000 0:46 = 0000 0:46 = 0000 0:48 = 0000 0:48 = 0000 0:4a = 0000 0:4a = 0000 0:4c = 0000 0:4c = 0000 0:4e = 0000 0:4e = 0000 0:50 = 0000 0:50 = 0000 0:52 = 0000 0:52 = 0000 0:54 = 0000 0:54 = 0000 0:56 = 0000 0:56 = 0000 0:58 = 0000 0:58 = 0000 0:5a = 0000 0:5a = 0000 0:5c = 0000 0:5c = 0000 0:5e = 0000 0:5e = 0000 0:60 = 0000 0:60 = 0000 0:62 = 0000 0:62 = 0000 0:64 = 0948 0:64 = 0948 0:66 = 0000 0:66 = 0000 0:68 = 824b 0:68 = 824b 0:6a = 0050 0:6a = 0050 0:6c = 0030 0:6c = 0030 0:6e = 2004 0:6e = 2004 0:70 = 0000 0:70 = 0000 0:72 = 0000 0:72 = 0000 0:74 = 0000 0:74 = 0000 0:76 = 0000 0:76 = 0000 0:78 = 0000 0:78 = 0000 0:7a = 0000 0:7a = 0000 0:7c = 5053 0:7c = 5053 0:7e = 4304 0:7e = 4304 Only diff in the above is in the 02C(Audio sample rate control) register. DMA: BeforeProblem ::: DMA Channel: 8, Trigger Start DDADR = 0xB714A010 DSADR = 0xB7100040 DTADR = 0x40500040 DCMD = 0x9023CFC0 DCSR = 0x80000000 ::: DMA Channel: 8, Trigger Stop DDADR = 0xB714A0E0 DSADR = 0xB710D000 DTADR = 0x40500040 DCMD = 0x9023D000 DCSR = 0x00000008 AfterProblem ::: DMA Channel: 8, Trigger Start DDADR = 0xB70B7010 DSADR = 0xB7100000 DTADR = 0x40500040 DCMD = 0x9023D000 DCSR = 0x80000000 ALSA sound/core/pcm_native.c:1512: playback drain error (DMA or IRQ trouble?) ::: DMA Channel: 8, Trigger Stop DDADR = 0xB70B7010 DSADR = 0xB7100000 DTADR = 0x40500040 DCMD = 0x9023D000 DCSR = 0x00000008 Each dump above is after playing a mp3 file using madplay. Regards, Santhosh N On Thu, Sep 23, 2010 at 11:38 AM, Eric Miao wrote: > On Thu, Sep 23, 2010 at 1:33 PM, Santhosh N wrote: >> Dear All, >> >> I am running linux 2.6.26 kernel on a PXA270 board. A UCB1400 chip >> used for audio and touchscreen in that. I have been facing a problem >> with audio. >> >> The audio plays properly, but suddenly stops. I get the following message: >> ALSA sound/core/pcm_native.c:1513: playback drain error (DMA or IRQ trouble?) >> >> I have noticed that the DMA interrupts stop coming. Where as the AC97 >> interrupts come properly. >> >> Any help in solving this will be grateful. >> > > Dumping the DMA registers and the AC97 controller registers would > be helpful. > >> Regards, >> Santhosh N >> >> _______________________________________________ >> linux-arm-kernel mailing list >> linux-arm-kernel at lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >> >