* 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
* 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.