I have solved some issues, audio-routing was missing on device tree, son cpu and codec playback and capture stremas where not properly connected, but arecord does not work yet. there is no default nor sysdefault card when I run arecord -L: root@hardkernel-odroidc2:~# arecord -L null Discard all samples (playback) or generate zero samples (capture) usbstream:CARD=S905 GXBB ODROID-C2 S905 USB Stream Output
it should look like aplay -L: root@hardkernel-odroidc2:~# aplay -L null Discard all samples (playback) or generate zero samples (capture) default:CARD=S905 GXBB ODROID-C2 S905, Default Audio Device sysdefault:CARD=S905 GXBB ODROID-C2 S905, Default Audio Device usbstream:CARD=S905 GXBB ODROID-C2 S905 USB Stream Output Any ideas? This is the strace of arecord command, it gets stuck on ppoll([{fd=4, events=POLLIN|POLLERR|POLLNVAL}], 1, NULL, NULL, 0 root@hardkernel-odroidc2:~# strace arecord -D plughw:0,3 -c 1 -f S32_LE -d 1 -t wav -r 48000 -V "stereo" /tmp/test.wav execve("/usr/bin/arecord", ["arecord", "-D", "plughw:0,3", "-c", "1", "-f", "S32_LE", "-d", "1", "-t", "wav", "-r", "48000", "-V", "stereo", "/tmp/test.wav"], 0xffffc12bc768 /* 15 vars */) = 0 brk(NULL) = 0xaaaae5dd2000 faccessat(AT_FDCWD, "/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=11901, ...}) = 0 mmap(NULL, 11901, PROT_READ, MAP_PRIVATE, 3, 0) = 0xffff9e2eb000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libasound.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\20\373\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1042608, ...}) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xffff9e2e9000 mmap(NULL, 1106600, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff9e1b2000 mprotect(0xffff9e2a9000, 61440, PROT_NONE) = 0 mmap(0xffff9e2b8000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf6000) = 0xffff9e2b8000 close(3) = 0 openat(AT_FDCWD, "/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\200t\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=113184, ...}) = 0 mmap(NULL, 192848, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff9e182000 mprotect(0xffff9e19c000, 65536, PROT_NONE) = 0 mmap(0xffff9e1ac000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0xffff9e1ac000 mmap(0xffff9e1ae000, 12624, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xffff9e1ae000 close(3) = 0 openat(AT_FDCWD, "/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\360D\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1400880, ...}) = 0 mmap(NULL, 1473640, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff9e01a000 mprotect(0xffff9e16a000, 61440, PROT_NONE) = 0 mmap(0xffff9e179000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14f000) = 0xffff9e179000 mmap(0xffff9e17f000, 11368, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xffff9e17f000 close(3) = 0 openat(AT_FDCWD, "/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\220\330\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=624600, ...}) = 0 mmap(NULL, 688152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff9df71000 mprotect(0xffff9e009000, 61440, PROT_NONE) = 0 mmap(0xffff9e018000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x97000) = 0xffff9e018000 close(3) = 0 openat(AT_FDCWD, "/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0@\20\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=14296, ...}) = 0 mmap(NULL, 77920, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff9df5d000 mprotect(0xffff9df60000, 61440, PROT_NONE) = 0 mmap(0xffff9df6f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0xffff9df6f000 close(3) = 0 openat(AT_FDCWD, "/lib/librt.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\360!\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=31032, ...}) = 0 mmap(NULL, 94568, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xffff9df45000 mprotect(0xffff9df4b000, 65536, PROT_NONE) = 0 mmap(0xffff9df5b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0xffff9df5b000 close(3) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xffff9e2e7000 mprotect(0xffff9e179000, 12288, PROT_READ) = 0 mprotect(0xffff9e1ac000, 4096, PROT_READ) = 0 mprotect(0xffff9df5b000, 4096, PROT_READ) = 0 mprotect(0xffff9df6f000, 4096, PROT_READ) = 0 mprotect(0xffff9e018000, 4096, PROT_READ) = 0 mprotect(0xffff9e2b8000, 32768, PROT_READ) = 0 mprotect(0xaaaab4d5c000, 4096, PROT_READ) = 0 mprotect(0xffff9e2f0000, 4096, PROT_READ) = 0 munmap(0xffff9e2eb000, 11901) = 0 set_tid_address(0xffff9e2e7d10) = 557 set_robust_list(0xffff9e2e7d20, 24) = 0 rt_sigaction(SIGRTMIN, {sa_handler=0xffff9e188f38, sa_mask=[], sa_flags=SA_SIGINFO}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {sa_handler=0xffff9e188ff8, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192 *1024, rlim_max=RLIM64_INFINITY}) = 0brk(NULL) = 0xaaaae5dd2000brk(0xaaaae5df3000) = 0xaaaae5df3000ioctl(1, TCGETS, {B9600 opost isig icanon echo ...}) = 0futex(0xffff9e2c0118, FUTEX_WAKE_PRIVATE, 2147483647) = 0newfstatat(AT_FDCWD, "/usr/share/alsa/alsa.conf", {st_mode=S_IFREG|0644, st_size=9625, ...}, 0) = 0openat(AT_FDCWD, "/usr/share/alsa/alsa.conf", O_RDONLY) = 3fstat(3, {st_mode=S_IFREG|0644, st_size=9625, ...}) = 0read(3, "#\n# ALSA library configuration "..., 4096) = 4096read(3, "tended\n\t\t}\n\t\tdescription \"Direct"..., 4096) = 4096read(3, "\t\t@func refer\n\t\t\t\tname defaults."..., 4096) = 1433read(3, "", 4096) = 0close(3) = 0futex(0xffff9df70048, FUTEX_WAKE_PRIVATE, 2147483647) = 0faccessat(AT_FDCWD, "/etc/alsa/conf.d", R_OK) = 0newfstatat(AT_FDCWD, "/etc/alsa/conf.d", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0openat(AT_FDCWD, "/etc/alsa/conf.d", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0getdents64(3, /* 10 entries */, 32768) = 360getdents64(3, /* 0 entries */, 32768) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/10-samplerate.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=429, ...}) = 0 read(3, "pcm.samplerate {\n\t@args [ SLAVE "..., 4096) = 429 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/10-speexrate.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=424, ...}) = 0 read(3, "pcm.speexrate {\n\t@args [ SLAVE R"..., 4096) = 424 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/50-arcam-av-ctl.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=222, ...}) = 0 read(3, "ctl.arcam_av {\n\t@args [ PORT ]\n\t"..., 4096) = 222 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/50-oss.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=326, ...}) = 0 read(3, "pcm.oss {\n\t@args [ DEVICE ]\n\t@ar"..., 4096) = 326 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/60-speex.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=1030, ...}) = 0 read(3, "pcm.speex {\n\t@args [ SLAVE AGC A"..., 4096) = 1030 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/60-upmix.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=389, ...}) = 0 read(3, "pcm.upmix {\n\t@args [ SLAVE CHANN"..., 4096) = 389 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/60-vdownmix.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=393, ...}) = 0 read(3, "pcm.vdownmix {\n\t@args [ SLAVE CH"..., 4096) = 393 read(3, "", 4096) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/alsa/conf.d/98-usb-stream.conf", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=395, ...}) = 0 read(3, "pcm.usbstream {\n\t@args [ CARD RA"..., 4096) = 395 read(3, "", 4096) = 0 close(3) = 0 faccessat(AT_FDCWD, "/etc/asound.conf", R_OK) = -1 ENOENT (No such file or directory) faccessat(AT_FDCWD, "/home/root/.asoundrc", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/dev/snd/controlC0", O_RDONLY|O_CLOEXEC) = 3 fcntl(3, F_SETFD, FD_CLOEXEC) = 0 ioctl(3, SNDRV_CTL_IOCTL_CARD_INFO, 0xffffc0266580) = 0 close(3) = 0 openat(AT_FDCWD, "/dev/snd/controlC0", O_RDWR|O_CLOEXEC) = 3 fcntl(3, F_SETFD, FD_CLOEXEC) = 0 ioctl(3, SNDRV_CTL_IOCTL_PVERSION, 0xffffc026674c) = 0 ioctl(3, SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE, 0xffffc026677c) = 0 openat(AT_FDCWD, "/dev/snd/pcmC0D3c", O_RDWR|O_NONBLOCK|O_CLOEXEC) = 4 fcntl(4, F_SETFD, FD_CLOEXEC) = 0 close(3) = 0 ioctl(4, SNDRV_PCM_IOCTL_INFO, 0xffffc0266658) = 0 fcntl(4, F_GETFL) = 0x20802 (flags O_RDWR|O_NONBLOCK|O_LARGEFILE) ioctl(4, SNDRV_PCM_IOCTL_PVERSION, 0xffffc0266638) = 0 ioctl(4, SNDRV_PCM_IOCTL_USER_PVERSION, 0xffffc0266648) = 0 ioctl(4, SNDRV_PCM_IOCTL_TTSTAMP, 0xffffc026663c) = 0 mmap(NULL, 4096, PROT_READ, MAP_SHARED, 4, 0x80000000) = -1 ENXIO (No such device or address) mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0x81000000) = -1 ENXIO (No such device or address) ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 fcntl(4, F_GETFL) = 0x20802 (flags O_RDWR|O_NONBLOCK|O_LARGEFILE) fcntl(4, F_SETFL, O_RDWR|O_LARGEFILE) = 0 ioctl(4, SNDRV_PCM_IOCTL_INFO, 0xffffc0266e00) = 0 rt_sigaction(SIGINT, {sa_handler=0xaaaab4d43ab0, sa_mask=[INT], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 rt_sigaction(SIGTERM, {sa_handler=0xaaaab4d43ab0, sa_mask=[TERM], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 rt_sigaction(SIGABRT, {sa_handler=0xaaaab4d43ab0, sa_mask=[ABRT], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 rt_sigaction(SIGUSR1, {sa_handler=0xaaaab4d407a0, sa_mask=[USR1], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 write(2, "Recording WAVE '/tmp/test.wav' :"..., 33Recording WAVE '/tmp/test.wav' : ) = 33 write(2, "Signed 32 bit Little Endian, ", 29Signed 32 bit Little Endian, ) = 29 write(2, "Rate 48000 Hz, ", 15Rate 48000 Hz, ) = 15 write(2, "Mono", 4Mono) = 4 write(2, "\n", 1 ) = 1 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02645c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02641a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02641a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02645c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02641a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02641a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02645c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263ee8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264308) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02639a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02639a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02639a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02639a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02639a8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0263dc8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264048) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02644c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02644c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02644c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264488) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264488) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264488) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264488) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02644c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02644c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02644c8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc02640d8) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_REFINE, 0xffffc0264078) = 0 ioctl(4, SNDRV_PCM_IOCTL_HW_PARAMS, 0xffffc0264078) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SW_PARAMS, 0xffffc0263f90) = 0 ioctl(4, SNDRV_PCM_IOCTL_CHANNEL_INFO, 0xffffc0263ea0) = 0 ioctl(4, SNDRV_PCM_IOCTL_CHANNEL_INFO, 0xffffc0263ea0) = 0 mmap(NULL, 192512, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0) = 0xffff9df16000 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_PREPARE, 0x22d) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 newfstatat(AT_FDCWD, "/tmp/test.wav", {st_mode=S_IFREG|0644, st_size=44, ...}, AT_SYMLINK_NOFOLLOW) = 0 unlinkat(AT_FDCWD, "/tmp/test.wav", 0) = 0 openat(AT_FDCWD, "/tmp/test.wav", O_WRONLY|O_CREAT, 0644) = 3 write(3, "RIFF$\356\2\0WAVE", 12) = 12 write(3, "fmt \20\0\0\0", 8) = 8 write(3, "\1\0\1\0\200\273\0\0\0\356\2\0\4\0 \0", 16) = 16 write(3, "data\0\356\2\0", 8) = 8 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_START, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ioctl(4, SNDRV_PCM_IOCTL_SYNC_PTR, 0xaaaae5dea3d0) = 0 ppoll([{fd=4, events=POLLIN|POLLERR|POLLNVAL}], 1, NULL, NULL, 0 On Fri, Apr 24, 2020 at 11:23 PM Rezzonics Rezz <rezzon...@gmail.com> wrote: > I have modified play driver and developed capture driver for meson S905 GX > device (Odroid-C2) based on mainline Linux v5.6. > I have also modified CS4245 codec driver. > "play" works fine: > root@hardkernel-odroidc2:~# aplay -l > **** List of PLAYBACK Hardware Devices **** > card 0: S905 [GXBB ODROID-C2 S905], device 0: fe.dai-link-0 (*) [] > Subdevices: 1/1 > Subdevice #0: subdevice #0 > > root@hardkernel-odroidc2:~# aplay -D plughw:0,0 -c 1 -f dat > /usr/share/sounds/alsa/Front_Right.wav > Playing WAVE '/usr/share/sounds/alsa/Front_Right.wav' : Signed 16 bit > Little Endian, Rate 48000 Hz, Mono > > but "arecord" gives me an error message: > root@hardkernel-odroidc2:~# arecord -l > **** List of CAPTURE Hardware Devices **** > card 0: S905 [GXBB ODROID-C2 S905], device 3: fe.dai-link-3 (*) [] > Subdevices: 1/1 > Subdevice #0: subdevice #0 > > root@hardkernel-odroidc2:~# arecord -D hw:0,3 -c 1 -f S16_LE -d 10 -t wav > -r 48000 /tmp/test.wav > arecord: main:828: audio open error: Invalid argument > > root@hardkernel-odroidc2:~# arecord -D plughw:0,3 -c 1 -f dat /dev/null > arecord: main:828: audio open error: Invalid argument > > Could you help me trying to debug this issue? > Thanks and regards > Rezzonics > > > >
_______________________________________________ Alsa-user mailing list Alsa-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/alsa-user