Я тоже сражался с этой дилеммой, пытаясь отобразить материал ILI9340C для отображения Beaglebone Black. Способ /dev/devices/bone_capemgr.*
заключается в том, что все, что вы эхо отзываете в его каталоге slots
, идет и ищет наложение этого дерева устройств для нового устройства - новое в Linux Kernel 3.0 и выше. Для тех, кто этого не знает (мне это приходило навсегда, чтобы найти это). Деревья устройств - это в основном драйвер, который говорит Linux, как работать с устройством, но вместо того, чтобы содержать какой-либо код, они просто представляют собой файл конфигурации, говорит Linux, что поставить туда, где можно поговорить с устройством, и что ожидать взамен. При этом BB-SPIx-01
является скомпилированным файлом дерева устройств, в формате /lib/firmware/
, который указывает на устройство SPI, и сообщает spidev
, что с ним делать.
BB-SPI1-01
подключается к порту HDMI уже для какой-то аудио-вещи (я думаю), и поэтому, если вы полностью отключите HDMI, SPI1
всегда привязан к HDMI-кадру. Это объясняет, почему запись BB-SPI1-01
в /sys/devices/bone_capemgr.*/slots
не удалась. Это специальный файл, и когда вы пишете на него, процесс ядра читает ваш ввод и пытается попытаться создать файл «устройства» в другом месте, и поскольку BB-SPI1-01
уже включен, этот файл уже существует, и поэтому процесс ядра, который обрабатывает эти вещи, возвращает ошибку и передает ее через любой процесс, инициированный им, в этом случае вы, пользователь, набрав echo BB-SPI1-01 > /sys/devices/bone_capemgr.*/slots
.
С яркой стороны, SPI0
не использовался. Поэтому, чтобы использовать его, все, что вам нужно сделать, это включить его в userland.Для этого (и вы уже поняли это, но для всех остальных) введите echo BB-SPI0-01 > /sys/devices/bone_capemgr.*/slots
в командной строке, а затем просто убедитесь, что spidev запущен, введите modprobe spidev
как root. Теперь, чтобы проверить, введите ls /dev | grep spi
и посмотрите, что происходит. /dev/spidevX.Y
- это ваш автобус SPI, для меня это будет /dev/spidev1.0
.
Мне очень жаль, что это было очень долго, но я до сих пор завершаю свои исследования в одном месте в надежде, что это поможет кому-то.
Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь спрашивать!
Фактически существует только одна возможная замена для дикой карты в пути (8), поэтому несколько путей не являются проблемой, но я все равно пробовал. Нет кубиков. –