This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于AM1808音频的问题

Other Parts Discussed in Thread: AM1808, OMAP-L138, TLV320AIC3104, TPS65910, TPS65217

请教一个关于AM1808音频部分的问题:音频接口和音频芯片都是按照TI官方评估板的设计,驱动加载也正常,但是用aplay测试音频的时候,确没有声音输出,用示波器测试MCASP的I2S接口,三个时钟线输出正常,唯独两根数据线没有任何数据,只是在刚开始播放的时候,电平发生了变化,请问有谁也遇到同样的问题么?该怎么解决?

错误提示如下:

root@am180x-evm:~# aplay /hehe.wav 

Playing WAVE '/hehe.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo

aplay: pcm_write:1682: write error: Input/output error

  • 你可以用不带操作系统的 Sitarware里的驱动先测试一下,processors.wiki.ti.com/.../SitaraWare

    看硬件是否是正常的。这个driver就是直接配寄存器,会比较直观和简单。

  • 首先感谢您的回答和帮助。

    我用官方提供的BSL配合CCSV4,仿真测试了AUDIO接口,I2S数据线是有方波输出的,但是换用官方提供的LINUX内核,且没改变源码,把和音频冲突的无线模块也取消了,用APLAY命令播放,依旧提示错误。时钟线正常,唯独数据线没有数据。

  • Jing Cui 说:

    你可以用不带操作系统的 Sitarware里的驱动先测试一下,processors.wiki.ti.com/.../SitaraWare

    看硬件是否是正常的。这个driver就是直接配寄存器,会比较直观和简单。

    首先感谢您的回答和帮助。

     

    我用官方提供的BSL配合CCSV4,仿真测试了AUDIO接口,I2S数据线是有方波输出的,但是换用官方提供的LINUX内核,且没改变源码,把和音频冲突的无线模块也取消了,用APLAY命令播放,依旧提示错误。时钟线正常,唯独数据线没有数据。

  • 三个时钟信号的频率各是多少?

    同样的测试在评估板上可以通过吗?

  • Tony Tang 说:

    三个时钟信号的频率各是多少?

    同样的测试在评估板上可以通过吗?

    我用的测试音频的采样率是8000Hz

    三个时钟线的频率分别是:MCLK=24.5755MHz   ,  BCLK=255.995KHz  ,   WCLK=7.9998KHz.

    唯独数据线上没有波形。TI官方的评估板我这里没有,唉。

    今天跟踪了一下程序的执行过程,用"aplay -N"(非阻塞方式)命令播放音频文件,内核最后一直执行 davinci_pcm_pointer()这个函数,直到出现那个pcm错误。如果用"aplay"命令播放,则运行到davinci_pcm_pointer()这个函数后就卡死了,然后出现错误。

    这是控制台的相关信息(带 ">>>>>>>>>>>>>>>>>>>>>" 符号的表示执行了该行所指的函数):

     

    Starting kernel ...

     

    Uncompressing Linux... done, booting the kernel.

    Linux version 2.6.33-rc4 (root@jay) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #3 PREEMPT Fri Sep 2 13:53:53 CST 2011

    CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

    CPU: VIVT data cache, VIVT instruction cache

    Machine: DaVinci DA850/OMAP-L138/AM18xx EVM

    Memory policy: ECC disabled, Data cache writeback

    DaVinci da850/omap-l138/am18xx variant 0x1

    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512

    Kernel command line: console=ttyS2,115200n8 noinitrd rw ip=192.168.14.2:192.168.14.50:192.168.14.254:255.255.255.0 root=/dev/nfs nfsroot=192.168.14.50:/nfs,proto=tcp,nolock mem=128M

    PID hash table entries: 512 (order: -1, 2048 bytes)

    Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

    Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)

    Memory: 128MB = 128MB total

    Memory: 125524KB available (3776K code, 305K data, 140K init, 0K highmem)

    SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1

    Hierarchical RCU implementation.

    NR_IRQS:245

    Console: colour dummy device 80x30

    Calibrating delay loop... 227.73 BogoMIPS (lpj=1138688)

    Mount-cache hash table entries: 512

    CPU: Testing write buffer coherency: ok

    DaVinci: 144 gpio irqs

    NET: Registered protocol family 16

    MUX: initialized GPIO1_4

    MUX: Setting register GPIO1_4

               PINMUX4 (0x00000010) = 0x00222288 -> 0x00228288

    MUX: initialized GPIO1_5

    MUX: Setting register GPIO1_5

               PINMUX4 (0x00000010) = 0x00228288 -> 0x00228888

    MUX: initialized UART1_RXD

    MUX: Setting register UART1_RXD

               PINMUX4 (0x00000010) = 0x00228888 -> 0x02228888

    MUX: initialized UART1_TXD

    MUX: Setting register UART1_TXD

               PINMUX4 (0x00000010) = 0x02228888 -> 0x22228888

    MUX: initialized AHCLKX

    MUX: Setting register AHCLKX

               PINMUX0 (0x00000000) = 0x44000000 -> 0x44100000

    MUX: initialized ACLKX

    MUX: Setting register ACLKX

               PINMUX0 (0x00000000) = 0x44100000 -> 0x44100010

    MUX: initialized AFSX

    MUX: Setting register AFSX

               PINMUX0 (0x00000000) = 0x44100010 -> 0x44101010

    MUX: initialized ACLKR

    MUX: Setting register ACLKR

               PINMUX0 (0x00000000) = 0x44101010 -> 0x44101011

    MUX: initialized AFSR

    MUX: Setting register AFSR

               PINMUX0 (0x00000000) = 0x44101011 -> 0x44101111

    MUX: initialized AMUTE

    MUX: Setting register AMUTE

               PINMUX0 (0x00000000) = 0x44101111 -> 0x41101111

    MUX: initialized AXR_11

    MUX: Setting register AXR_11

               PINMUX1 (0x00000004) = 0x00000000 -> 0x00010000

    MUX: initialized AXR_12

    MUX: Setting register AXR_12

               PINMUX1 (0x00000004) = 0x00010000 -> 0x00011000

    MUX: initialized LCD_D_0

    MUX: Setting register LCD_D_0

               PINMUX17 (0x00000044) = 0x00000000 -> 0x00000020

    MUX: initialized LCD_D_1

    MUX: Setting register LCD_D_1

               PINMUX17 (0x00000044) = 0x00000020 -> 0x00000022

    MUX: initialized LCD_D_2

    MUX: Setting register LCD_D_2

               PINMUX16 (0x00000040) = 0x00000000 -> 0x20000000

    MUX: initialized LCD_D_3

    MUX: Setting register LCD_D_3

               PINMUX16 (0x00000040) = 0x20000000 -> 0x22000000

    MUX: initialized LCD_D_4

    MUX: Setting register LCD_D_4

               PINMUX16 (0x00000040) = 0x22000000 -> 0x22200000

    MUX: initialized LCD_D_5

    MUX: Setting register LCD_D_5

               PINMUX16 (0x00000040) = 0x22200000 -> 0x22220000

    MUX: initialized LCD_D_6

    MUX: Setting register LCD_D_6

               PINMUX16 (0x00000040) = 0x22220000 -> 0x22222000

    MUX: initialized LCD_D_7

    MUX: Setting register LCD_D_7

               PINMUX16 (0x00000040) = 0x22222000 -> 0x22222200

    MUX: initialized LCD_D_8

    MUX: Setting register LCD_D_8

               PINMUX18 (0x00000048) = 0x00000000 -> 0x00000020

    MUX: initialized LCD_D_9

    MUX: Setting register LCD_D_9

               PINMUX18 (0x00000048) = 0x00000020 -> 0x00000022

    MUX: initialized LCD_D_10

    MUX: Setting register LCD_D_10

               PINMUX17 (0x00000044) = 0x00000022 -> 0x20000022

    MUX: initialized LCD_D_11

    MUX: Setting register LCD_D_11

               PINMUX17 (0x00000044) = 0x20000022 -> 0x22000022

    MUX: initialized LCD_D_12

    MUX: Setting register LCD_D_12

               PINMUX17 (0x00000044) = 0x22000022 -> 0x22200022

    MUX: initialized LCD_D_13

    MUX: Setting register LCD_D_13

               PINMUX17 (0x00000044) = 0x22200022 -> 0x22220022

    MUX: initialized LCD_D_14

    MUX: Setting register LCD_D_14

               PINMUX17 (0x00000044) = 0x22220022 -> 0x22222022

    MUX: initialized LCD_D_15

    MUX: Setting register LCD_D_15

               PINMUX17 (0x00000044) = 0x22222022 -> 0x22222222

    MUX: initialized LCD_PCLK

    MUX: Setting register LCD_PCLK

               PINMUX18 (0x00000048) = 0x00000022 -> 0x02000022

    MUX: initialized LCD_MCLK

    MUX: Setting register LCD_MCLK

               PINMUX18 (0x00000048) = 0x02000022 -> 0x22000022

    MUX: initialized LCD_HSYNC

    MUX: Setting register LCD_HSYNC

               PINMUX19 (0x0000004c) = 0x00000000 -> 0x00000002

    MUX: initialized LCD_VSYNC

    MUX: Setting register LCD_VSYNC

               PINMUX19 (0x0000004c) = 0x00000002 -> 0x00000022

    MUX: initialized NLCD_AC_ENB_CS

    MUX: Setting register NLCD_AC_ENB_CS

               PINMUX19 (0x0000004c) = 0x00000022 -> 0x02000022

    MUX: initialized GPIO2_8

    MUX: Setting register GPIO2_8

               PINMUX5 (0x00000014) = 0x00110110 -> 0x80110110

    MUX: initialized GPIO2_15

    MUX: Setting register GPIO2_15

               PINMUX5 (0x00000014) = 0x80110110 -> 0x80110118

    MUX: initialized RTC_ALARM

    MUX: Setting register RTC_ALARM

               PINMUX0 (0x00000000) = 0x41101111 -> 0x21101111

    MUX: initialized GPIO2_4

    MUX: Setting register GPIO2_4

               PINMUX6 (0x00000018) = 0x00000000 -> 0x00008000

    MUX: initialized GPIO6_13

    MUX: Setting register GPIO6_13

               PINMUX13 (0x00000034) = 0x00000000 -> 0x00000800

    bio: create slab <bio-0> at 0

    SCSI subsystem initialized

    usbcore: registered new interface driver usbfs

    usbcore: registered new interface driver hub

    usbcore: registered new device driver usb

    pca953x 1-0020: failed reading register

    i2c-gpio i2c-gpio.1: using pins 20 (SDA) and 21 (SCL)

    Switching to clocksource timer0_1

    musb_hdrc: version 6.0, cppi4.1-dma, host, debug=0

    Waiting for USB PHY clock good...

    musb_hdrc: USB Host mode controller at fee00000 using DMA, IRQ 58

    musb_hdrc musb_hdrc: MUSB HDRC host driver

    musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1

    hub 1-0:1.0: USB hub found

    hub 1-0:1.0: 1 port detected

    NET: Registered protocol family 2

    IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

    TCP established hash table entries: 4096 (order: 3, 32768 bytes)

    TCP bind hash table entries: 4096 (order: 2, 16384 bytes)

    TCP: Hash tables configured (established 4096 bind 4096)

    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

    RPC: Registered udp transport module.

    RPC: Registered tcp transport module.

    RPC: Registered tcp NFSv4.1 backchannel transport module.

    EMAC: MII PHY configured, RMII PHY will not be functional

    MUX: initialized GPIO2_6

    MUX: Setting register GPIO2_6

               PINMUX6 (0x00000018) = 0x00008000 -> 0x00008080

    JFFS2 version 2.2. (NAND) 漏 2001-2006 Red Hat, Inc.

    msgmni has been set to 245

    io scheduler noop registered (default)

    da8xx_lcdc da8xx_lcdc.0: GLCD: Found Sharp_LK043T1DG01 panel

    Console: switching to colour frame buffer device 60x34

    Serial: 8250/16550 driver, 3 ports, IRQ sharing disabled

    serial8250.0: ttyS0 at MMIO 0x1c42000 (irq = 25) is a AR7

    serial8250.0: ttyS1 at MMIO 0x1d0c000 (irq = 53) is a AR7

    serial8250.0: ttyS2 at MMIO 0x1d0d000 (irq = 61) is a AR7

    console [ttyS2] enabled

    brd: module loaded

    spi_davinci spi_davinci.1: DaVinci SPI driver in EDMA mode

    Using RX channel = 18 , TX channel = 19 and event queue = 1

    m25p80 spi1.0: non-JEDEC variant of m25p64

    m25p80 spi1.0: m25p64 (8192 Kbytes)

    Creating 4 MTD partitions on "m25p80":

    0x000000000000-0x000000040000 : "U-Boot"

    0x000000040000-0x000000050000 : "U-Boot Environment"

    0x000000050000-0x0000007f0000 : "Linux"

    0x0000007f0000-0x000000800000 : "MAC Address"

    Read MAC addr from EEPROM: 00:00:00:00:00:00

    spi_davinci spi_davinci.1: Controller at 0xfef0e000 

    console [netcon0] enabled

    netconsole: network logging started

    ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver

    ohci ohci.0: DA8xx OHCI

    ohci ohci.0: new USB bus registered, assigned bus number 2

    ohci ohci.0: irq 59, io mem 0x01e25000

    hub 2-0:1.0: USB hub found

    hub 2-0:1.0: 1 port detected

    Initializing USB Mass Storage driver...

    usbcore: registered new interface driver usb-storage

    USB Mass Storage support registered.

    omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0

    omap_rtc: RTC power up reset detected

    i2c /dev entries driver

    Linux video capture interface: v2.00

    watchdog watchdog: heartbeat 60 sec

    cpuidle: using governor ladder

    cpuidle: using governor menu

    usbcore: registered new interface driver usbhid

    usbhid: USB HID core driver

    Advanced Linux Sound Architecture Driver Version 1.0.21.

    usbcore: registered new interface driver snd-usb-audio

    No device for DAI tlv320aic3x

     

    >>>>>>>  davinci-mcasp.c : davinci_mcasp_init() :      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_probe() :      


    >>>>>>> davinci-evm.c: evm_init :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_new() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_preallocate_dma_buffer() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_preallocate_dma_buffer() :      

    asoc: tlv320aic3x <-> davinci-i2s mapping ok

     

    >>>>>>> davinci-evm.c : evm_aic3x_init():      

    ALSA device list:

      #0: DA850/OMAP-L138 EVM (tlv320aic3x)

    TCP cubic registered

    NET: Registered protocol family 17

    Clocks: disable unused emac

    Clocks: disable unused mmcsd

    Clocks: disable unused aemif

    davinci_emac_probe: using random MAC addr: 66:ce:50:a3:86:04

    emac-mii: probed

    omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)

    usb 2-1: new full speed USB device using ohci and address 2

    hub 2-1:1.0: USB hub found

    hub 2-1:1.0: 4 ports detected

    IP-Config: Complete:

         device=eth0, addr=192.168.14.2, mask=255.255.255.0, gw=192.168.14.254,

         host=192.168.14.2, domain=, nis-domain=(none),

         bootserver=192.168.14.50, rootserver=192.168.14.50, rootpath=

    Looking up port of RPC 100003/2 on 192.168.14.50

    Looking up port of RPC 100005/1 on 192.168.14.50

    VFS: Mounted root (nfs filesystem) on device 0:13.

    Freeing init memory: 140K

    INIT: version 2.86 booting

    Please wait: booting...

    Starting udev

    udev: starting version 141

    Remounting root file system...

    Caching udev devnodes

    Populating dev cachemv: cannot rename '/tmp/devices': No such file or directory

    logger: mount: mount point /proc/bus/usb does not exist

    ALSA: Restoring mixer settings...

    NOT configuring network interfaces: / is an NFS mount

    No state is present for card EVM

    Found hardware: "tlv320aic3x" "" "" "" ""

    Hardware is initialized using a generic method

    No state is present for card EVM

    Thu Jul  7 13:19:00 UTC 2011

    INIT: Entering runlevel: 5

    Starting system message bus: dbus.

    Starting telnet daemon.

    Starting syslogd/klogd: done

    Starting thttpd.

     

     

    Arago Project http://arago-project.org am180x-evm ttyS2

     

    Arago 2011.06 am180x-evm ttyS2

     

    am180x-evm login: root

    root@am180x-evm:~# aplay -v /hehe.wav 

     

    >>>>>>>  davinci-pcm.c : davinci_pcm_open() :      


    >>>>>>>  davinci-pcm.c : allocate_sram() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_dma_request() :      

    Playing WAVE '/hehe.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Stereo

     

    >>>>>>> davinci-evm.c : evm_hw_params():      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_set_dai_fmt() :      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_hw_params() :      


    >>>>>>>  davinci-mcasp.c : davinci_hw_common_param() :      


    >>>>>>>  davinci-mcasp.c : davinci_hw_param() :      


    >>>>>>> davinci-mcasp.c : davinci_config_channel_size():      


    >>>>>>>  davinci-pcm.c : davinci_pcm_hw_params() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_prepare() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_enqueue_dma() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_enqueue_dma() :      

    Plug PCM: Hardware PCM card 0 'DA850/OMAP-L138 EVM' device 0 subdevice 0

    Its setup is:

      stream       : PLAYBACK

      access       : RW_INTERLEAVED

      format       : S16_LE

      subformat    : STD

      channels     : 2

      rate         : 8000

      exact rate   : 8000 (8000/1)

      msbits       : 16

      buffer_size  : 16000

      period_size  : 1000

      period_time  : 125000

      tstamp_mode  : NONE

      period_step  : 1

      avail_min    : 1000

      period_event : 0

      start_threshold  : 16000

      stop_threshold   : 16000

      silence_threshold: 0

      silence_size : 0

      boundary     : 2097152000

      appl_ptr     : 0

      hw_ptr       : 0

     

    >>>>>>>  davinci-pcm.c : davinci_pcm_trigger() :      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_trigger() :      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_start() :      


    >>>>>>>  davinci-mcasp.c : mcasp_start_tx() :      



    >>>>>>>  davinci-pcm.c :  davinci_pcm_pointer() :      


    >>>>>>>  davinci-pcm.c :  davinci_pcm_pointer() :      


    >>>>>>>  davinci-pcm.c :  davinci_pcm_pointer() :      

    aplay: pcm_write

    >>>>>>>  davinci-pcm.c : davinci_pcm_trigger() :      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_trigger() :      


    >>>>>>>  davinci-mcasp.c : davinci_mcasp_stop() :      

     

    >>>>>>>  davinci-mcasp.c : mcasp_stop_tx() :      

    :1682: write error: Input/output

    >>>>>>>  davinci-pcm.c : davinci_pcm_hw_free() :      

     error

     

    >>>>>>>  davinci-pcm.c : davinci_pcm_hw_free() :      


    >>>>>>>  davinci-pcm.c : davinci_pcm_close() :      

    root@am180x-evm:~# 

     

  • 您好:
      我们遇到了和您一样的问题,请问您仙子啊是怎么解决的呢?

  • Dear Jay

         这个问题,是不是有进展?是不是解决了?能否交流一下。谢谢。

       我们也遇到类似问题。

    目前我们调试TLv320AIC3104,无法成功播放,有错误如下。

    playback write error (DMA or IRQ trouble?)
    aplay: pcm_write:1710: write error: Input/output error

    我们怀疑是不是DMA方面配置问题,请指导一下。谢谢。

    详细log 见后面。

     

     

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    [    0.000000] Linux version 3.2.0 (zhouqun@zhouqun) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro-1.13.1-4.7-2013.03-5
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] Machine: am335xevm
    [    0.000000] Memory policy: ECC disabled, Data cache writeback
    [    0.000000] AM335X ES2.1 (sgx neon )
    [    0.000000] ------------[ cut here ]------------
    [    0.000000] WARNING: at arch/arm/mach-omap2/clkt_clksel.c:194 omap2_clksel_recalc+0xc8/0x134()
    [    0.000000] clock: Could not find fieldval 0 for clock dpll_core_m6_ck parent dpll_core_x2_ck
    [    0.000000] Modules linked in:
    [    0.000000] Backtrace:
    [    0.000000] [<c0017dbc>] (dump_backtrace+0x0/0x10c) from [<c0401004>] (dump_stack+0x18/0x1c)
    [    0.000000]  r6:c0030b28 r5:00000009 r4:c05bbe78 r3:c05dca8c
    [    0.000000] [<c0400fec>] (dump_stack+0x0/0x1c) from [<c003e4a4>] (warn_slowpath_common+0x54/0x6c)
    [    0.000000] [<c003e450>] (warn_slowpath_common+0x0/0x6c) from [<c003e560>] (warn_slowpath_fmt+0x38/0x40)
    [    0.000000]  r8:80000200 r7:c0636e64 r6:00000000 r5:c05cec38 r4:00000000
    [    0.000000] r3:00000009
    [    0.000000] [<c003e528>] (warn_slowpath_fmt+0x0/0x40) from [<c0030b28>] (omap2_clksel_recalc+0xc8/0x134)
    [    0.000000]  r3:00000000 r2:c04ec8cc
    [    0.000000] [<c0030a60>] (omap2_clksel_recalc+0x0/0x134) from [<c0034a34>] (propagate_rate+0x34/0x54)
    [    0.000000]  r6:c0636e9c r5:c05ceb38 r4:c05cec38
    [    0.000000] [<c0034a00>] (propagate_rate+0x0/0x54) from [<c0034a40>] (propagate_rate+0x40/0x54)
    [    0.000000]  r5:c05ceadc r4:c05ceb24
    [    0.000000] [<c0034a00>] (propagate_rate+0x0/0x54) from [<c0034a40>] (propagate_rate+0x40/0x54)
    [    0.000000]  r5:c05cea24 r4:c05ceac8
    [    0.000000] [<c0034a00>] (propagate_rate+0x0/0x54) from [<c0034a40>] (propagate_rate+0x40/0x54)
    [    0.000000]  r5:c05ce910 r4:c05cea10
    [    0.000000] [<c0034a00>] (propagate_rate+0x0/0x54) from [<c0034ba4>] (recalculate_root_clocks+0x40/0x58)
    [    0.000000]  r5:c05dc1e4 r4:c05ce8fc
    [    0.000000] [<c0034b64>] (recalculate_root_clocks+0x0/0x58) from [<c058cbd8>] (am33xx_clk_init+0x84/0xa0)
    [    0.000000]  r5:c05ce78c r4:c05ce78c
    [    0.000000] [<c058cb54>] (am33xx_clk_init+0x0/0xa0) from [<c058c920>] (omap3xxx_clk_init+0xe0/0x314)
    [    0.000000]  r5:c0a51040 r4:00003517
    [    0.000000] [<c058c840>] (omap3xxx_clk_init+0x0/0x314) from [<c05865b8>] (am33xx_init_early+0x3c/0x40)
    [    0.000000]  r7:c0636e64 r6:c0636e9c r5:c0a51040 r4:c05ac1c0
    [    0.000000] [<c058657c>] (am33xx_init_early+0x0/0x40) from [<c0582de0>] (setup_arch+0x714/0x804)
    [    0.000000] [<c05826cc>] (setup_arch+0x0/0x804) from [<c057f5a4>] (start_kernel+0x78/0x2dc)
    [    0.000000] [<c057f52c>] (start_kernel+0x0/0x2dc) from [<80008040>] (0x80008040)
    [    0.000000]  r6:c05ad630 r5:c05bc084 r4:10c53c7d
    [    0.000000] ---[ end trace 1b75b31a2719ed1c ]---
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/mmcblk0p2 ro rootfstype=ext3 rootwait ip=none
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 512MB = 512MB total
    [    0.000000] Memory: 513288k/513288k available, 11000k reserved, 0K highmem
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    [    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    [    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc057f000   (5596 kB)
    [    0.000000]       .init : 0xc057f000 - 0xc05ba000   ( 236 kB)
    [    0.000000]       .data : 0xc05ba000 - 0xc06213f0   ( 413 kB)
    [    0.000000]        .bss : 0xc0621414 - 0xc064ffe4   ( 187 kB)
    [    0.000000] NR_IRQS:396
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] Total of 128 interrupts on 1 active controller
    [    0.000000] OMAP clockevent source: GPTIMER2 at 24000000 Hz
    [    0.000000] OMAP clocksource: GPTIMER1 at 32768 Hz
    [    0.000000] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 131071999ms
    [    0.000000] Console: colour dummy device 80x30
    [    0.000305] Calibrating delay loop... 298.59 BogoMIPS (lpj=1492992)
    [    0.067657] pid_max: default: 32768 minimum: 301
    [    0.067932] Security Framework initialized
    [    0.068115] Mount-cache hash table entries: 512
    [    0.068817] CPU: Testing write buffer coherency: ok
    [    0.096435] omap_hwmod: pruss: failed to hardreset
    [    0.098632] print_constraints: dummy:
    [    0.099395] NET: Registered protocol family 16
    [    0.103881] OMAP GPIO hardware version 0.1
    [    0.109771] omap_mux_init: Add partition: #1: core, flags: 0
    [    0.113952]  omap_i2c.1: alias fck already exists
    [    0.115814]  omap2_mcspi.1: alias fck already exists
    [    0.116302]  omap2_mcspi.2: alias fck already exists
    [    0.118438]  edma.0: alias fck already exists
    [    0.118469]  edma.0: alias fck already exists
    [    0.118530]  edma.0: alias fck already exists
    [    0.181427] bio: create slab <bio-0> at 0
    [    0.186218] SCSI subsystem initialized
    [    0.189727] usbcore: registered new interface driver usbfs
    [    0.190429] usbcore: registered new interface driver hub
    [    0.190856] usbcore: registered new device driver usb
    [    0.192657] omap_i2c omap_i2c.1: bus 1 rev2.4.0 at 100 kHz
    [    0.195709] tps65910 1-002d: could not be detected
    [    0.198730] Advanced Linux Sound Architecture Driver Version 1.0.24.
    [    0.201110] Switching to clocksource gp timer
    [    0.237182] NET: Registered protocol family 2
    [    0.237548] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.238159] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
    [    0.238861] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
    [    0.239288] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.239318] TCP reno registered
    [    0.239318] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.239379] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.239837] NET: Registered protocol family 1
    [    0.240356] RPC: Registered named UNIX socket transport module.
    [    0.240386] RPC: Registered udp transport module.
    [    0.240386] RPC: Registered tcp transport module.
    [    0.240417] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.240905] NetWinder Floating Point Emulator V0.97 (double precision)
    [    0.272216] VFS: Disk quotas dquot_6.5.2
    [    0.272338] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    0.273437] msgmni has been set to 1002
    [    0.279846] alg: No test for stdrng (krng)
    [    0.281127] io scheduler noop registered
    [    0.281158] io scheduler deadline registered
    [    0.281372] io scheduler cfq registered (default)
    [    0.283691] Could not set LED4 to fully on
    [    0.286956] omap_uart.0: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
    [    0.966827] console [ttyO0] enabled
    [    0.971618] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
    [    0.980072] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
    [    0.988525] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
    [    0.996887] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
    [    1.005249] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
    [    1.014587] omap4_rng omap4_rng: OMAP4 Random Number Generator ver. 2.00
    [    1.043029] brd: module loaded
    [    1.057373] loop: module loaded
    [    1.061096] i2c-core: driver [tsl2550] using legacy suspend method
    [    1.067749] i2c-core: driver [tsl2550] using legacy resume method
    [    1.074371] at24 1-0051: 32768 byte 24c256 EEPROM, writable, 64 bytes/write
    [    1.141723] No daughter card found
    [    1.145416] at24 1-0050: 32768 byte 24c256 EEPROM, writable, 64 bytes/write
    [    1.154968] The board is a AM335x Beaglebone Black.
    [    1.161193] Cannot clk_get ck_32
    [    1.164825] ++++++++pin_mux:xdma_event_intr1.clkout2
    [    1.172180] tps65217 1-0024: TPS65217 ID 0xe version 1.2
    [    1.180725] print_constraints: DCDC1: 900 <--> 1800 mV at 1500 mV
    [    1.190307] print_constraints: DCDC2: 900 <--> 3300 mV at 1100 mV
    [    1.199829] print_constraints: DCDC3: 900 <--> 1500 mV at 1100 mV
    [    1.209320] print_constraints: LDO1: 1000 <--> 3300 mV at 1800 mV
    [    1.218719] print_constraints: LDO2: 900 <--> 3300 mV at 3300 mV
    [    1.228027] print_constraints: LDO3: 1800 <--> 3300 mV at 1800 mV
    [    1.237426] print_constraints: LDO4: 1800 <--> 3300 mV at 3300 mV
    [    1.244720] ++++++++pin_mux:mii1_rxerr.mii1_rxerr
    [    1.249755] ++++++++pin_mux:mii1_txen.mii1_txen
    [    1.254608] ++++++++pin_mux:mii1_rxdv.mii1_rxdv
    [    1.259429] ++++++++pin_mux:mii1_txd3.mii1_txd3
    [    1.264282] ++++++++pin_mux:mii1_txd2.mii1_txd2
    [    1.269104] ++++++++pin_mux:mii1_txd1.mii1_txd1
    [    1.273956] ++++++++pin_mux:mii1_txd0.mii1_txd0
    [    1.278778] ++++++++pin_mux:mii1_txclk.mii1_txclk
    [    1.283813] ++++++++pin_mux:mii1_rxclk.mii1_rxclk
    [    1.288818] ++++++++pin_mux:mii1_rxd3.mii1_rxd3
    [    1.293670] ++++++++pin_mux:mii1_rxd2.mii1_rxd2
    [    1.298492] ++++++++pin_mux:mii1_rxd1.mii1_rxd1
    [    1.303344] ++++++++pin_mux:mii1_rxd0.mii1_rxd0
    [    1.308166] ++++++++pin_mux:mdio_data.mdio_data
    [    1.313018] ++++++++pin_mux:mdio_clk.mdio_clk
    [    1.317657] ++++++++pin_mux:usb0_drvvbus.usb0_drvvbus
    [    1.323059] ++++++++pin_mux:usb1_drvvbus.usb1_drvvbus
    [    1.328460] ++++++++pin_mux:mcasp0_ahclkx.mcasp0_ahclkx
    [    1.334014] ++++++++pin_mux:mcasp0_aclkx.mcasp0_aclkx
    [    1.339416] ++++++++pin_mux:mcasp0_fsx.mcasp0_fsx
    [    1.344421] ++++++++pin_mux:mcasp0_axr0.mcasp0_axr0
    [    1.349609] ++++++++pin_mux:mcasp0_axr1.mcasp0_axr1
    [    1.354827] +++++++zhouqun mcasp0_init : 6
    [    1.359344]  davinci-mcasp.0: alias fck already exists
    [    1.365539] ++++++++pin_mux:gpmc_ad3.mmc1_dat3
    [    1.370269] ++++++++pin_mux:gpmc_ad2.mmc1_dat2
    [    1.375091] ++++++++pin_mux:gpmc_ad1.mmc1_dat1
    [    1.379821] ++++++++pin_mux:gpmc_ad0.mmc1_dat0
    [    1.384582] ++++++++pin_mux:gpmc_csn1.mmc1_clk
    [    1.389343] ++++++++pin_mux:gpmc_csn2.mmc1_cmd
    [    1.394104] ++++++++pin_mux:gpmc_ad7.mmc1_dat7
    [    1.398834] ++++++++pin_mux:gpmc_ad6.mmc1_dat6
    [    1.403594] ++++++++pin_mux:gpmc_ad5.mmc1_dat5
    [    1.408325] ++++++++pin_mux:gpmc_ad4.mmc1_dat4
    [    1.413085] ++++++++pin_mux:mmc0_dat3.mmc0_dat3
    [    1.417907] ++++++++pin_mux:mmc0_dat2.mmc0_dat2
    [    1.422729] ++++++++pin_mux:mmc0_dat1.mmc0_dat1
    [    1.427581] ++++++++pin_mux:mmc0_dat0.mmc0_dat0
    [    1.432403] ++++++++pin_mux:mmc0_clk.mmc0_clk
    [    1.437042] ++++++++pin_mux:mmc0_cmd.mmc0_cmd
    [    1.441680] ++++++++pin_mux:spi0_cs1.gpio0_6
    [    1.446258] ++++++++pin_mux:mcasp0_aclkr.gpio3_18
    [    1.451354]  omap_hsmmc.0: alias fck already exists
    [    1.457183]  omap_hsmmc.1: alias fck already exists
    [    1.462890] ++++zhouqun i2c2_init
    [    1.466491] ++++++++pin_mux:uart1_ctsn.i2c2_sda
    [    1.471313] ++++++++pin_mux:uart1_rtsn.i2c2_scl
    [    1.476226]  omap_i2c.3: alias fck already exists
    [    1.481933] omap_i2c omap_i2c.3: bus 3 rev2.4.0 at 100 kHz
    [    1.492065] registered am33xx_sr device
    [    1.500030] mtdoops: mtd device (mtddev=name/number) must be supplied
    [    1.507812] omap2-nand driver initializing
    [    1.512603] OneNAND driver initializing
    [    1.519470] CAN device driver interface
    [    1.523590] CAN bus driver for Bosch D_CAN controller 1.0
    [    1.571807] davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
    [    1.578369] davinci_mdio davinci_mdio.0: detected phy mask fffffffe
    [    1.586273] davinci_mdio.0: probed
    [    1.589904] davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver SMSC LAN8710/LAN8720
    [    1.599334] usbcore: registered new interface driver zd1201
    [    1.605682] usbcore: registered new interface driver cdc_ether
    [    1.612274] usbcore: registered new interface driver cdc_eem
    [    1.618591] usbcore: registered new interface driver dm9601
    [    1.624633] cdc_ncm: 04-Aug-2011
    [    1.628417] usbcore: registered new interface driver cdc_ncm
    [    1.634460] Initializing USB Mass Storage driver...
    [    1.640014] usbcore: registered new interface driver usb-storage
    [    1.646423] USB Mass Storage support registered.
    [    1.653045] mousedev: PS/2 mouse device common for all mice
    [    1.661163] omap_rtc am33xx-rtc: rtc core: registered am33xx-rtc as rtc0
    [    1.668823] i2c /dev entries driver
    [    1.673980] Linux video capture interface: v2.00
    [    1.679565] usbcore: registered new interface driver uvcvideo
    [    1.685729] USB Video Class driver (1.1.1)
    [    1.694274] OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [    1.703155] cpuidle: using governor ladder
    [    1.708648] cpuidle: using governor menu
    [    1.718353] omap4_aes_mod_init: loading AM33X AES driver
    [    1.724243] omap4-aes omap4-aes: AM33X AES hw accel rev: 3.02
    [    1.731353] omap4_aes_probe: probe() done
    [    1.736389] omap4_sham_mod_init: loading AM33X SHA/MD5 driver
    [    1.742767] omap4-sham omap4-sham: AM33X SHA/MD5 hw accel rev: 4.03
    [    1.765686] omap4_sham_probe: probe() done
    [    1.775634] usbcore: registered new interface driver usbhid
    [    1.781555] usbhid: USB HID core driver
    [    1.787536] usbcore: registered new interface driver snd-usb-audio
    [    1.795837] +++++++++++++++zhouqun aic3x_i2c_probe
    [    1.800933] control_type = SND_SOC_I2C
    [    1.805023] ++++++snd_soc_register_codec:0
    [    1.809417] +++++++++++++++zhouqun aic3x_i2c_probe
    [    1.814544] control_type = SND_SOC_I2C
    [    1.818542] ++++++snd_soc_register_codec:0
    [    1.823272] ++++++++zhouqun:snd_davinci_pcm_init
    [    1.828338] +++++++zhouqun:davinci_soc_platform_probe
    [    1.834136] ++++++++++++++++zhouqun:davinci_mcasp_init
    [    1.834136]  ++++++++++++++==zhouqun : davinci_mcasp_probe
    [    1.846038] +++++++zhouqun :evm_init
    [    1.849914] ++++zhouqun am335x_evm?
    [    1.855377] ++++++++++soc_bind_dai_link
    [    1.859436] ++++++++zhouqun:binding TLV320AIC3X at idx 0
    [    1.865356] +++++++++++++++ aic3x_probe
    [    1.869445] ++++++++++++zhouqun <-aic3x_init
    [    1.873992] +++++++zhouqun:aic3x_init
    [    1.877899] +++++zhouqun:AIC3X_ASD_INTF_CTRLA (before)= 0
    [    1.883697] +++++zhouqun:AIC3X_ASD_INTF_CTRLA (after) = 10
    [    1.889495] +++++zhouqun:AIC3X_ASD_INTF_CTRLB (before) = 0
    [    1.895324] +++++zhouqun:AIC3X_ASD_INTF_CTRLB (after) = 20
    [    1.901153] +++++++zhouqun :LDAC_VOL = af
    [    1.905426] +++++++zhouqun:RDAC_VOL = af
    [    1.909606] ++++++++++++zhouqun aic3x_init->
    [    1.915802] ++++++++++++++aic3x_probe FINISHED
    [    1.925415] +++++zhouqun:evm_aic3x_init
    [    1.930053] ++++++++++zhouqun :davinci_pcm_new
    [    1.934814] ++++++++zhouqun:davinci_pcm_preallocate_dma_buffer
    [    1.941497] ++++++++zhouqun:davinci_pcm_preallocate_dma_buffer
    [    1.948150] asoc: tlv320aic3x-hifi <-> davinci-mcasp.0 mapping ok
    [    1.957611] ALSA device list:
    [    1.960784]   #0: AM335X EVM
    [    1.963897] oprofile: hardware counters not available
    [    1.969238] oprofile: using timer interrupt.
    [    1.973846] nf_conntrack version 0.5.0 (8020 buckets, 32080 max)
    [    1.981292] ip_tables: (C) 2000-2006 Netfilter Core Team
    [    1.987213] TCP cubic registered
    [    1.990661] NET: Registered protocol family 17
    [    1.995422] can: controller area network core (rev 20090105 abi 8)
    [    2.002197] NET: Registered protocol family 29
    [    2.006896] can: raw protocol (rev 20090105)
    [    2.011444] can: broadcast manager protocol (rev 20090105 t)
    [    2.017547] Registering the dns_resolver key type
    [    2.022705] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    2.030853] ThumbEE CPU extension supported.
    [    2.035522] mux: Failed to setup hwmod io irq -22
    [    2.041931] Power Management for AM33XX family
    [    2.046966] Trying to load am335x-pm-firmware.bin (60 secs timeout)
    [    2.053924] Copied the M3 firmware to UMEM
    [    2.058410] Cortex M3 Firmware Version = 0x181
    [    2.064575] create_regulator: DCDC2: Failed to create debugfs directory
    [    2.072631] smartreflex smartreflex: am33xx_sr_probe: Driver initialized
    [    2.088409] clock: disabling unused clocks to save power
    [    2.126007] Detected MACID=d0:5f:b8:fc:3:d0
    [    2.132720] cpsw: Detected MACID = d0:5f:b8:fc:03:d2
    [    2.140228] omap_rtc am33xx-rtc: setting system clock to 2000-01-01 00:00:01 UTC (946684801)
    [    2.150207] Waiting for root device /dev/mmcblk0p2...
    [    2.161254] mmc1: new high speed MMC card at address 0001
    [    2.168212] mmcblk0: mmc1:0001 S10004 3.56 GiB
    [    2.173309] mmcblk0boot0: mmc1:0001 S10004 partition 1 4.00 MiB
    [    2.179840] mmcblk0boot1: mmc1:0001 S10004 partition 2 4.00 MiB
    [    2.188354]  mmcblk0: p1 p2
    [    2.196746]  mmcblk0boot1: unknown partition table
    [    2.206024]  mmcblk0boot0: unknown partition table
    [    2.265747] EXT3-fs (mmcblk0p2): recovery required on readonly filesystem
    [    2.273010] EXT3-fs (mmcblk0p2): write access will be enabled during recovery
    [    3.001464] kjournald starting.  Commit interval 5 seconds
    [    3.007507] EXT3-fs (mmcblk0p2): recovery complete
    [    3.017364] EXT3-fs (mmcblk0p2): mounted filesystem with ordered data mode
    [    3.024810] VFS: Mounted root (ext3 filesystem) readonly on device 179:2.
    [    3.033050] Freeing init memory: 236K
    INIT: version 2.88 booting
    Error opening /dev/fb0: No such device
    Starting udev
    Starting Bootlog daemon: bootlogd: cannot allocate pseudo tty: No such file or directory
    bootlogd.
    [    9.453826] EXT3-fs (mmcblk0p2): using internal journal
    ALSA: Restoring mixer settings...
    No state is present for card EVM
    Found hardware: "AM335X_EVM" "" "" "" ""
    Hardware is initialized using a generic method
    No state is present for card EVM
    Configuring network interfaces... [   10.664855] net eth0: CPSW phy found : id is : 0x7c0f1
    udhcpc (v1.20.2) started
    Sending discover...
    Sending discover...
    Sending discover...
    No lease, failing
    done.
    Tue Jun 25 23:09:00 UTC 2013
    INIT: Entering runlevel: 5
    Starting system message bus: dbus.
    Starting Dropbear SSH server: dropbear.
    Starting telnet daemon.
    Performing wifi calibration...
    rm: can't remove '/lib/firmware/ti-connectivity/wl1271-nvs.bin': No such file or directory
    Error: Module wl12xx_sdio is not currently loaded
    nl80211 not found.
    [   20.734954] Disabling lock debugging due to kernel taint
    Starting network benchmark server: netserver.
    Starting syslogd/klogd: done
    Starting thttpd.
    Starting Lighttpd Web Server: lighttpd.
    2013-06-25 23:09:00: (log.c.166) server started
    /
    Starting Matrix GUI application.
    ERROR: could not insert 'g_mass_storage': No such device
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the followin GPLv3 packages:
            binutils-symlinks
            binutils
            gdbserver

    If you do not wish to distribute GPLv3 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above

    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************
    ***************************************************************
    Stopping Bootlog daemon: bootlogd.

     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            

    Arago Project http://arago-project.org am335x-evm ttyO0

    Arago 2013.05 am335x-evm ttyO0

    am335x-evm login: root
    root@am335x-evm:~# cd /test/
    root@am335x-evm:/test# aplay 123.wav
    [   48.603729] +++++++++zhouqun:davinci_mcasp_startup
    [   48.608856] ++++++++zhouqun:davinci_pcm_open
    [   48.613433] +++++++zhouqun:allocate_sram
    [   48.617614] ++++++++zhouqun:davinci_pcm_dma_request
    Playing WAVE '123.wav' : Signed 16 bit Little Endian, Rate 44100[   48.632232] ++++++++zhouqun :davinci_mcasp_set_dai_fmt
     Hz, Stereo
    [   48.638092] +++++++=zhouqun:daifmt :1000d++++++++++davinci_mcasp_hw_params
    [   48.647674] ++++++++++++zhouqun :davinci_hw_common_param
    [   48.653381] ++++++++zhouqun :davinci_hw_param
    [   48.657989] +++++zhouqun :davinci_config_channel_size
    [   48.663360] +++++++zhouqun:davinci_pcm_hw_params
    [   48.670501] +++++++++zhouqun:davinci_pcm_prepare
    [   48.675476] ++++++zhouqun:davinci_pcm_enqueue_dma
    [   48.680480] ++++++zhouqun:davinci_pcm_enqueue_dma
    [   48.686248] +++++++++zhouqun:aic3x_set_power
    [   48.716949] +++++++zhouqun:davinci_pcm_trigger
    [   48.721710] +++++++++zhouqun:pcm_cmd = 1
    [   48.725860] ++++++++++++zhouqun:davinci_mcasp_trigger
    [   48.731201] +++++++++zhouqun:mcasp_cmd = 1
    [   48.735565] +++++++++zhouuqn :davinci_mcasp_start
    [   48.740539] ++++++++++zhouqun:mcasp_start_tx
    [   48.745056] ++++++++zhouqun:mcasp_set_ctl_reg
    [   48.749664] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [   48.755218] ++++++++zhouqun:mcasp_set_ctl_reg
    [   48.759826] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [   48.765350] ++++++++zhouqun:mcasp_set_ctl_reg
    [   48.769989] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [   48.775512] ++++++++zhouqun:mcasp_set_ctl_reg
    [   48.780120] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [   48.785675] ++++++++zhouqun:mcasp_set_ctl_reg
    [   48.790283] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [   48.848205] +++++zhouqun:davinci_pcm_pointer
    aplay: pcm_write[   58.843902] +++++++zhouqun:davinci_pcm_trigger
    [   58.849578] +++++++++zhouqun:pcm_cmd = 0
    [   58.853759] ++++++++++++zhouqun:davinci_mcasp_trigger
    [   58.859100] +++++++++zhouqun:mcasp_cmd = 0
    [   58.863464] ++++++++++++====zhouqun :davinci_mcasp_stop
    [   58.868988] ++++++++++++zhouqun: mcasp_stop_tx
    :1710: write error: Input/output[   58.875213] +++++++zhouqun:davinci_pcm_hw_free
     error
    [   58.881286] +++++++zhouqun:davinci_pcm_hw_free
    [   58.887512] +++++++++++zhouqun:davinci_pcm_close
    root@am335x-evm:/test# [   63.895324] +++++++++zhouqun:aic3x_set_power

    非阻塞式播放。

    root@am335x-evm:/test# aplay -N 123.wav
    [  137.655334] +++++++++zhouqun:davinci_mcasp_startup
    [  137.660491] ++++++++zhouqun:davinci_pcm_open
    [  137.665100] +++++++zhouqun:allocate_sram
    [  137.669281] ++++++++zhouqun:davinci_pcm_dma_request
    Playing WAVE '123.wav' : Signed 16 bit Little Endian, Rate 44100[  137.682586] ++++++++zhouqun :davinci_mcasp_set_dai_fmt
     Hz, Stereo
    [  137.688446] +++++++=zhouqun:daifmt :1000d++++++++++davinci_mcasp_hw_params
    [  137.698059] ++++++++++++zhouqun :davinci_hw_common_param
    [  137.703765] ++++++++zhouqun :davinci_hw_param
    [  137.708404] +++++zhouqun :davinci_config_channel_size
    [  137.713775] +++++++zhouqun:davinci_pcm_hw_params
    [  137.720886] +++++++++zhouqun:davinci_pcm_prepare
    [  137.725891] ++++++zhouqun:davinci_pcm_enqueue_dma
    [  137.730926] ++++++zhouqun:davinci_pcm_enqueue_dma
    [  137.736694] +++++++++zhouqun:aic3x_set_power
    [  137.760284] +++++++zhouqun:davinci_pcm_trigger
    [  137.765014] +++++++++zhouqun:pcm_cmd = 1
    [  137.769195] ++++++++++++zhouqun:davinci_mcasp_trigger
    [  137.774566] +++++++++zhouqun:mcasp_cmd = 1
    [  137.778900] +++++++++zhouuqn :davinci_mcasp_start
    [  137.783905] ++++++++++zhouqun:mcasp_start_tx
    [  137.788421] ++++++++zhouqun:mcasp_set_ctl_reg
    [  137.793060] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [  137.798583] ++++++++zhouqun:mcasp_set_ctl_reg
    [  137.803192] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [  137.808746] ++++++++zhouqun:mcasp_set_ctl_reg
    [  137.813385] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [  137.818908] ++++++++zhouqun:mcasp_set_ctl_reg
    [  137.823516] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [  137.829071] ++++++++zhouqun:mcasp_set_ctl_reg
    [  137.833709] +++++++++zhouqun:(mcasp_get_reg(regs) & val
    [  137.891021] +++++zhouqun:davinci_pcm_pointer
    [  137.996276] +++++zhouqun:davinci_pcm_pointer
    [  138.101104] +++++zhouqun:davinci_pcm_pointer
    [  138.206451] +++++zhouqun:davinci_pcm_pointer
    [  138.311187] +++++zhouqun:davinci_pcm_pointer
    [  138.416259] +++++zhouqun:davinci_pcm_pointer
    [  138.520996] +++++zhouqun:davinci_pcm_pointer
    [  138.625976] +++++zhouqun:davinci_pcm_pointer
    [  138.730682] +++++zhouqun:davinci_pcm_pointer
    [  138.835693] +++++zhouqun:davinci_pcm_pointer
    [  138.940429] +++++zhouqun:davinci_pcm_pointer
    [  139.045471] +++++zhouqun:davinci_pcm_pointer
    [  139.150177] +++++zhouqun:davinci_pcm_pointer



  • 这个问题有人解决了吗?是什么原因呢?