Size: a a a

2021 January 29

L

LexsZero in Embedded Group
ну бля. dtc - тупой. он не знает ни про какие константы. поэтому при сборке обычно dts пропускается через сишный препроцессор, который ресолвит инклюды и вместо именованных констант подставляет циферки. если ты этого не делаешь, то ты ссзб
источник

L

LexsZero in Embedded Group
// можешь вместо IRQ_TYPE_EDGE_FALLING написать 2, тогда инклюд будет не нужен
источник

S

Sergey in Embedded Group
LexsZero
// можешь вместо IRQ_TYPE_EDGE_FALLING написать 2, тогда инклюд будет не нужен
sun8i-h3-spi-spidev.dts:20.20-25.15: Warning (unit_address_vs_reg): /fragment@1/__overlay__/spidev: node has a reg or ranges property, but no unit name
sun8i-h3-spi-spidev.dts:20.20-25.15: Warning (spi_bus_reg): /fragment@1/__overlay__/spidev: SPI bus unit address format error, expected "0"
тогда так
источник

S

Sergey in Embedded Group
о, скомпилировал!!!!
источник

S

Sergey in Embedded Group
ух нихуя появилось в dtc -I fs /proc/device-tree!!!!
источник

S

Sergey in Embedded Group
ухх и модули загрузились!!!
источник

S

Sergey in Embedded Group
только устройство tun-устройство не появилось
в dmesg ничего не пишет
источник

S

Sergey in Embedded Group
так, есть вариаты как это отлаживать теперь?
сам модуля ядра?
почему он не пишет ничего в dmesg..
источник

S

Sergey in Embedded Group
Sergey
так?
может мне надо pio на gpio заменить?
источник

S

Sergey in Embedded Group
я же указываю gpio-пин, pio это немного другое?
источник

L

LexsZero in Embedded Group
может там какое-то дерьмо юзерспейсное надо запустить?
источник

S

Sergey in Embedded Group
LexsZero
может там какое-то дерьмо юзерспейсное надо запустить?
да не вроде, на малинке все и так заработало
а тот чувак в гайде ничего не запускал
источник

S

Sergey in Embedded Group
interrupt-parent = <&pio>;
+    interrupts = <1 0 IRQ_TYPE_EDGE_FALLING>;   /* PB00 */

в interrupts 1 это же номер пина?
источник

К1

Ком 123 in Embedded Group
Sergey
interrupt-parent = <&pio>;
+    interrupts = <1 0 IRQ_TYPE_EDGE_FALLING>;   /* PB00 */

в interrupts 1 это же номер пина?
В probe обработчик добавь printk. Если probe драйвером не вызывается - проблема в compatible
источник

S

Sergey in Embedded Group
Ком 123
В probe обработчик добавь printk. Если probe драйвером не вызывается - проблема в compatible
не понял, куда?
источник

К1

Ком 123 in Embedded Group
Драйвер должен вызывать probe для нахождения девайса в dtb(за это и отвечает строчка compatible). Вот если строчка матчится драйвером - он видит, что девайс для него описан в device tree и можно его пользовать.
источник

S

Sergey in Embedded Group
Ком 123
Драйвер должен вызывать probe для нахождения девайса в dtb(за это и отвечает строчка compatible). Вот если строчка матчится драйвером - он видит, что девайс для него описан в device tree и можно его пользовать.
что такое probe?
куда мне добавить prink? в какой файл?
источник

К1

Ком 123 in Embedded Group
Скинь ссылку на исходники драйвера, гляну
источник

S

Sergey in Embedded Group
Ком 123
Скинь ссылку на исходники драйвера, гляну
на модуль или оверлей?
источник

К1

Ком 123 in Embedded Group
На модуль
источник