LINUX.ORG.RU

embedded linux && adc throw spi

 , , ,


0

1

Всем привет. Опять я на горизонте со своей платкой, и вопросами. Вопрос прост. В наличии платат sbc6845, к ней подключен аналого-цифровой преобразователь ad7792, подключен с помощью вспомогательной платы и как я понял через шину spi. Как мне начать с ним работать? В устройствах, в папочке /dev отсуствует хоть какой-то файл с названием spi. Если зяглянуть в папочку /sys/bus/spi, то там вроде есть драййвера и подключенные к этой шине устройства. Т.е., мне нужно точно так же подключить sbc, как я понял. Но, что-то у меня полно сомнений и недостаток информации. Помогите пожалуйста советом, как быть?


Шина spi - последовательная, она должна быть видна как /dev/tty... Скорее всего это будет какой-нибудь ttyS... Работают с таким устройством как с файлом: open/close, read/write.

alexku ()
Ответ на: комментарий от alexku

Шина spi - последовательная, она должна быть видна как /dev/tty

нет, это только U(S)ART так виден. Ну и, собственно, терминалы.

Kosyak ★★★★ ()
Ответ на: комментарий от Kosyak

Можно немного пояснений? Там говорится о /dev/spi*, но, как я уже сказал, в /dev/ уменя нет ни одного файла связанного с spi.

n1l ()
Ответ на: комментарий от n1l

Это драйвер для доступа к spi через юзерспейс. Его нужно включить в ядре.

Device Drivers -> SPI -> User mode SPI device driver support
Дальше нужно убедиться что хотя бы один девайс spi определен в ядре. (поищи struct spi_board_info в исходниках ядра для своей платы, обычно board.c) если надо, добавить устройство, пример тут.

Ну и пересобрать ядро.

Другой вариант - написать ядерный драйвер для устройства.

Kosyak ★★★★ ()
Ответ на: комментарий от n1l

Именно без перекомпиляции? Или без замены ядра?

Можно попробовать собрать ядро с spidev в виде модуля, а потом подсунуть собранный модуль текущему ядру.

Kosyak ★★★★ ()
Ответ на: комментарий от Kosyak

Без замены ядра. Можно как-то на плате это сделать?

n1l ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.