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.

omapl138 eval won't play sound

Other Parts Discussed in Thread: OMAPL138, OMAP-L138, DA8XX, PMP

I am trying to get audio to play on my omapl138/DSP eval board using aplay built from dvsdk_omapl138-evm_4_02_00_06_setuplinux. It just hangs. Any ideas? Here is what I get:

root@arago:/# aplay -V stereo -v /var/audio/Blue.wav
Playing WAVE '/var/audio/Blue.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
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         : 44100
  exact rate   : 44100 (44100/1)
  msbits       : 16
  buffer_size  : 32768
  period_size  : 2048
  period_time  : 46439
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 2048
  period_event : 0
  start_threshold  : 32768
  stop_threshold   : 32768
  silence_threshold: 0
  silence_size : 0
  boundary     : 1073741824
  appl_ptr     : 0
  hw_ptr       : 0
                                  +00%|00%+

Aborted by signal Interrupt...

This is where I press control-c

  • If I wait long enough I get:

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

    This happens after a couple of minutes. Any idea what I am doing wrong?

  • Hi,

    Verify whether you are able to see audio device while booting the Kernel. If audio device is identified, you should see the below:

    ALSA device list:
      #0: DA850/OMAP-L138 EVM

    Also, try to play the wave file without using the -V option and see whether the behavior changes.

    Regards, Sudhakar

  • Yes I see the also device. I tried it without the -V with the same results. Actually the -V verifies that it sees the alsa device and displays parameters from it.

     

    Dennis

  • I tried without the -v and the -V. with the same results.

     

    Dennis

  • Are you using the pre built kernel out of the box from the SDK or are you using a custom built kernel? I don't believe there are any known issues with aplay using the out of the box kernel, my first thought would be that something was left out or messed up in a custom kernel build, so it may be worth trying another kernel image.

  • I tried the brebuild ternel and a custom one. Same problem with both

  • One more thought on this, I usually use just the base board, without the extra application board attached, it may be worth trying without the application board if you have not tried that already.

  • Hi Dennis,

    DVSDK 04_02_00_06 is using PSP Release version 03.20.00.13. Today I took the pre-built uImage from this PSP version and tested audio on OMAP-L138 and I did not face any issues. I used the same command what you are using (aplay -V stereo -v test.wav). Can you try this with a different EVM? Also please post the complete Kernel booting log.

    Regards, Sudhakar

     

  • What do you mean EVM? do you mean with a different board?

    Here is the console from bootup:

     

    Booting with TI UBL
    Device OPP (300MHz, 1.2V)

    U-Boot 2009.11 (May 03 2010 - 15:38:40)

    I2C:   ready
    DRAM:  64 MB
    In:    serial
    Out:   serial
    Err:   serial
    ARM Clock : 300000000 Hz
    DDR Clock : 132000000 Hz
    Net:   Ethernet PHY: GENERIC @ 0x00

    Hit any key to stop autoboot:  0
    Using  device
    TFTP from server 192.168.249.18; our IP address is 192.168.249.243
    Filename 'uImage'.
    Load address: 0xc0700000
    Loading: #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             #################################################################
             ######################################
    done
    Bytes transferred = 2187060 (215f34 hex)
    ## Booting kernel from Legacy Image at c0700000 ...
       Image Name:   Arago/2.6.32+2.6.33-rc4-psp03.20
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    2186996 Bytes =  2.1 MB
       Load Address: c0008000
       Entry Point:  c0008000
       Verifying Checksum ... OK
       Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    Linux version 2.6.33-rc4 (sdk@nemo) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #1 PREEMPT Thu Mar 24 23:27:57 CDT 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 variant 0x0
    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 24320
    Kernel command line: console=ttyS2,115200n8 root=/dev/nfs nfsroot=192.168.249.18:/srv/omap rw ip=dhcp mem=32M@0xc0000000 mem=64M@0xc4000000
    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: 32MB 64MB = 96MB total
    Memory: 92704KB available (4164K code, 320K data, 148K 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... 149.50 BogoMIPS (lpj=747520)
    Mount-cache hash table entries: 512
    CPU: Testing write buffer coherency: ok
    DaVinci: 144 gpio irqs
    regulator: core version 0.5
    NET: Registered protocol family 16
    da850_evm_init: mmcsd2 registration failed: -1bio: 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
    regulator: VDCDC1: 3200 <--> 3300 mV at 3300 mV
    regulator: VDCDC2: 1750 <--> 3300 mV at 3300 mV
    regulator: VDCDC3: 950 <--> 1375 mV at 1200 mV
    regulator: LDO1: 1800 mV
    regulator: LDO2: 1150 <--> 1300 mV at 1200 mV
    pca953x 1-0020: failed reading register
    i2c-gpio i2c-gpio.1: using pins 20 (SDA) and 21 (SCL)
    Bluetooth: Core ver 2.15
    NET: Registered protocol family 31
    Bluetooth: HCI device and connection manager initialized
    Bluetooth: HCI socket layer initialized
    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
    JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    msgmni has been set to 181
    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
    ahci ahci: forcing PORTS_IMPL to 0x1
    ahci ahci: AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
    ahci ahci: flags: ncq sntf pm led clo only pmp pio slum part ccc
    scsi0 : ahci
    ata1: SATA max UDMA/133 irq 67
    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: 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: ff:ff:ff:ff:ff:ff
    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.
    input: TPS6507x Touchscreen as /devices/platform/i2c-gpio.1/i2c-1/1-0048/input/input0
    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
    usbcore: registered new interface driver uvcvideo
    USB Video Class driver (v0.1.0)
    watchdog watchdog: heartbeat 60 sec
    Bluetooth: HCI UART driver ver 2.2
    Bluetooth: HCI H4 protocol initialized
    Bluetooth: HCI BCSP protocol initialized
    Bluetooth: HCILL protocol initialized
    cpuidle: using governor ladder
    cpuidle: using governor menu
    davinci_mmc davinci_mmc.0: Using DMA, 4-bit mode
    davinci_mmc davinci_mmc.1: Using DMA, 4-bit mode
    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
    asoc: tlv320aic3x <-> davinci-i2s mapping ok
    ALSA device list:
      #0: DA850/OMAP-L138 EVM (tlv320aic3x)
    TCP cubic registered
    NET: Registered protocol family 17
    Bluetooth: L2CAP ver 2.14
    Bluetooth: L2CAP socket layer initialized
    Bluetooth: SCO (Voice Link) ver 0.6
    Bluetooth: SCO socket layer initialized
    ata1: SATA link down (SStatus 0 SControl 300)
    Bluetooth: RFCOMM TTY layer initialized
    Bluetooth: RFCOMM socket layer initialized
    Bluetooth: RFCOMM ver 1.11
    Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    Bluetooth: BNEP filters: protocol multicast
    Bluetooth: HIDP (Human Interface Emulation) ver 1.2
    Clocks: disable unused emac
    Clocks: disable unused aemif
    Clocks: disable unused spi0
    regulator_init_complete: incomplete constraints, leaving LDO2 on
    regulator_init_complete: incomplete constraints, leaving LDO1 on
    regulator_init_complete: incomplete constraints, leaving VDCDC3 on
    regulator_init_complete: incomplete constraints, leaving VDCDC2 on
    regulator_init_complete: incomplete constraints, leaving VDCDC1 on
    davinci_emac_probe: using random MAC addr: 0a:75:02:76:46:95
    emac-mii: probed
    omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
    eth0: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=1:00, id=7c0f1)
    Sending DHCP requests .
    PHY: 1:00 - Link is Up - 100/Full
    ., OK
    IP-Config: Got DHCP answer from 0.0.0.0, my address is 192.168.249.16
    IP-Config: Complete:
         device=eth0, addr=192.168.249.16, mask=255.255.255.0, gw=192.168.249.1,
         host=192.168.249.16, domain=psaudio.com, nis-domain=(none),
         bootserver=0.0.0.0, rootserver=192.168.249.18, rootpath=
    Looking up port of RPC 100003/2 on 192.168.249.18
    Looking up port of RPC 100005/1 on 192.168.249.18
    VFS: Mounted root (nfs filesystem) on device 0:13.
    Freeing init memory: 148K
    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
    NET: Registered protocol family 10
    logger: mount: mount point /proc/bus/usb does not exist
    ALSA: Restoring mixer settings...
    NOT configuring network interfaces: / is an NFS mount
    Mon Mar 28 15:28:00 UTC 2011
    INIT: Entering runlevel: 5
    Starting system message bus: dbus.
    Starting Dropbear SSH server: dropbear.
    Starting telnet daemon.
    Starting syslogd/klogd: done
    Starting thttpd.
    CMEMK module: built on May 13 2011 at 09:04:40
      Reference Linux version 2.6.33
      File /usr/local/dvsdk/linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
    CMEM Range Overlaps Kernel Physical - allowing overlap
    CMEM phys_start (0xc2000000) overlaps kernel (0xc0000000 -> 0xc6000000)
    allocated heap buffer 0xc9000000 of size 0x1200000
    heap fallback enabled - will try heap if pool buffer is not available
    cmemk initialized
    DSPLINK Module (1.65.00.02) created on Date: Jun  3 2011 Time: 09:31:20

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

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

    Arago 2011.02 arago ttyS2

    arago login:

     

  • Hi Dennis,

    EVM means Evaluation module. Yes, I wanted you to test it on a different board.

    From the booting log I see that you have also enabled Bluetooth. As far as I remember, on OMAP-L138 Bluetooth uses UART1 interface it needs UART flow control to be enabled. When UART flow control is enabled McASP will not work. Can you let me know the settings of S7 switch on the OMAP-L138 board? For flow control to work, it is advised that S7-2 is ON. You can configure S7-2 switch to off and see whether audio works.

    Regards, Sudhakar

  • Currently I do not have another board, but I might on wednesday.

    Thank you turning S7-2 to the off position fixed my problem. I completly missed that in the documentation. Thanks gain.

  • Hi,

    Great. Can you close this thread by clicking on Verified Answer?

    Regards, Sudhakar