как я могу включить оба SPI для черного бигльбона в QNX

По умолчанию доступен spi0. Это работает нормально.

Теперь я хочу, чтобы оба порта spi работали как dev/spi0 и dev/spi1.

Я пересобрал образ после изменения файла сборки.

#######################################################################
## SPI driver
## SPI 0 ioport 0x48030100 irq 65
## SPI 1 ioport 0x481a0100 irq 125
#######################################################################
display_msg Starting SPI driver...
#  SPI0
#spi-master -d am335x base=0x48030100,irq=65,edma=1,edmairq=529,edmachannel=17
#  SPI1
# spi-master -d am335x base=0x481A0100,irq=125,edma=1,edmairq=555,edmachannel=43
spi-master -d am335x base=0x481A0100,irq=125
spi-master -u1 am335x base=0x48030100,irq=65

Однако spi1 не работает. в папке /dev появляется только spi0


person lulu    schedule 05.06.2017    source источник


Ответы (2)


Я думаю, что что-то не так с командной строкой. вы пропустили -d перед библиотекой. Пожалуйста, попробуй -

spi-master -u 1 -d am335x base=0x48030100,irq=65
person Shaibal    schedule 06.06.2017
comment
spi-master -d am335x base=0x481A0100,irq=125 spi-master -d am335x base=0x48030100,irq=65 Я попробовал -d для обоих spi, как указано выше. Не работает. Возможно, мне нужно сначала отключить HDMI. - person lulu; 06.06.2017
comment
-d — указать имя библиотеки, которая содержит функции передачи и настройки SPI. Так что -d в любом случае должен быть перед am335x. - person Shaibal; 06.06.2017
comment
Что вы имеете в виду под не работает? Все еще нет интерфейса /dev? Также почему вы пришли к выводу, что вам нужно отключить HDMI? почему это здесь актуально? - person Shaibal; 06.06.2017
comment
Шайбалу, спасибо за ответ. Я пробовал spi-master -d am335x base=0x48030100,irq=65. И я до сих пор не вижу dev/spi1. появляется только dev/spi0. - person lulu; 10.06.2017
comment
Я читал, что spi1 имеет общие контакты с hdmi. Значит hdmi должен быть выключен для активации spi1 - person lulu; 10.06.2017

Я понял свою проблему.

Мне нужно отключить HDMI, чтобы dev/spi1 работал. Я сделал следующие два шага:

1, измените файл сборки (bsp-ti-beaglebone-src/src/hardware/startup/boards/beaglebone/build) в BSP. И восстановить образ

#######################################################################
## SPI driver
## SPI 0 ioport 0x48030100 irq 65
## SPI 1 ioport 0x481a0100 irq 125
#######################################################################
display_msg Starting SPI driver...
spi-master -u 1 -d am335x base=0x48030100,irq=65
spi-master -d am335x base=0x481A0100,irq=125

2, отключите hdmi, добавив следующую строку в uEnv.txt SD-карты

optargs=quiet capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN

Если при включении spi1 hdmi не отключить, система вылетает.

person lulu    schedule 10.06.2017
comment
Спасибо, что поделились решением. Как 1 контакт выделяется для HDMI, а также для SPI? Вы должны выбрать функциональность, используя pinmux, верно? Не могли бы вы сообщить нам, как два контроллера подключены к 1 контакту одновременно? - person Shaibal; 11.06.2017