FAQ:[#6010] Test ssm2603 on bf537-ezkit, sometime alsa application can not exit(2010)

Document created by Aaronwu Employee on Sep 10, 2013
Version 1Show Document
  • View in full screen mode

[#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

Outcomes