* Using aplay and arecord on an ARM
@ 2007-06-19 19:37 Paul Kavan
2007-06-19 20:07 ` Lee Revell
0 siblings, 1 reply; 22+ messages in thread
From: Paul Kavan @ 2007-06-19 19:37 UTC (permalink / raw)
To: Liam Girdwood; +Cc: alsa-devel
Liam:
I have managed to get the alsa-libs and aplay, arecord, and speaker-test on
my board, but I am unsure how to get them to play. I have tried making the
device nodes and am using a simple alsa.conf, but still no joy. I am sure
there is something simple I am missing.
Trying to find some documentation on this. I am assuming there is some
disconnect between the interface and my conf file. I have my alsa.conf file
in /usr/share/alsa/ and it is:
pcm.!default {
type hw
card 0
}
pcm.hw {
type hw
card 0
device 0
subdevice 0
}
ctl.!default {
type hw
card 0
}
ctl.hw {
type hw
card 0
}
ctl.w6811 {
type hw
card 0
}
pcm.w6811 {
type hw
card 0
device 0
subdevice 0
}
ctl.!default = ctl.w6811
pcm.!default = pcm.w6811
ctl.hw {
@args[ CARD ]
@args.CARD {
type string
default "0"
}
type hw
card $CARD
}
pcm.hw {
@args[ CARD DEV SUBDEV ]
@args.CARD {
type string
default "0"
}
@args.DEV {
type integer
default 0
}
@args.SUBDEV {
type integer
default 0
}
type hw
card $CARD
device $DEV
subdevice $SUBDEV
}
I have some /proc/ entries:
/proc/asound $ ls
GRHEKW6811 cards pcm version
card0 devices timers
/proc/asound $ cat cards
0 [GRHEKW6811 ]: W6811 - GRH_EK_W6811
GRH_EK_W6811 (W6811)
/proc/asound $ cat devices
0: [ 0] : control
16: [ 0- 0]: digital audio playback
24: [ 0- 0]: digital audio capture
33: : timer
/proc/asound $ cat pcm
00-00: W6811 W6811-PCM-0 : : playback 1 : capture 1
/proc/asound $ cat timers
G0: system timer : 10000.000us (10000000 ticks)
P0-0-0: PCM playback 0-0-0 : SLAVE
P0-0-1: PCM capture 0-0-1 : SLAVE
/proc/asound $ cat version
Advanced Linux Sound Architecture Driver Version 1.0.14rc4 (Wed May 09
09:51:39.
Now, into GRHEKW6811 (which takes me to card0) I get a pcm0c and pcm0p
directory. Using cat info, I get:
/proc/asound/card0/pcm0c $ cat info
card: 0
device: 0
subdevice: 0
stream: CAPTURE
id: W6811 W6811-PCM-0
name:
subname: subdevice #0
class: 0
subclass: 0
subdevices_count: 1
subdevices_avail: 1
/proc/asound/card0/pcm0c $ cd ../pcm0p/
/proc/asound/card0/pcm0p $ cat info
card: 0
device: 0
subdevice: 0
stream:
PLAYBACK
id: W6811
W6811-PCM-0
name:
subname: subdevice
#0
class:
0
subclass:
0
subdevices_count:
1
subdevices_avail: 1
I then did:
mknod -m 666 /dev/snd/pcm0p c 116 0
mknod -m 666 /dev/snd/pcm0c c 116 0
However, when I try speaker-test, I get:
/usr/lib/bin $ ./speaker-test -D pcm0p
speaker-test 1.0.14
Playback device is pcm0p
Stream parameters are 48000Hz, S16_LE, 1 channels
Using 16 octaves of pink noise
ALSA lib pcm.c:2144:(snd_pcm_open_noupdate) Unknown PCM pcm0p
Playback open error: -2,No such file or directory
Same for default:
/usr/lib/bin $ ./speaker-test -D
default
speaker-test 1.0.14
Playback device is
default
Stream parameters are 48000Hz, S16_LE, 1
channels
Using 16 octaves of pink
noise
ALSA lib pcm.c:2144:(snd_pcm_open_noupdate) Unknown PCM
default
Playback open error: -2,No such file or directory
When I try aplay -l and arecord -l, I get:
/usr/lib/bin $ ./aplay
-l
aplay: device_list:204: no soundcards
found...
/usr/lib/bin $ ./arecord
-l
arecord: device_list:204: no soundcards found...
I am at a loss here. Anyone have any advice, pointers, tips, etc......
Thanks.
Paul
--
***************************************
Paul David Kavan
Project Engineer
GRH Electronics, Inc.
402-734-4900
pkavan@gmail.com
***************************************
^ permalink raw reply [flat|nested] 22+ messages in thread* Re: Using aplay and arecord on an ARM 2007-06-19 19:37 Using aplay and arecord on an ARM Paul Kavan @ 2007-06-19 20:07 ` Lee Revell 2007-06-19 20:28 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Lee Revell @ 2007-06-19 20:07 UTC (permalink / raw) To: Paul Kavan; +Cc: alsa-devel On 6/19/07, Paul Kavan <pkavan@gmail.com> wrote: > I have managed to get the alsa-libs and aplay, arecord, and speaker-test on > my board, but I am unsure how to get them to play. I have tried making the > device nodes and am using a simple alsa.conf, but still no joy. I am sure > there is something simple I am missing. What does "strace aplay file.wav" output? Lee ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-19 20:07 ` Lee Revell @ 2007-06-19 20:28 ` Paul Kavan 2007-06-19 20:31 ` Lee Revell 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-19 20:28 UTC (permalink / raw) To: Lee Revell; +Cc: alsa-devel On 6/19/07, Lee Revell <rlrevell@joe-job.com> wrote: > > On 6/19/07, Paul Kavan <pkavan@gmail.com> wrote: > > I have managed to get the alsa-libs and aplay, arecord, and speaker-test > on > > my board, but I am unsure how to get them to play. I have tried making > the > > device nodes and am using a simple alsa.conf, but still no joy. I am > sure > > there is something simple I am missing. > > What does "strace aplay file.wav" output? > > Lee > Here is the output of strace aplay Noise.wav: /usr/lib/share/sounds/alsa $ strace aplay Noise.wav execve("/usr/sbin/aplay", ["aplay", "Noise.wav"], [/* 7 vars */]) = 0 mmap2(NULL, 20, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40005000 stat("/etc/ld.so.cache", {st_mode=S_IFREG|0644, st_size=1150, ...}) = 0 open("/etc/ld.so.cache", O_RDONLY) = 3 mmap2(NULL, 1150, PROT_READ, MAP_SHARED, 3, 0) = 0x40006000 close(3) = 0 open("/usr/lib/libasound.so.2", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0755, st_size=770500, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\24\373\1"..., 4096) = 4096 mmap2(NULL, 770048, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4000e000 mmap2(0x4000e000, 752456, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4000e000 mmap2(0x400c6000, 15744, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb8) = 0x400c6000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libm.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=45812, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0t\22\0\000"..., 4096) = 4096 mmap2(NULL, 81920, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400ca000 mmap2(0x400ca000, 41428, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400ca000 mmap2(0x400dc000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xa) = 0x400dc000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libdl.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=8900, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0(\10\0\000"..., 4096) = 4096 mmap2(NULL, 40960, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400de000 mmap2(0x400de000, 5760, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400de000 mmap2(0x400e7000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1) = 0x400e7000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libpthread.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=63852, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0D<\0\0004"..., 4096) = 4096 mmap2(NULL, 106496, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400e8000 mmap2(0x400e8000, 40952, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400e8000 mmap2(0x400fa000, 21732, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xa) = 0x400fa000 mmap2(0x40100000, 5788, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x401000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libgcc_s.so.1", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=44167, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0X\25\0\000"..., 4096) = 4096 mmap2(NULL, 65536, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40102000 mmap2(0x40102000, 28800, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40102000 mmap2(0x40111000, 548, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x7) = 0x40111000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0000\253\0"..., 4096) = 4096 mmap2(NULL, 360448, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40112000 mmap2(0x40112000, 302380, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40112000 mmap2(0x40164000, 5172, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x4a) = 0x40164000 mmap2(0x40166000, 16020, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40160 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libm.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=45812, ...}) = 0 close(3) = 0 open("/lib/libdl.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=8900, ...}) = 0 close(3) = 0 open("/lib/libpthread.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=63852, ...}) = 0 close(3) = 0 open("/lib/libgcc_s.so.1", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=44167, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 munmap(0x40006000, 1150) = 0 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21096, ...}) = 0 mprotect(0x400dc000, 4096, PROT_READ) = 0 mprotect(0x400e7000, 4096, PROT_READ) = 0 mprotect(0x400fa000, 4096, PROT_READ) = 0 mprotect(0x40164000, 4096, PROT_READ) = 0 mprotect(0x4000c000, 4096, PROT_READ) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 getpid() = 764 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_STACK, {rlim_cur=2040*1024, rlim_max=RLIM_INFINITY}) = 0 rt_sigaction(SIGRTMIN, {0x400f1d70, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x400f1c98, [RTMIN], 0x4000000 /* SA_??? */}, NULL, 8) = 0 rt_sigaction(SIGRT_2, {0x400f12d0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RT_1], NULL, 8) = 0 brk(0) = 0x1c000 brk(0x1d000) = 0x1d000 stat("/home/grhuser/buildroot/build_arm/root/usr/share/alsa/alsa.conf", 0xbebe4b70) = -1 ENOENT (No) write(2, "ALSA lib ", 9ALSA lib ) = 9 write(2, "pcm.c", 5pcm.c) = 5 write(2, ":", 1:) = 1 write(2, "2144", 42144) = 4 write(2, ":(", 2:() = 2 write(2, "snd_pcm_open_noupdate", 21snd_pcm_open_noupdate) = 21 write(2, ") ", 2) ) = 2 write(2, "Unknown PCM ", 12Unknown PCM ) = 12 write(2, "default", 7default) = 7 write(2, "\n", 1 ) = 1 write(2, "aplay", 5aplay) = 5 write(2, ": ", 2: ) = 2 write(2, "main", 4main) = 4 write(2, ":", 1:) = 1 write(2, "545", 3545) = 3 write(2, ": ", 2: ) = 2 write(2, "audio open error: ", 18audio open error: ) = 18 write(2, "No such file or directory", 25No such file or directory) = 25 write(2, "\n", 1 ) = 1 exit(1) = ? Process 764 detached Something here sticks out as a problem. There is a line: stat("/home/grhuser/buildroot/build_arm/root/usr/share/alsa/alsa.conf", 0xbebe4b70) = -1 it should not be looking in this directory, but rather in "usr/share/alsa/alsa.conf". Might be why it cannot find the alsa.conf How do I change that? Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-19 20:28 ` Paul Kavan @ 2007-06-19 20:31 ` Lee Revell 2007-06-19 20:36 ` Paul Kavan 2007-06-20 10:01 ` Takashi Iwai 0 siblings, 2 replies; 22+ messages in thread From: Lee Revell @ 2007-06-19 20:31 UTC (permalink / raw) To: Paul Kavan; +Cc: alsa-devel On 6/19/07, Paul Kavan <pkavan@gmail.com> wrote: > it should not be looking in this directory, but rather in > "usr/share/alsa/alsa.conf". Might be why it cannot find the alsa.conf I struggled with the exact same problem about a year ago, I don't remember the solution but it's in the list archives. Lee ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-19 20:31 ` Lee Revell @ 2007-06-19 20:36 ` Paul Kavan 2007-06-19 21:03 ` Paul Kavan 2007-06-20 10:01 ` Takashi Iwai 1 sibling, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-19 20:36 UTC (permalink / raw) To: Lee Revell; +Cc: alsa-devel On 6/19/07, Lee Revell <rlrevell@joe-job.com> wrote: > > On 6/19/07, Paul Kavan <pkavan@gmail.com> wrote: > > it should not be looking in this directory, but rather in > > "usr/share/alsa/alsa.conf". Might be why it cannot find the alsa.conf > > I struggled with the exact same problem about a year ago, I don't > remember the solution but it's in the list archives. > > Lee > Thanks Lee, I will try to hunt that down. The list archives on http://mailman.alsa-project.org/pipermail/alsa-devel/ only go back to March....might be a fun search. Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-19 20:36 ` Paul Kavan @ 2007-06-19 21:03 ` Paul Kavan 0 siblings, 0 replies; 22+ messages in thread From: Paul Kavan @ 2007-06-19 21:03 UTC (permalink / raw) To: Lee Revell; +Cc: alsa-devel Found a quick workaround....although I would like to clean it up. Still does not work, but gets past the not finding the alsa.conf part. strace aplay Noise.wav now gives: /usr/lib/share/sounds/alsa $ strace aplay Noise.wav execve("/usr/sbin/aplay", ["aplay", "Noise.wav"], [/* 7 vars */]) = 0 mmap2(NULL, 20, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40005000 stat("/etc/ld.so.cache", {st_mode=S_IFREG|0644, st_size=1150, ...}) = 0 open("/etc/ld.so.cache", O_RDONLY) = 3 mmap2(NULL, 1150, PROT_READ, MAP_SHARED, 3, 0) = 0x40006000 close(3) = 0 open("/usr/lib/libasound.so.2", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0755, st_size=770500, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\24\373\1"..., 4096) = 4096 mmap2(NULL, 770048, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4000e000 mmap2(0x4000e000, 752456, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4000e000 mmap2(0x400c6000, 15744, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb8) = 0x400c6000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libm.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=45812, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0t\22\0\000"..., 4096) = 4096 mmap2(NULL, 81920, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400ca000 mmap2(0x400ca000, 41428, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400ca000 mmap2(0x400dc000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xa) = 0x400dc000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libdl.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=8900, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0(\10\0\000"..., 4096) = 4096 mmap2(NULL, 40960, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400de000 mmap2(0x400de000, 5760, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400de000 mmap2(0x400e7000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1) = 0x400e7000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libpthread.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=63852, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0D<\0\0004"..., 4096) = 4096 mmap2(NULL, 106496, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400e8000 mmap2(0x400e8000, 40952, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400e8000 mmap2(0x400fa000, 21732, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xa) = 0x400fa000 mmap2(0x40100000, 5788, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x401000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libgcc_s.so.1", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=44167, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0X\25\0\000"..., 4096) = 4096 mmap2(NULL, 65536, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40102000 mmap2(0x40102000, 28800, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40102000 mmap2(0x40111000, 548, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x7) = 0x40111000 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40007000 read(3, "\177ELF\1\1\1a\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0000\253\0"..., 4096) = 4096 mmap2(NULL, 360448, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40112000 mmap2(0x40112000, 302380, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40112000 mmap2(0x40164000, 5172, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x4a) = 0x40164000 mmap2(0x40166000, 16020, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40160 close(3) = 0 munmap(0x40007000, 4096) = 0 open("/lib/libm.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=45812, ...}) = 0 close(3) = 0 open("/lib/libdl.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=8900, ...}) = 0 close(3) = 0 open("/lib/libpthread.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=63852, ...}) = 0 close(3) = 0 open("/lib/libgcc_s.so.1", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=44167, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 open("/lib/libc.so.0", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=309840, ...}) = 0 close(3) = 0 munmap(0x40006000, 1150) = 0 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21096, ...}) = 0 mprotect(0x400dc000, 4096, PROT_READ) = 0 mprotect(0x400e7000, 4096, PROT_READ) = 0 mprotect(0x400fa000, 4096, PROT_READ) = 0 mprotect(0x40164000, 4096, PROT_READ) = 0 mprotect(0x4000c000, 4096, PROT_READ) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 getpid() = 844 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_STACK, {rlim_cur=2040*1024, rlim_max=RLIM_INFINITY}) = 0 rt_sigaction(SIGRTMIN, {0x400f1d70, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x400f1c98, [RTMIN], 0x4000000 /* SA_??? */}, NULL, 8) = 0 rt_sigaction(SIGRT_2, {0x400f12d0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RT_1], NULL, 8) = 0 brk(0) = 0x1c000 brk(0x1d000) = 0x1d000 stat("/home/grhuser/buildroot/build_arm/root/usr/share/alsa/alsa.conf", {st_mode=S_IFREG|0644, st_s0 open("/home/grhuser/buildroot/build_arm/root/usr/share/alsa/alsa.conf", O_RDONLY) = 3 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbed04b14) = -1 ENOTTY (Inappropriate ioctl for device) brk(0x1e000) = 0x1e000 read(3, "pcm.!default {\n type hw\n car"..., 4096) = 864 write(2, "ALSA lib ", 9ALSA lib ) = 9 write(2, "conf.c", 6conf.c) = 6 write(2, ":", 1:) = 1 write(2, "975", 3975) = 3 write(2, ":(", 2:() = 2 write(2, "parse_value", 11parse_value) = 11 write(2, ") ", 2) ) = 2 write(2, "card", 4card) = 4 write(2, " is not a string", 16 is not a string) = 16 write(2, "\n", 1 ) = 1 write(2, "ALSA lib ", 9ALSA lib ) = 9 write(2, "conf.c", 6conf.c) = 6 write(2, ":", 1:) = 1 write(2, "1588", 41588) = 4 write(2, ":(", 2:() = 2 write(2, "snd_config_load1", 16snd_config_load1) = 16 write(2, ") ", 2) ) = 2 write(2, "_toplevel_", 10_toplevel_) = 10 write(2, ":", 1:) = 1 write(2, "45", 245) = 2 write(2, ":", 1:) = 1 write(2, "1", 11) = 1 write(2, ":", 1:) = 1 write(2, "Invalid argument", 16Invalid argument) = 16 write(2, "\n", 1 ) = 1 close(3) = 0 write(2, "ALSA lib ", 9ALSA lib ) = 9 write(2, "conf.c", 6conf.c) = 6 write(2, ":", 1:) = 1 write(2, "3066", 43066) = 4 write(2, ":(", 2:() = 2 write(2, "snd_config_update_r", 19snd_config_update_r) = 19 write(2, ") ", 2) ) = 2 write(2, "/home/grhuser/buildroot/build_ar"..., 63/home/grhuser/buildroot/build_arm/root/usr/share/3 write(2, " may be old or corrupted: consid"..., 54 may be old or corrupted: consider to remove or f4 write(2, "\n", 1 ) = 1 write(2, "aplay", 5aplay) = 5 write(2, ": ", 2: ) = 2 write(2, "main", 4main) = 4 write(2, ":", 1:) = 1 write(2, "545", 3545) = 3 write(2, ": ", 2: ) = 2 write(2, "audio open error: ", 18audio open error: ) = 18 write(2, "Invalid argument", 16Invalid argument) = 16 write(2, "\n", 1 ) = 1 exit(1) = ? Process 844 detached Not sure if this helps, but trying to make some progress. Paul ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-19 20:31 ` Lee Revell 2007-06-19 20:36 ` Paul Kavan @ 2007-06-20 10:01 ` Takashi Iwai 2007-06-20 10:54 ` Nobin Mathew 1 sibling, 1 reply; 22+ messages in thread From: Takashi Iwai @ 2007-06-20 10:01 UTC (permalink / raw) To: Lee Revell; +Cc: Paul Kavan, alsa-devel At Tue, 19 Jun 2007 16:31:31 -0400, Lee Revell wrote: > > On 6/19/07, Paul Kavan <pkavan@gmail.com> wrote: > > it should not be looking in this directory, but rather in > > "usr/share/alsa/alsa.conf". Might be why it cannot find the alsa.conf > > I struggled with the exact same problem about a year ago, I don't > remember the solution but it's in the list archives. The problem is likely you pass --prefix=$MYROOT/usr or so. The prefix option should be unchanged. Anyway, alsa-lib-1.0.14a has extra configure options, --with-configdir and --with-plugindir, with which you can specify the exact paths, independent from $prefix. Takashi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 10:01 ` Takashi Iwai @ 2007-06-20 10:54 ` Nobin Mathew 2007-06-20 14:27 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Nobin Mathew @ 2007-06-20 10:54 UTC (permalink / raw) To: Takashi Iwai; +Cc: Paul Kavan, alsa-devel, Lee Revell Build alsa-lib and alsa-utils with prefix option --prefix=/usr while installing give the destination directory make install DESTDIR=$MYINSTALLDIR Then copy the installed executables to ARM root file sytem This should solve the issue. On 6/20/07, Takashi Iwai <tiwai@suse.de> wrote: > At Tue, 19 Jun 2007 16:31:31 -0400, > Lee Revell wrote: > > > > On 6/19/07, Paul Kavan <pkavan@gmail.com> wrote: > > > it should not be looking in this directory, but rather in > > > "usr/share/alsa/alsa.conf". Might be why it cannot find the alsa.conf > > > > I struggled with the exact same problem about a year ago, I don't > > remember the solution but it's in the list archives. > > The problem is likely you pass --prefix=$MYROOT/usr or so. > The prefix option should be unchanged. > > Anyway, alsa-lib-1.0.14a has extra configure options, > --with-configdir and --with-plugindir, with which you can specify the > exact paths, independent from $prefix. > > > Takashi > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@alsa-project.org > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel > ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 10:54 ` Nobin Mathew @ 2007-06-20 14:27 ` Paul Kavan 2007-06-20 14:32 ` Nobin Mathew 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 14:27 UTC (permalink / raw) To: Nobin Mathew; +Cc: Takashi Iwai, alsa-devel, Lee Revell On 6/20/07, Nobin Mathew <nobin.mathew@gmail.com> wrote: > > Build alsa-lib and alsa-utils with prefix option > > --prefix=/usr > > while installing give the destination directory > > make install DESTDIR=$MYINSTALLDIR > > Then copy the installed executables to ARM root file sytem > > This should solve the issue. > > On 6/20/07, Takashi Iwai <tiwai@suse.de> wrote: > > At Tue, 19 Jun 2007 16:31:31 -0400, > > Lee Revell wrote: > > > > > > On 6/19/07, Paul Kavan < pkavan@gmail.com> wrote: > > > > it should not be looking in this directory, but rather in > > > > "usr/share/alsa/alsa.conf". Might be why it cannot find the > alsa.conf > > > > > > I struggled with the exact same problem about a year ago, I don't > > > remember the solution but it's in the list archives. > > > > The problem is likely you pass --prefix=$MYROOT/usr or so. > > The prefix option should be unchanged. > > > > Anyway, alsa-lib-1.0.14a has extra configure options, > > --with-configdir and --with-plugindir, with which you can specify the > > exact paths, independent from $prefix. > > > > > > Takashi Thanks Takashi and Mathew. I just want to make sure I am clear on this. I create my embedded rfs for an ARM9 processor on my host machine. The path to the rfs is: $HOME/buildroot/build_arm/root/... So, you are saying that when I configure alsa-libs, I should be using: CC=arm-linux-gcc ./configure --target=arm-linux --with-versioned=no --prefix=/usr and then make install DESTDIR=$HOME/buildroot/build_arm/root Is this correct? I just want to make sure the libs will get into my target's rfs that way. Thanks. Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 14:27 ` Paul Kavan @ 2007-06-20 14:32 ` Nobin Mathew [not found] ` <61c0054e0706200739k2b934a9avbffb133937adba4c@mail.gmail.com> 0 siblings, 1 reply; 22+ messages in thread From: Nobin Mathew @ 2007-06-20 14:32 UTC (permalink / raw) To: Paul Kavan; +Cc: Takashi Iwai, alsa-devel, Lee Revell Yes, but take care of permissions. you need root permissions in ARM root file system. On 6/20/07, Paul Kavan <pkavan@gmail.com> wrote: > On 6/20/07, Nobin Mathew <nobin.mathew@gmail.com> wrote: > > > Build alsa-lib and alsa-utils with prefix option > > > > --prefix=/usr > > > > while installing give the destination directory > > > > make install DESTDIR=$MYINSTALLDIR > > > > Then copy the installed executables to ARM root file sytem > > > > This should solve the issue. > > > > On 6/20/07, Takashi Iwai <tiwai@suse.de> wrote: > > > At Tue, 19 Jun 2007 16:31:31 -0400, > > > Lee Revell wrote: > > > > > > > > On 6/19/07, Paul Kavan < pkavan@gmail.com> wrote: > > > > > it should not be looking in this directory, but rather in > > > > > "usr/share/alsa/alsa.conf". Might be why it cannot find the > alsa.conf > > > > > > > > I struggled with the exact same problem about a year ago, I don't > > > > remember the solution but it's in the list archives. > > > > > > The problem is likely you pass --prefix=$MYROOT/usr or so. > > > The prefix option should be unchanged. > > > > > > Anyway, alsa-lib-1.0.14a has extra configure options, > > > --with-configdir and --with-plugindir, with which you can specify the > > > exact paths, independent from $prefix. > > > > > > > > > Takashi > > Thanks Takashi and Mathew. I just want to make sure I am clear on this. I > create my embedded rfs for an ARM9 processor on my host machine. The path to > the rfs is: > > $HOME/buildroot/build_arm/root/... > > So, you are saying that when I configure alsa-libs, I should be using: > > CC=arm-linux-gcc ./configure --target=arm-linux --with-versioned=no > --prefix=/usr > > and then > > make install DESTDIR=$HOME/buildroot/build_arm/root > > Is this correct? I just want to make sure the libs will get into my target's > rfs that way. > > Thanks. > > Paul > > > > > -- > *************************************** > Paul David Kavan > Project Engineer > GRH Electronics, Inc. > 402-734-4900 > pkavan@gmail.com > *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
[parent not found: <61c0054e0706200739k2b934a9avbffb133937adba4c@mail.gmail.com>]
[parent not found: <61c0054e0706200824v444d6c8dr6b6023b16043fa7@mail.gmail.com>]
[parent not found: <61c0054e0706200827h389e2c6v46dfc544def95e82@mail.gmail.com>]
* Re: Using aplay and arecord on an ARM [not found] ` <61c0054e0706200827h389e2c6v46dfc544def95e82@mail.gmail.com> @ 2007-06-20 15:40 ` Paul Kavan 2007-06-20 16:00 ` Takashi Iwai 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 15:40 UTC (permalink / raw) To: Nobin Mathew; +Cc: alsa-devel On 6/20/07, Paul Kavan <pkavan@gmail.com> wrote: > > Okay: > > Here is where I ran into troubles yesterday. I am working on configuring > alsa-utils. When I do: > > CC=arm-linux-gcc ./configure --target=arm-linux --with-versioned=no > --prefix=/usr --host=i686-pc-linux-gnu > > I get the error: > > grhuser@pcL7:$ CC=arm-linux-gcc ./configure --target=arm-linux > --with-versioned=no --prefix=/usr --host=i686-pc-linux-gnu > configure: WARNING: If you wanted to set the --build type, don't use > --host. > If a cross compiler is detected then cross compile mode will be used. > checking for a BSD-compatible install... /usr/bin/install -c > checking whether build environment is sane... yes > checking for gawk... no > checking for mawk... mawk > checking whether make sets $(MAKE)... yes > checking for i686-pc-linux-gnu-strip... no > checking for strip... strip > checking whether NLS is requested... yes > checking for msgfmt... /usr/bin/msgfmt > checking for gmsgfmt... /usr/bin/msgfmt > checking for xgettext... /usr/bin/xgettext > checking for msgmerge... /usr/bin/msgmerge > checking for style of include used by make... GNU > checking for i686-pc-linux-gnu-gcc... arm-linux-gcc > checking for C compiler default output file name... a.out > checking whether the C compiler works... yes > checking whether we are cross compiling... yes > checking for suffix of executables... > checking for suffix of object files... o > checking whether we are using the GNU C compiler... yes > checking whether arm-linux-gcc accepts -g... yes > checking for arm-linux-gcc option to accept ISO C89... none needed > checking dependency style of arm-linux-gcc... gcc3 > checking build system type... i686-pc-linux-gnu > checking host system type... i686-pc-linux-gnu > checking for ld used by GCC... > /home/grhuser/Linux_Builds/buildroot/build_arm/staging_dir/arm-linux-uclibc/bin/ld > checking if the linker > (/home/grhuser/Linux_Builds/buildroot/build_arm/staging_dir/arm-linux-uclibc/bin/ld) > is GNU ld... yes > checking for shared library run path origin... done > checking for CFPreferencesCopyAppValue... no > checking for CFLocaleCopyCurrent... no > checking for GNU gettext in libc... no > checking for iconv... no, consider installing GNU libiconv > checking for GNU gettext in libintl... no > checking whether to use NLS... no > checking for i686-pc-linux-gnu-gcc... (cached) arm-linux-gcc > checking whether we are using the GNU C compiler... (cached) yes > checking whether arm-linux-gcc accepts -g... (cached) yes > checking for arm-linux-gcc option to accept ISO C89... (cached) none > needed > checking dependency style of arm-linux-gcc... (cached) gcc3 > checking for a BSD-compatible install... /usr/bin/install -c > checking whether ln -s works... yes > checking for ALSA CFLAGS... > checking for ALSA LDFLAGS... -lasound -lm -ldl -lpthread > checking for libasound headers version >= 1.0.12... not present. > configure: error: Sufficiently new version of libasound not found. > > I know there has to be a flag or something here I need to set. Does anyone > know what that might be? > > Paul > I think what occurs here is that the configure script is using my cross-compilers and associated libs in $HOME/Linux_Builds/buildroot/build_arm/staging_dir/ while the libs are actually given in $HOME/Linux_Builds/buildroot/build_arm/root/usr/lib/ I am looking at the README and INSTALL and do not see a solution to this. Does anyone have a solution to this? Thanks. Paul ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 15:40 ` Paul Kavan @ 2007-06-20 16:00 ` Takashi Iwai 2007-06-20 16:12 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Takashi Iwai @ 2007-06-20 16:00 UTC (permalink / raw) To: Paul Kavan; +Cc: alsa-devel, Nobin Mathew At Wed, 20 Jun 2007 10:40:51 -0500, Paul Kavan wrote: > > On 6/20/07, Paul Kavan <pkavan@gmail.com> wrote: > > > > Okay: > > > > Here is where I ran into troubles yesterday. I am working on configuring > > alsa-utils. When I do: > > > > CC=arm-linux-gcc ./configure --target=arm-linux --with-versioned=no > > --prefix=/usr --host=i686-pc-linux-gnu > > > > I get the error: > > > > grhuser@pcL7:$ CC=arm-linux-gcc ./configure --target=arm-linux > > --with-versioned=no --prefix=/usr --host=i686-pc-linux-gnu > > configure: WARNING: If you wanted to set the --build type, don't use > > --host. > > If a cross compiler is detected then cross compile mode will be used. > > checking for a BSD-compatible install... /usr/bin/install -c > > checking whether build environment is sane... yes > > checking for gawk... no > > checking for mawk... mawk > > checking whether make sets $(MAKE)... yes > > checking for i686-pc-linux-gnu-strip... no > > checking for strip... strip > > checking whether NLS is requested... yes > > checking for msgfmt... /usr/bin/msgfmt > > checking for gmsgfmt... /usr/bin/msgfmt > > checking for xgettext... /usr/bin/xgettext > > checking for msgmerge... /usr/bin/msgmerge > > checking for style of include used by make... GNU > > checking for i686-pc-linux-gnu-gcc... arm-linux-gcc > > checking for C compiler default output file name... a.out > > checking whether the C compiler works... yes > > checking whether we are cross compiling... yes > > checking for suffix of executables... > > checking for suffix of object files... o > > checking whether we are using the GNU C compiler... yes > > checking whether arm-linux-gcc accepts -g... yes > > checking for arm-linux-gcc option to accept ISO C89... none needed > > checking dependency style of arm-linux-gcc... gcc3 > > checking build system type... i686-pc-linux-gnu > > checking host system type... i686-pc-linux-gnu > > checking for ld used by GCC... > > /home/grhuser/Linux_Builds/buildroot/build_arm/staging_dir/arm-linux-uclibc/bin/ld > > checking if the linker > > (/home/grhuser/Linux_Builds/buildroot/build_arm/staging_dir/arm-linux-uclibc/bin/ld) > > is GNU ld... yes > > checking for shared library run path origin... done > > checking for CFPreferencesCopyAppValue... no > > checking for CFLocaleCopyCurrent... no > > checking for GNU gettext in libc... no > > checking for iconv... no, consider installing GNU libiconv > > checking for GNU gettext in libintl... no > > checking whether to use NLS... no > > checking for i686-pc-linux-gnu-gcc... (cached) arm-linux-gcc > > checking whether we are using the GNU C compiler... (cached) yes > > checking whether arm-linux-gcc accepts -g... (cached) yes > > checking for arm-linux-gcc option to accept ISO C89... (cached) none > > needed > > checking dependency style of arm-linux-gcc... (cached) gcc3 > > checking for a BSD-compatible install... /usr/bin/install -c > > checking whether ln -s works... yes > > checking for ALSA CFLAGS... > > checking for ALSA LDFLAGS... -lasound -lm -ldl -lpthread > > checking for libasound headers version >= 1.0.12... not present. > > configure: error: Sufficiently new version of libasound not found. > > > > I know there has to be a flag or something here I need to set. Does anyone > > know what that might be? > > > > Paul > > > > I think what occurs here is that the configure script is using my > cross-compilers and associated libs in > > $HOME/Linux_Builds/buildroot/build_arm/staging_dir/ > > while the libs are actually given in > > $HOME/Linux_Builds/buildroot/build_arm/root/usr/lib/ > > I am looking at the README and INSTALL and do not see a solution to this. For configure script using AM_PATH_ALSA(), you can pass the following options: --with-alsa-inc-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/include --with-alsa-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/lib Takashi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 16:00 ` Takashi Iwai @ 2007-06-20 16:12 ` Paul Kavan 2007-06-20 16:16 ` Lee Revell 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 16:12 UTC (permalink / raw) To: Takashi Iwai; +Cc: alsa-devel, Nobin Mathew > > --with-alsa-inc-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/include > > --with-alsa-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/lib > > > Takashi > Takashi: Thank you. That got me a little further. Now, I am hitting this error: ... checking for libasound headers version >= 1.0.12... found. checking for snd_ctl_open in -lasound... yes checking how to run the C preprocessor... arm-linux-gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for initscr in -lncurses... no checking for initscr in -lcurses... no configure: error: this packages requires a curses library ...which I could swear I have....will look into this. Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 16:12 ` Paul Kavan @ 2007-06-20 16:16 ` Lee Revell 2007-06-20 16:18 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Lee Revell @ 2007-06-20 16:16 UTC (permalink / raw) To: Paul Kavan; +Cc: Takashi Iwai, alsa-devel, Nobin Mathew FWIW, alsamixer is the only thing that needs curses, when I did an embedded linux + ALSA project I just passed --disable-alsamixer to work around it, and used amixer. Lee On 6/20/07, Paul Kavan <pkavan@gmail.com> wrote: > > > > --with-alsa-inc-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/include > > > > --with-alsa-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/lib > > > > > > Takashi > > > > > Takashi: > > Thank you. That got me a little further. Now, I am hitting this error: > > ... > checking for libasound headers version >= 1.0.12... found. > checking for snd_ctl_open in -lasound... yes > checking how to run the C preprocessor... arm-linux-gcc -E > checking for grep that handles long lines and -e... /bin/grep > checking for egrep... /bin/grep -E > checking for ANSI C header files... yes > checking for initscr in -lncurses... no > checking for initscr in -lcurses... no > configure: error: this packages requires a curses library > > ...which I could swear I have....will look into this. > > Paul > -- > *************************************** > Paul David Kavan > Project Engineer > GRH Electronics, Inc. > 402-734-4900 > pkavan@gmail.com > *************************************** > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@alsa-project.org > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel > ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 16:16 ` Lee Revell @ 2007-06-20 16:18 ` Paul Kavan 2007-06-20 16:23 ` Takashi Iwai 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 16:18 UTC (permalink / raw) To: Lee Revell; +Cc: Takashi Iwai, alsa-devel, Nobin Mathew On 6/20/07, Lee Revell <rlrevell@joe-job.com> wrote: > > FWIW, alsamixer is the only thing that needs curses, when I did an > embedded linux + ALSA project I just passed --disable-alsamixer to > work around it, and used amixer. > > Lee Lee: Thanks. I do not think I need a mixer at all...doing mono voice on a dumb single channel codec. Thanks again. Paul ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 16:18 ` Paul Kavan @ 2007-06-20 16:23 ` Takashi Iwai 2007-06-20 17:04 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Takashi Iwai @ 2007-06-20 16:23 UTC (permalink / raw) To: Paul Kavan; +Cc: alsa-devel, Lee Revell, Nobin Mathew At Wed, 20 Jun 2007 11:18:13 -0500, Paul Kavan wrote: > > > On 6/20/07, Lee Revell <rlrevell@joe-job.com> wrote: > > FWIW, alsamixer is the only thing that needs curses, when I did an > embedded linux + ALSA project I just passed --disable-alsamixer to > work around it, and used amixer. > > Lee > > Lee: > > Thanks. I do not think I need a mixer at all...doing mono voice on a dumb single > channel codec. BTW, you can try salsa-lib for such a purpose: ftp://ftp.suse.com/pub/people/tiwai/salsa-lib/ I've not tested with ARM, so it'd be appreciated if someone lets me know whether it works. Takashi ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 16:23 ` Takashi Iwai @ 2007-06-20 17:04 ` Paul Kavan 2007-06-20 17:35 ` Frank Mandarino 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 17:04 UTC (permalink / raw) To: Takashi Iwai; +Cc: alsa-devel, Lee Revell, Nobin Mathew Gentleman: I have the alsa-libs and alsa-utils on my board now. I want to thank all for the time and advice. For the benefit of the archives, I have a at91sam9260ek running Linux 2.6.22-rc1. I am using buildroot to for my cross-compiling tools and to generate my rfs. To get the alsa libs and utils on board, I did the following: For alsa-libs: CC=arm-linux-gcc ./configure --target=arm-linux --host=i686-pc-linux-gnu --prefix=/usr and then make install DESTDIR=$HOME/buildroot/build_arm/root/ where the rfs for my target is built in $HOME/buildroot/build_arm/root before making the image. For alsa-utils: CC=arm-linux-gcc ./configure --target=arm-linux --host=i686-pc-linux-gnu --prefix=/usr --with-alsa-inc-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/include --with-alsa-prefix=$HOME/Linux_Builds/buildroot/build_arm/root/usr/lib --disable-alsamixer and then make install DESTDIR=/home/grhuser/buildroot/build_arm/root/ Then I remade the image and booted my board. I do not have the nodes built automatically yet, so I had to do that....giving me: /dev/snd $ ls -l crw-rw-rw- 1 root root 116, 0 Dec 31 17:08 controlC0 crw-rw-rw- 1 root root 116, 24 Dec 31 17:09 pcmC0D0c crw-rw-rw- 1 root root 116, 16 Dec 31 17:10 pcmC0D0p when I check with aplay, I get: /dev/snd $ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: GRHEKW6811 [GRH_EK_W6811], device 0: W6811 W6811-PCM-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 and with arecord: /dev/snd $ arecord -l **** List of CAPTURE Hardware Devices **** card 0: GRHEKW6811 [GRH_EK_W6811], device 0: W6811 W6811-PCM-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 However, I have been unable to achieve any kind of playback using speaker-test or aplay. The speaker pops like it wants to play, but I get the following when trying speaker test: /dev/snd $ speaker-test -D default -r 8000 -f 1020 -F S8 speaker-test 1.0.14 Playback device is default Stream parameters are 8000Hz, S8, 1 channels Using 16 octaves of pink noise Rate set to 8000Hz (requested 8000Hz) Buffer size range from 64 to 32768 Period size range from 32 to 8192 Using max buffer size 32768 Periods = 4 was set period_size = 0 was set buffer_size = 32768 Unable to set sw params for playback: Invalid argument Setting of swparams failed: Invalid argument /dev/snd $ Anyone know where I should look for the problem? Thanks. Paul *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 17:04 ` Paul Kavan @ 2007-06-20 17:35 ` Frank Mandarino 2007-06-20 19:09 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Frank Mandarino @ 2007-06-20 17:35 UTC (permalink / raw) To: alsa-devel Paul Kavan wrote: ... > For alsa-libs: > CC=arm-linux-gcc ./configure --target=arm-linux --host=i686-pc-linux-gnu > --prefix=/usr ... > However, I have been unable to achieve any kind of playback using > speaker-test or aplay. The speaker pops like it wants to play, but I get the > following when trying speaker test: > > /dev/snd $ speaker-test -D default -r 8000 -f 1020 -F S8 > > speaker-test 1.0.14 > > Playback device is default > Stream parameters are 8000Hz, S8, 1 channels > Using 16 octaves of pink noise > Rate set to 8000Hz (requested 8000Hz) > Buffer size range from 64 to 32768 > Period size range from 32 to 8192 > Using max buffer size 32768 > Periods = 4 > was set period_size = 0 > was set buffer_size = 32768 > Unable to set sw params for playback: Invalid argument > Setting of swparams failed: Invalid argument > /dev/snd $ > > > Anyone know where I should look for the problem? Hi Paul, Try adding the option "--with-versioned=no" to the alsa-libs configure. ../fam -- Frank Mandarino fmandarino(a)endrelia.com Endrelia Technologies Inc. Toronto, Ontario, Canada ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 17:35 ` Frank Mandarino @ 2007-06-20 19:09 ` Paul Kavan 2007-06-20 19:37 ` Frank Mandarino 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 19:09 UTC (permalink / raw) To: Frank Mandarino; +Cc: alsa-devel Frank: Try adding the option "--with-versioned=no" to the alsa-libs configure. That did the trick in terms of the sw params problem. With the default alsa.conf file, I can now get the speaker to make some noise. However, doing: speaker-test -r8000 -f1000 -FS8 -tsine -l5 gives me a slightly distorted sine wave that has a period of half of what I would expect. Frank, this is what I have for the small conf. I hope it is the right one: pcm.!default { type hw card 0 } pcm.hw { type hw card 0 device 0 subdevice 0 } ctl.!default { type hw card 0 } ctl.hw { type hw card 0 } ctl.w6811 { type hw card 0 } pcm.w6811 { type hw card 0 device 0 subdevice 0 } ctl.!default = ctl.w6811 pcm.!default = pcm.w6811 ctl.hw { @args[ CARD ] @args.CARD { type string default "0" } type hw card $CARD } pcm.hw { @args[ CARD DEV SUBDEV ] @args.CARD { type string default "0" } @args.DEV { type integer default 0 } @args.SUBDEV { type integer default 0 } type hw card $CARD device $DEV subdevice $SUBDEV } However, when I use this as the conf, I get the following with aplay -l /usr/share/alsa $ aplay -l **** List of PLAYBACK Hardware Devices **** ALSA lib conf.c:975:(parse_value) card is not a string ALSA lib conf.c:1588:(snd_config_load1) _toplevel_:45:1:Invalid argument ALSA lib conf.c:3066:(snd_config_update_r) /usr/share/alsa/alsa.conf may be old or corrupted: consit aplay: device_list:213: control open (0): Invalid argument Not sure if I have the alsa.conf correct. So maybe it is a problem there. You mentioned a bare bones .conf, but I do not this is the only one I have in my email. Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 19:09 ` Paul Kavan @ 2007-06-20 19:37 ` Frank Mandarino 2007-06-20 19:48 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Frank Mandarino @ 2007-06-20 19:37 UTC (permalink / raw) To: Paul Kavan; +Cc: alsa-devel Paul Kavan wrote: > Frank: > > > Try adding the option "--with-versioned=no" to the alsa-libs configure. > > > That did the trick in terms of the sw params problem. With the default > alsa.conf file, I can now get the speaker to make some noise. However, > doing: > > speaker-test -r8000 -f1000 -FS8 -tsine -l5 > > gives me a slightly distorted sine wave that has a period of half of > what I would expect. Better than no sound :) At least something is getting through ALSA and ASoC to your codec. You may need to adjust the RCMR, RFRM, TCMR, TFRM register settings in sound/soc/at91/at91-ssc.c to send the data in the mode that your codec expects. I have only tested I2S and DSP_A modes with S16_LE data. It's fairly easy to add new modes. > > Frank, this is what I have for the small conf. I hope it is the right one: > > > pcm.!default { > type hw > card 0 > } > pcm.hw { > type hw > card 0 > device 0 > subdevice 0 > } > ctl.!default { > type hw > card 0 > } > ctl.hw { > type hw > card 0 > } > > > ctl.w6811 { > type hw > card 0 > } > pcm.w6811 { > type hw > card 0 > device 0 > subdevice 0 > } > > ctl.!default = ctl.w6811 > pcm.!default = pcm.w6811 > > ctl.hw { > @args[ CARD ] > @args.CARD { > type string > default "0" > } > type hw > card $CARD > } > > pcm.hw { > @args[ CARD DEV SUBDEV ] > @args.CARD { > type string > default "0" > } > @args.DEV { > type integer > default 0 > } > @args.SUBDEV { > type integer > default 0 > } > type hw > card $CARD > device $DEV > subdevice $SUBDEV > } > > However, when I use this as the conf, I get the following with aplay -l > > /usr/share/alsa $ aplay -l > **** List of PLAYBACK Hardware Devices **** > ALSA lib conf.c:975:(parse_value) card is not a string > ALSA lib conf.c:1588:(snd_config_load1) _toplevel_:45:1:Invalid argument > ALSA lib conf.c:3066:(snd_config_update_r) /usr/share/alsa/alsa.conf may > be old or corrupted: consit > aplay: device_list:213: control open (0): Invalid argument > > Not sure if I have the alsa.conf correct. So maybe it is a problem > there. You mentioned a bare bones .conf, but I do not this is the only > one I have in my email. I don't see anything wrong with this alsa.conf, but I'm no expert. It is virtually the same as the one I am using, but I am using ALSA 1.0.13. Here is the bare-bones config file that I was using before I added a second sound device: pcm.!default { type hw card 0 } pcm.hw { type hw card 0 device 0 subdevice 0 } ctl.!default { type hw card 0 } ctl.hw { type hw card 0 } ../fam -- Frank Mandarino fmandarino(a)endrelia.com Endrelia Technologies Inc. Toronto, Ontario, Canada ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 19:37 ` Frank Mandarino @ 2007-06-20 19:48 ` Paul Kavan 2007-06-20 20:22 ` Paul Kavan 0 siblings, 1 reply; 22+ messages in thread From: Paul Kavan @ 2007-06-20 19:48 UTC (permalink / raw) To: Frank Mandarino; +Cc: alsa-devel Frank: > gives me a slightly distorted sine wave that has a period of half of > > what I would expect. > > Better than no sound :) At least something is getting through ALSA and > ASoC to your codec. Very true indeed. It was nice hearing a sine wave come out....even if it was not ready for prime time. You may need to adjust the RCMR, RFRM, TCMR, TFRM register settings in > sound/soc/at91/at91-ssc.c to send the data in the mode that your codec > expects. I have only tested I2S and DSP_A modes with S16_LE data. It's > fairly easy to add new modes. I will do this. I can probe the clock and data lines to make sure they are looking like what I expect and then look to the modes to see what I need to change in the directories. > Here is the bare-bones config file that I was using before I added a > second sound device: > > pcm.!default { > type hw > card 0 > } > pcm.hw { > type hw > card 0 > device 0 > subdevice 0 > } > ctl.!default { > type hw > card 0 > } > ctl.hw { > type hw > card 0 > } I will give this conf a whirl and see what it does. Thanks. Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: Using aplay and arecord on an ARM 2007-06-20 19:48 ` Paul Kavan @ 2007-06-20 20:22 ` Paul Kavan 0 siblings, 0 replies; 22+ messages in thread From: Paul Kavan @ 2007-06-20 20:22 UTC (permalink / raw) To: Frank Mandarino; +Cc: alsa-devel > You may need to adjust the RCMR, RFRM, TCMR, TFRM register settings in > > sound/soc/at91/at91- ssc.c to send the data in the mode that your codec > > expects. I have only tested I2S and DSP_A modes with S16_LE data. It's > > fairly easy to add new modes. > > This is certainly part of the problem. I probed the clocks and the frame sync lines and they are fine for the most part. However, I can tell from the output that I need to change the default on TD0 to '1' for starters. I also think that I need to change the format so that the atmel board reads on the falling edge after sync. I think it already writes on the rising edge, but will have to see. Also, the width of the sync is one period of the bitclock....and I need at least two, so I will need to change that. Fortunately, I have done a lot of grunt work already in writing my basic ssc driver for that codec. Now I have to dig into at91-ssc.c to see how to modify that. > > pcm.!default { > > type hw > > card 0 > > } > > pcm.hw { > > type hw > > card 0 > > device 0 > > subdevice 0 > > } > > ctl.!default { > > type hw > > card 0 > > } > > ctl.hw { > > type hw > > card 0 > > } > > The bare bones conf is not working for me and I am getting: /usr/share/alsa $ aplay -l **** List of PLAYBACK Hardware Devices **** ALSA lib conf.c:3949:(snd_config_expand) Unknown parameters 0 ALSA lib control.c:909:(snd_ctl_open_noupdate) Invalid CTL hw:0 aplay: device_list:213: control open (0): Invalid argument For whatever reason, the default conf file is letting me use speaker-test, so I can work on debugging the format for now. I am using alsa-lib-1.0.14aand alsa-utils-1.0.14, so I am not sure if that makes a difference. If anyone on the list has a bare bones conf for a simple pcm codec, I would appreciate some tips on why this one is not working. Thanks Frank. I am gonna dig into at91-ssc.c now. Paul -- *************************************** Paul David Kavan Project Engineer GRH Electronics, Inc. 402-734-4900 pkavan@gmail.com *************************************** ^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2007-06-20 20:22 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-19 19:37 Using aplay and arecord on an ARM Paul Kavan
2007-06-19 20:07 ` Lee Revell
2007-06-19 20:28 ` Paul Kavan
2007-06-19 20:31 ` Lee Revell
2007-06-19 20:36 ` Paul Kavan
2007-06-19 21:03 ` Paul Kavan
2007-06-20 10:01 ` Takashi Iwai
2007-06-20 10:54 ` Nobin Mathew
2007-06-20 14:27 ` Paul Kavan
2007-06-20 14:32 ` Nobin Mathew
[not found] ` <61c0054e0706200739k2b934a9avbffb133937adba4c@mail.gmail.com>
[not found] ` <61c0054e0706200824v444d6c8dr6b6023b16043fa7@mail.gmail.com>
[not found] ` <61c0054e0706200827h389e2c6v46dfc544def95e82@mail.gmail.com>
2007-06-20 15:40 ` Paul Kavan
2007-06-20 16:00 ` Takashi Iwai
2007-06-20 16:12 ` Paul Kavan
2007-06-20 16:16 ` Lee Revell
2007-06-20 16:18 ` Paul Kavan
2007-06-20 16:23 ` Takashi Iwai
2007-06-20 17:04 ` Paul Kavan
2007-06-20 17:35 ` Frank Mandarino
2007-06-20 19:09 ` Paul Kavan
2007-06-20 19:37 ` Frank Mandarino
2007-06-20 19:48 ` Paul Kavan
2007-06-20 20:22 ` Paul Kavan
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.