Linux: Драйвер WM8753 не предназначен для Pi

Созданный на 27 янв. 2016  ·  6Комментарии  ·  Источник: raspberrypi/linux

Я пытаюсь заставить звуковой чип WM8753 работать с Pi через i2c, но не могу заставить WM8753 отвечать по шине i2c, несмотря на то, что он зарегистрирован по этому адресу. Меня направили сюда с просьбой включить драйвер WM8753 в ядро, вы можете помочь?

Самый полезный комментарий

Вы тогда пробовали подключить WM8753 к Windows? Я был бы очень удивлен, если бы появилась какая-либо форма драйвера, а интерфейсы I2S и I2C в любом случае не распространены на ПК - USB, PCIe или Firewire предпочтительнее и намного проще в обращении. За исключением USB, эти интерфейсы менее распространены на SBC.

Добавление модулей увеличивает размер дистрибутива ядра для всех, а некоторые модули также будут иметь снижение производительности. Вот почему есть общая просьба доказать, что что-то работает, прежде чем модуль будет построен по умолчанию. Доступны полные инструкции, чтобы вы могли собрать собственное ядро ​​с измененной конфигурацией, так что это не значит, что вы полагаетесь на то, что оно находится в сборке по умолчанию.

Кстати, заметили ли вы https://www.cirrus.com/en/products/eol/detail/EOL421.html ?

WM8753
Дата окончания срока: 31.07.2017

Создание нового продукта на основе того, что будет прекращено менее чем через год, может быть не таким уж хорошим планом. Я не сравнивал WM8750 и WM8758, которые они перечисляют в качестве замены.

Все 6 Комментарий

@KevinStartup , проблема решена? Если да, закройте этот вопрос. Спасибо.

Мы разработали специальный драйвер i2c / i2s для поддержки этого чипа. Это вроде как работает, но требует большего внимания. Как видите, этот сайт мне не помог!

@KevinStartup Что именно вы просите? CONFIG_SND_SOC_WM8753=m для добавления в конфигурации RPi по умолчанию, чтобы драйвер кодека был построен как модуль?

Если вам нужна помощь с драйвером машины ASoC, покажите нам код, который у вас уже есть, который «вроде как работает», и расскажите, что на самом деле не работает, и люди могут предложить свои предложения или помощь.

@DigitalDreamtime
Я предполагаю, что все кодеки, которые фактически включены в систему, могут быть загружены и настроены в ядре. Кодеки существуют для wm8753, а также для множества других звуковых чипов, но требуется довольно много работы, чтобы заставить их работать внутри ядра unix с ASoC и ALSA. На самом деле мы поручили другой компании собрать загрузчик и настроить драйвер как модуль в ядре, чтобы его можно было загрузить. В настоящее время он работает, но не работает, когда ALSA используется в режиме отображения памяти, который используется в нашем звуковом программном обеспечении, поэтому он все еще требует дополнительной работы. Детали сложны и выходят за рамки моих собственных возможностей, я могу опубликовать здесь код, который мы используем, если кому-то интересно, но для реалистичного тестирования и работы с ним вам понадобится Pi, подключенный через i2c к чипу wm8753.
Я предполагаю, что в целом я предлагаю попробовать включить в Pi гораздо больше поддержки звуковых чипов. В нем есть кодеки, но заставить их работать сложно. Это то место, где, я думаю, Pi можно было бы лучше разработать. Windows поддерживает практически любую звуковую карту, о которой вы можете думать в настоящее время, но аппаратная поддержка Pi ограничена и сложна. Я просто чувствую, что было бы неплохо перейти к более простой системе для интеграции Pi с различными аудио и визуальными устройствами. У нас также есть настраиваемый ЖК-экран, работающий с нашим Pi, и это было сложно, но, по крайней мере, его проще настроить, поскольку требуется изменить только дерево устройств и несколько строк в config.txt.
С точки зрения пользователя кажется, что половина работы была сделана для поддержки широкого спектра звуковых чипов и дисплеев, но окончательная пользовательская конфигурация очень сложна и требует специальных знаний. Я просто лично считаю, что эту область можно улучшить.
Если есть кто-то, кто желает получить код разработки wm8753 и хотел бы взглянуть на него, дайте мне знать, и я могу опубликовать его.
Cheerz
Кевин

Вы тогда пробовали подключить WM8753 к Windows? Я был бы очень удивлен, если бы появилась какая-либо форма драйвера, а интерфейсы I2S и I2C в любом случае не распространены на ПК - USB, PCIe или Firewire предпочтительнее и намного проще в обращении. За исключением USB, эти интерфейсы менее распространены на SBC.

Добавление модулей увеличивает размер дистрибутива ядра для всех, а некоторые модули также будут иметь снижение производительности. Вот почему есть общая просьба доказать, что что-то работает, прежде чем модуль будет построен по умолчанию. Доступны полные инструкции, чтобы вы могли собрать собственное ядро ​​с измененной конфигурацией, так что это не значит, что вы полагаетесь на то, что оно находится в сборке по умолчанию.

Кстати, заметили ли вы https://www.cirrus.com/en/products/eol/detail/EOL421.html ?

WM8753
Дата окончания срока: 31.07.2017

Создание нового продукта на основе того, что будет прекращено менее чем через год, может быть не таким уж хорошим планом. Я не сравнивал WM8750 и WM8758, которые они перечисляют в качестве замены.

@ 6by9
Спасибо за ссылку EOL, она очень полезна, я отправил ее тем, кто решил использовать этот чип. Он в основном используется для обратной совместимости с нашим программным обеспечением, чтобы избавить нас от необходимости перекодировать множество вещей, поскольку мы используем много аудиовходов и выходов с этого чипа, которые все закодированы в нашей печатной плате и программном приложении, поэтому было решено, что мы Я бы продолжил его использовать, а не переделывал печатные платы и прикладное программное обеспечение, чтобы справиться (не мое решение, и для протокола, я был против, но это уже другая история)

Я согласен, я также думаю, что USB - это путь вперед, и я согласен с вашей точкой зрения, что wm8753, вероятно, не работает на ПК, и большинство других вещей через i2c тоже не будут работать! Мы продвинулись с этим по высокой цене, и только время покажет, сэкономит ли это нам время при разработке окончательной печатной платы и приложений, но похоже, что пришло время скупить рабочую партию WM8753 в казну!

Мы рассмотрели возможность перехода к одному из новых чипов, в частности к Cirrus Logic, установленному на их звуковой плате (WM5102), но, к сожалению, этот чип слишком мал, чтобы его можно было установить на нашем производственном оборудовании, поэтому нам пришлось использовать более старый. Это было действительно досадно, поскольку Cirrus проделала всю работу, чтобы настроить его и на Pi.

Думаю, вы правы, мы не можем рассчитывать на поддержку каждого существующего оборудования и механизма, который заставляет его работать - это действительно очень сложно! В любом случае это было слишком сложно для меня, и нам нужно было найти кого-то с большим мозгом, чтобы попробовать.

Спасибо за участие, было приятно, по крайней мере, получить ответ. Закрою эту ветку, чтобы навести порядок для Руффио :)

Спокойной ночи
Кевин

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

steros76 picture steros76  ·  3Комментарии

ensarkarabudak picture ensarkarabudak  ·  7Комментарии

unkissedfrog picture unkissedfrog  ·  9Комментарии

Nuntis-Spayz picture Nuntis-Spayz  ·  5Комментарии

XECDesign picture XECDesign  ·  6Комментарии