Pavel Ivanchenko
Admin
Пункты: 92805
Регистрация: 24.03.2009
Пол: Мужчина
Цитата В исходниках ядра захардкожен драйвер аудио кодека tlv320aic23, который стоит на вашей материнке.
Мы в серийном изделии используем tlv32aic3104 и, поскольку его драйвер появился только в linux 4.0 (или 3.19, могу ошибаться), есть непреодолимое желание запустить на ваших модулях mainline ядро 4.0/4.1 и выше.
В целом 4.0 работает прекрасно, но опыта в написании драйверов alsa-soc нет совсем, и наскоком вопрос не решился, хотелось попросить у вас указать версию ядра (конкретный релиз/комит/бранч, возможно просто архив), которая была донором для создания linux-3.10-at91-sk, находящегося у вас на фтп в исходниках buildroot. Я уже самостоятельно diff-ом попытаюсь восстановить последовательность необходимых действий и перенести её на mainline kernel уже в виде патча. Если не трудно, передайте мою просьбу вашим программистам. С меня мануал по запуску mainline kernel и mainline u-boot на ваших модулях и вытекающий из этого мануал по сборке debian 8 jessie (уже работает из nand flash и работает отлично), openwrt (в ближайших планах) и mainline buildroot
sasamy
Пункты: 83552
Регистрация: 14.08.2009
Цитата
указать версию ядра (конкретный релиз/комит/бранч, возможно просто архив), которая была донором для создания linux-3.10-at91-sk
https://github.com/linux4sam/linux-at91/tree/linux-3.10-at91
Вам надо посмотреть платы на любых процессорах с аналогичным кодеком и поправить драйвер по аналогии, на местном ядре смотрите
sound/soc/atmel/atmel_wm8904.c
там заменен кодек wm8904 на tlv320aic23, aic23 давно использутся так что проблем с переносом не возникает - там все знакомо и он прост и универсален как топор. Это так называемый machine driver - связующее звено между универсальнми Codec driver и Platform driver
http://www.alsa-project.org/main/index.php/ASoC
Второе место - это DTS (arch/arm/boot/dts/at91-sama5d3_sk***, там тоже надо дописать ваш кодек, посмотрите по аналогии с aic23