Как включить 4 интерфейса SPI на BeagleBoard X15, чтобы они были видны в каталоге /dev?
Я настроил и скомпилировал ядро Linux с помощью buildroot. Я хочу иметь доступ к spi-шинам на этой плате в пользовательском режиме. Вот шаги, которые я предпринял для компиляции ядра.
1- клонировать репозиторий buildroot: версия 2023.02-rc1.
$ git clone https://github.com/buildroot/buildroot.git && cd buildroot
2- загрузить defconfig для платы
$ make beagleboardx15_defconfig
3- Изменения, внесенные в конфигурацию меню.
$ make menuconfig
Toolchain ---> A) Toolchain Type ---> External Toolchain
B) Toolchain ---> Linaro ARM 2018.05
Kernel ---> A) Kernel version ---> Custom version (4.20.17)
B) Out-of-tree Device Tree Source file paths (path/to/my/am57xx-beagle-x15.dts)
Этотpath/to/my/am57xx-beagle-x15.dts
файл будет скопирован в исходный код Linux и скомпилирован оттуда. я изменилstatus
свойствоmcspi1-4
узлы для"okay"
в этом файле вот так:
&mcspi1 {
status = "okay";
};
# also did this for other mcspi nodes...
Эти узлы определены вdra7.dtsi
файл, которые по умолчанию отключены.
4- Изменения, внесенные в конфигурацию linux-menuconfig.
$ make linux-menuconfig
Device Drivers ---> SPI support ---> <*> User mode SPI driver support
5- скомпилировать ядро и записать sdcard.img на мою SD-карту.
$ make
$ sudo dd if=images/sdcard.img of=/dev/sdc
После этих шагов я ожидал увидеть какой-нибудь spidev в каталоге /dev, но там нет ничего, связанного со spi.