ЗАО «ЗЭО»
Техническая поддержка пользователей => Тион, Тион-Про, Тион-Про v2, Сириус => Тема начата: ask от 27 Сентября, 2009, 17:36:16
-
У меня есть тион про 1. Собрал ядро с поддержкой ep93xx-ac97, но устройство не распознаётся (вывод dmesg):
AC'97 0 access error (not audio or modem codec)
AC97: snd_ac97_mixer error
snd_ep93xx_probe - error
ep93xx-ac97: probe of ep93xx-ac97.0 failed with error -13
ALSA device list:
No soundcards found.
Не подскажете, в чём проблема? Конфиг ядра и полный вывод dmesg прилагаю
-
Обычно на Тионах (не 270) нет звукового кодека (только на Сириус и 270-x).
Вы какой кодек соединяете?
-
извиняюсь за неточную информацию: процессорный модуль тион на плате сириус, соотв., микросхема CS4202
-
Забыли убрать define, когда UCB1400 соединяли, в этом патче исправлено:
http://www.zao-zeo.ru/media/files/linux/2.6.20/patch/linux-2.6.20.21_tion_svn787_200909301134.tar.gz
-
Забыли убрать define, когда UCB1400 соединяли, в этом патче исправлено:
http://www.zao-zeo.ru/media/files/linux/2.6.20/patch/linux-2.6.20.21_tion_svn787_200909301134.tar.gz
результат тот же :(
-
Выключите CONFIG_TION_UCB140
-
устройство определилось, спасибо
-
Устройство определилось, но работать с ним не получается: aplay выдаёт тишину в наушники, arecord записывает мусор с микрофона. Наушники и микрофон исправны и вставлены в X22 и X23 соотв. по обозначениям из http://zao-zeo.ru/media/File/sirius-pro-v1.pdf . Микшер настроен верно. Помогите, пожалуйста, разобраться.
-
По этому описанию X23 line in, наушники надо в X25 hp out (в X24 тоже слышно).
Из X25 слышно при работе aplay?
-
По этому описанию X23 line in, наушники надо в X25 hp out (в X24 тоже слышно).
Из X25 слышно при работе aplay?
x25, конечно, да. опечатался. из него не слышно
-
У меня на Сирис+Тион работает запись и воспроизведение.
1. Конфигурация ядра во вложении.
2. Собранное ядро:
http://www.zao-zeo.ru/media/files/linux/2.6.20/image/uImage-2.6.20.21_tion_svn787_oabi
Патч:
http://www.zao-zeo.ru/media/files/linux/2.6.20/patch/linux-2.6.20.21_tion_svn787_200909301134.tar.gz
3. КФС из Crater 1.0.0 (ln -s aplay arecord)
http://www.zao-zeo.ru/media/files/rootfs/ep93xx/uramdisk_crater-1.0.0.gz
Crater 1.0.0 svn789:
http://www.zao-zeo.ru/media/files/crater-1.0.0_svn789.tar.gz
Если у вас с этим работать не будет, вероятно, удалённо уже ничего не исправишь.
-
С вашим rootfs действительно работает. притом, со включенным CONFIG_TION_UCB140
Однако, с тем же конфигом, но с rootfs, собранным из eabi-порта debian testing (armel), тишина. Единственное, что удалось нарыть по этому вопросу http://wiki.debian.org/ArmEabiPort:
Fortunately, the two schemes can coexist and EABI kernels have an option to support the old syscall interface (including old structure layout rules) for running old-EABI binaries. However some features (e.g., ALSA, MD (RAID) and system calls from Thumb mode) do not work correctly from old-ABI binaries.
Но это не тот случай, я даже ради эксперимента отключил возможность запуска старых бинарников -- всё запускается, но не работает.
Дебиан я ставлю, потому что в конечном итоге мне надо получить приложение, зависящее от libopenh323, которая тянет за собой неимоверное количество библиотек. В Crater'е их нет (там даже sshd нет!). Буду благодарен, если посоветуете, как это сделать, не потратив полведра крови. Т.е., вкратце, собрать и запустить приложение с зависимостями в виде нескольких библиотек, желательно с оптимизацией под crunch
-
Если нужен Crunch -- то ядро должно быть с EABI. Действительно было такое, что если ядро с EABI а rootfs с OABI, то ALSA не работает. Но она работала если была комбинация EABI/EABI.
>Но это не тот случай, я даже ради эксперимента отключил возможность запуска старых бинарников -- всё запускается, но не работает.
То есть ядро вы собираете с EABI?
> Т.е., вкратце, собрать и запустить приложение с зависимостями в виде нескольких библиотек, желательно с оптимизацией под crunch
Если совсем быстро, то можно собирать в Debian armel под QEMU, я пробовал.
Могу выложить используемою настройку QEMU, ядро и небольшую (~200 MB) rootfs в которую придётся доставить требуемое.
#!/bin/sh
LOCK_FILE=/var/lock/qemu-arm.lock
# Don't run second QEMU
lockfile -1 -r1 $LOCK_FILE || exit 1
/usr/bin/qemu-system-arm \
-boot d -m 128 \
-no-reboot \
-net nic,vlan=0 -net user,vlan=0 \
-localtime -k en-us \
-hda '/home/asv/qemu/arm/debian_lenny_armel.qcow' \
-initrd '/home/asv/qemu/arm/initrd.img-2.6.26-1-versatile' \
-kernel '/home/asv/qemu/arm/vmlinuz-2.6.26-1-versatile' \
-nographic -serial stdio \
-M versatilepb \
-append 'root=/dev/sda1' \
# -acceleration=enable \
rm -rf $LOCK_FILE
-
openh323 есть в OpenEmbedded, я не пробовал.
-
>Если нужен Crunch -- то ядро должно быть с EABI. Действительно было такое, что если ядро с EABI а rootfs с OABI, то ALSA не работает. Но она работала если была комбинация EABI/EABI.
>То есть ядро вы собираете с EABI?
и ядро, и rootfs с EABI
> Если совсем быстро, то можно собирать в Debian armel под QEMU, я пробовал.
>Могу выложить используемою настройку QEMU, ядро и небольшую (~200 MB) rootfs в которую придётся доставить требуемое.
выложите, плз. надеюсь, поможет :)
за OpenEmbedded спасибо, посмотрю
-
Брал вроде здесь:
http://people.debian.org/~aurel32/qemu/armel/
-
спасибо, буду копаться
-
Запись и проигрывание звука заработали: пересобрал ядро и rootfs, и play из sox записывает и воспроизводит как надо.
Только обнаружилась проблема с полным дуплексом. Сценарий такой: открывается устройство на чтение /dev/dsp через интерфейс OSS, звук успешно считывается. Однако, если открыть это же устройство ещё и для записи в него, т.е. для вывода на наушники, то звук с микрофона записываться перестаёт, состояние буферов остаётся неизменным. В наушники при этом выводится сильно ускоренный звук. Можно было бы предположить, что карта не поддерживает затребованный формат (16bit, 8khz, mono), но ioctl при установке этих параметров сообщает, что устройство открылось с запрошенными параметрами.
Этот сценарий отлично работает на PC, поэтому мне кажется, что дело в драйвере сириуса
-
Может быть, имеет смысл временно добавить подробных логов в часть ядра, которую за это отвечает, и посмотреть на вывод? Если да, то я готов запустить свой сценарий на таком ядре
-
Нужно в драйвере разделить playback и capture, чем и занимаемся.
-
Нужно в драйвере разделить playback и capture, чем и занимаемся.
Получается, что сейчас невозможно одновременно слушать и передавать звук? или эта проблема уже исправлена?
-
Нет, толком (чтобы работало на последних версиях Alsa) не исправлено. Хотя в той версии Alsa, что в Crater, работает лучше чем было.
-
Нельзя ли получить от Вас Ваши наработки? очень хочется чтобы звук был в обе стороны - у меня не работает вообще никак - пишет ошибка доступа к устройству если пытаюсь писать в /dev/dsp0 в момент чтения из него.
Я собрал linphone для ТИОН eabi - звук идет только от меня - я ничего не слышу - очень бы хотелось в обе стороны, потому что тогда тион можно будет использовать как SIP-телефон в системе операторского контроля например.
-
> Нельзя ли получить от Вас Ваши наработки?
-
спасибо буду пробовать