Embedded linux. Мигрировать с аудио кодека wm8960 на кодек adau1761

30 000 руб. за проект
06 июня 2023, 11:55 • 2 отклика • 34 просмотра
Здравствуйте.
Имеется железка под управлением OpenWrt. Процессор IMX6ULL. Один из конфигов - устройство SIP-телефонии. Используемый аудио-кодек - wm8960.
Необходимо мигрировать на аудио-кодек adau1761.
Пока искал разработчика предпринял попытку прикрутить самостоятельно, - вот коммит. Но, пока выходит не очень. Скриншот с логами сообщений об ошибках в приложении.
Собственно, задача заключается в том, чтобы полноценно прикрутить adau1761.
Железо для удаленной отладки готово. Удаленный доступ будет предоставлен. Распиновка подключения обоих кодеков к процессору одинаковая: LRCLK, BCLK, DACDAT, ADCDAT. MCLK обоих кодеков от кварца.

UPD:
последующие два коммита в этой же ветке как будто бы пофиксили все возникавшие ошибки при инициализации звуковой карты. По крайней мере теперь никаких ошибок в логах не видно. Возможно, теперь нужно лишь собрать верную конфигурацию кодека в IDE SigmaStudio (она бесплатная, но чтобы скачать с сайта Analog Devices нужно включить VPN). Собрал тестовый конфиг в IDE (версия SigmaStudio 4.7). В нем звук с микрофона либо две синусоиды подаются на выход динамиков. Результат загрузки конфига в кодек выглядит как-то так. Собственно этот конфиг сейчас приложен в одном из конфигов в качестве бинарного файла adau1761.bin. Как минимум нужно собрать конфиг, который делает две вещи:
  1. поток с цифрового входа (I2S шина) кодека подавал на аналоговый выход кодека
  2. поток с аналогового входа подавал на цифровой выход (I2S шина) кодека
Т.е., возможно с верным конфигом аудиокодека все сразу же заработает и собственно по части линукса не потребуется никаких правок кода. Но это не точно. Попытки найти специалиста по SigmaStudio пока успехом не увенчались.

Файлы