[#6010] Test ssm2603 on bf537-ezkit, sometime alsa application can not exit
Submitted By: Vivi Li
Open Date
2010-04-21 04:35:57
Priority:
Low Assignee:
Scott Jiang
Status:
Open Fixed In Release:
N/A
Found In Release:
2010R1-RC5 Release:
Category:
N/A Board:
STAMP
Processor:
BF537 Silicon Revision:
Is this bug repeatable?:
Yes Resolution:
Assigned (Not Start)
Uboot version or rev.:
Toolchain version or rev.:
gcc4.3-2010_Mar_17
App binary format:
N/A
Summary: Test ssm2603 on bf537-ezkit, sometime alsa application can not exit
Details:
Test ssm2603 on bf537-ezkit, sometime alsa application can not exit properly.
--
Linux version 2.6.33.2-ADI-2010R1-pre-svn8654 (test@uboot34-bf537stamp) (gcc version 4.3.4 (ADI-trunk/svn-3951) ) #65 Wed Apr 21 14:47:22 CST 2010
register early platform devices
bootconsole [early_shadow0] enabled
bootconsole [early_BFuart0] enabled
early printk enabled on early_BFuart0
Limiting kernel memory to 56MB due to anomaly 05000263
Board Memory: 64MB
Kernel Managed Memory: 64MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00001000-0x00129480
rodata = 0x00129480-0x00187508
bss = 0x00188000-0x00198c40
data = 0x00198c40-0x001aa000
stack = 0x001a8000-0x001aa000
init = 0x001aa000-0x00747000
available = 0x00747000-0x03800000
DMA Zone = 0x03e00000-0x04000000
Hardware Trace Active and Enabled
Boot Mode: 0
Reset caused by Software reset
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF537 Rev 0.2
Warning: Compiled for Rev 2, but running on Rev 3
Blackfin Linux support by http://blackfin.uclinux.org/
Processor Speed: 500 MHz core clock and 125 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
External memory: cacheable in instruction cache
Data Cache Enabled for CPU0
External memory: cacheable (write-back) in data cache
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 14224
Kernel command line: root=/dev/mtdblock0 rw ip=10.100.4.50 earlyprintk=serial,uart0,57600 console=ttyBF0,57600 ip=10.100.4.50:10.100.4.174:10.100.4.174:255.255.255.0:bf537-stamp:eth0:off
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory available: 49324k/65536k RAM, (5748k init code, 1185k kernel code, 515k data, 2048k dma, 6716k reserved)
Hierarchical RCU implementation.
NR_IRQS:138
Configuring Blackfin Priority Driven Interrupts
console [ttyBF0] enabled, bootconsole disabled
console [ttyBF0] enabled, bootconsole disabled
Calibrating delay loop... 995.32 BogoMIPS (lpj=1990656)
Security Framework initialized
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (16 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 48 KB (36 KB free)
NET: Registered protocol family 16
Blackfin DMA Controller
stamp_init(): registering device resources
bio: create slab <bio-0> at 0
Advanced Linux Sound Architecture Driver Version 1.0.21.
Switching to clocksource bfin_cs_cycles
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
msgmni has been set to 96
io scheduler noop registered
io scheduler cfq registered (default)
bfin-uart: Blackfin serial driver
bfin-uart.0: ttyBF0 at MMIO 0xffc00400 (irq = 18) is a BFIN-UART
brd: module loaded
bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc00500, dma channel@7
bfin_mii_bus: probed
bfin_mac: attached PHY driver [SMSC LAN83C185] (mii_bus:phy_addr=0:01, irq=-1, mdc_clk=2500000Hz(mdc_div=24)@sclk=125MHz)
bfin_mac bfin_mac.0: Blackfin on-chip Ethernet MAC driver, Version 1.1
rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0
i2c-bfin-twi i2c-bfin-twi.0: Blackfin BF5xx on-chip I2C TWI Contoller, regs_base@ffc01400
bfin-wdt: initialized: timeout=20 sec (nowayout=0)
No device for DAI SSM2602
dma rx:3 tx:4, err irq:45, regs:ffc00800
dma_alloc_init: dma_page @ 0x027a0000 - 512 pages at 0x03e00000
asoc: SSM2602 <-> bf5xx-i2s mapping ok
ALSA device list:
#0: bf5xx_ssm2602 (SSM2602)
TCP cubic registered
NET: Registered protocol family 17
rtc-bfin rtc-bfin: setting system clock to 1970-01-01 00:31:02 UTC (1862)
IP-Config: Complete:
device=eth0, addr=10.100.4.50, mask=255.255.255.0, gw=10.100.4.174,
host=bf537-stamp, domain=, nis-domain=(none),
bootserver=10.100.4.174, rootserver=10.100.4.174, rootpath=
Freeing unused kernel memory: 5748k freed
_____________________________________
a8888b. / Welcome to the uClinux distribution \
d888888b. / _ _ \
8P"YP"Y88 / | | |_| __ __ (TM) |
8|o||o|88 _____/ | | _ ____ _ _ \ \/ / |
8' .88 \ | | | | _ \| | | | \ / |
8`._.' Y8. \ | |__ | | | | | |_| | / \ |
d/ `8b. \ \____||_|_| |_|\____|/_/\_\ |
dP . Y8b. \ For embedded processors including |
d8:' " `::88b \ the Analog Devices Blackfin /
d8" 'Y88b \___________________________________/
:8P ' :888
8a. : _a88P For further information, check out:
._/"Yaa_: .| 88P| - http://blackfin.uclinux.org/
\ YP" `| 8P `. - http://docs.blackfin.uclinux.org/
/ \.___.d| .' - http://www.uclinux.org/
`--..__)8888P`._.' jgs/a:f - http://www.analog.com/blackfin
Have a lot of fun...
BusyBox v1.16.1 (2010-04-21 14:44:07 CST) hush - the humble shell
root:/> versionPHY: 0:01 - Link is Up - 100/Full
kernel: Linux release 2.6.33.2-ADI-2010R1-pre-svn8654, build #65 Wed Apr 21 14:47:22 CST 2010
toolchain: bfin-linux-uclibc-gcc release gcc version 4.3.4 (ADI-trunk/svn-3951)
user-dist: release svn-9569, build #39 Wed Apr 21 14:45:54 CST 2010
root:/> spawn mpg123 -Z ./audiotest.mp3
root:/> arecord -t wav -c 2 -f S16_LE -r 8000 -d 5 wav
Recording WAVE 'wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo
root:/>
Case 1 ...PASS
aplay wav
Playing WAVE 'wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 3 callbacks suppressed
root:/>
Case 1 ...PASS
arecord -t wav -c 2 -f S16_LE -r 11000 -d 5 wav
Recording WAVE 'wav' : Signed 16 bit Little Endian, Rate 11000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 2 ...PASS
aplay wav
Playing WAVE 'wav' : Signed 16 bit Little Endian, Rate 11000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 2 ...PASS
arecord -t wav -c 2 -f S16_LE -r 22000 -d 5 wav
Recording WAVE 'wav' : Signed 16 bit Little Endian, Rate 22000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 3 ...PASS
aplay wav
Playing WAVE 'wav' : Signed 16 bit Little Endian, Rate 22000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 3 ...PASS
arecord -t wav -c 2 -f S16_LE -r 44100 -d 5 wav
Recording WAVE 'wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 4 ...PASS
aplay wav
Playing WAVE 'wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 4 ...PASS
arecord -t wav -c 2 -f S16_LE -r 48000 -d 5 wav
Recording WAVE 'wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 5 ...PASS
aplay wav
Playing WAVE 'wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 5 ...PASS
arecord -t wav -c 2 -f U8 -r 48000 -d 5 wav
Recording WAVE 'wav' : Unsigned 8 bit, Rate 48000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 6 ...PASS
aplay wav
Playing WAVE 'wav' : Unsigned 8 bit, Rate 48000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
root:/>
Case 6 ...PASS
arecord -t wav -c 2 -f U8 -r 8000 -d 5 wav
Recording WAVE 'wav' : Unsigned 8 bit, Rate 8000 Hz, Stereo
snd_pcm_update_hw_ptr_pos: 4 callbacks suppressed
(Can not exit even by Ctrl+C)
--
Follow-ups
--- Bob Liu 2010-07-20 06:38:49
I always got this message.
==
root:/> version
kernel: Linux release 2.6.34.1-ADI-2010R1-pre-svn8984, build #345 Tue Jul 20
18:34:58 CST 2010
toolchain: bfin-linux-uclibc-gcc release gcc version 4.3.5 (ADI-trunk/svn-4637)
user-dist: release svn-9720, build #166 Tue Jul 20 18:34:29 CST 2010
root:/> arecord -t wav -c 2 -f S16_LE -r 8000 -d 5 wav
Recording WAVE 'wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos = 16384, buffer size =
16384, period size = 1024
--- Bob Liu 2010-07-22 04:49:14
It seems ok now.
--- Vivi Li 2010-09-20 23:25:16
Alsa application still can not exit on time. When it hangs in application,
sometimes it can exit by Ctrl+C, sometimes it can not exit even by Ctrl+C.
--- Vivi Li 2010-09-20 23:26:34
Attach latest configs.
--- Bob Liu 2010-10-22 06:36:44
It seems that it's ssm2603's hardware problem.
After arecord many times it will hang at ssm2602_shutdown() ->
snd_soc_write() -> bfin_twi_do_master_xfer():
304 while (read_MASTER_STAT(iface) & BUSBUSY)
305 yield();
Through the gdb and scope we found that i2c works wright.
But after i2c-scl stopped, i2c-sda is still low which is not correct, there
must be some hardware problem happened in ssm2603 codec.
--- Andreas Neubacher 2011-02-17 10:13:49
hi,
we are using the TI TLV320AIC31 audiocodec, connected via TDM interface. we can
play wav+mp3 files, record wav files and it sound's quite ok ... so no issues
from this side!
but we also get the "ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0c:0, pos =
2048, buffer size = 2048, period size = 256" debugline about every second
during record and playback!
how did you fixed this ALSA-BUG output?
thx & br,
andy
--- Mike Frysinger 2011-02-17 10:20:46
sorry, but we do not support TI here. please seek assistance elsewhere such as
from TI themselves.
--- Vivi Li 2011-11-16 05:53:09
Workaround this bug by adding sleep between record and play commands in ssm2603
audio test.
--- Vivi Li 2012-06-13 03:20:14
Still can not exit properly.
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
config.linux.audio_ssm2603 application/octet-stream 45667 Vivi Li
config.config.audio_ssm2603 application/octet-stream 48894 Vivi Li