|
Petalinux. Kernel module. |
|
|
|
 |
Ответов
|
Apr 8 2016, 07:57
|
Частый гость
 
Группа: Validating
Сообщений: 124
Регистрация: 10-08-05
Пользователь №: 7 502

|
axi_gpio0_init(void) и axi_gpio0_exit(void) можно выбросить вместе с module_init/module_exit и использовать вместо них макрос module_platform_driver(axi_gpio0_driver). Это не обязательно, но чаще делают именно так - код получается немного проще. В device tree должно быть строка .compatible = "vendor,axi_gpio0". Я бы заменил её на что-нибудь уникальное во избежание накладок. Цитата(doom13 @ Apr 8 2016, 13:39)  ... не даёт зайти в каталог, переходит сразу в каталог /sys/firmware/devicetree/base (или так и надо?). Тут ничего не могу сказать, поскольку не работал с petalinux и не знаю, как они там всё устроили. Похоже, что /proc/device-tree - это симлинк, но сути это не меняет. Ищите в /sys, ести Вас туда выводят.
|
|
|
|
|
Apr 8 2016, 08:06
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(nill @ Apr 8 2016, 10:57)  axi_gpio0_init(void) и axi_gpio0_exit(void) можно выбросить вместе с module_init/module_exit и использовать вместо них макрос module_platform_driver(axi_gpio0_driver). Это не обязательно, но чаще делают именно так - код получается немного проще. Спасибо, учту в будущем. Цитата(nill @ Apr 8 2016, 10:57)  В device tree должно быть строка .compatible = "vendor,axi_gpio0". Я бы заменил её на что-нибудь уникальное во избежание накладок. Тут поменял на my_gpio_driver, но всё как и ранее, в probe не заходит. Цитата(nill @ Apr 8 2016, 10:57)  Тут ничего не могу сказать, поскольку не работал с petalinux и не знаю, как они там всё устроили. Похоже, что /proc/device-tree - это симлинк, но сути это не меняет. Ищите в /sys, ести Вас туда выводят. Вот, что есть в /sys/firmware/devicetree/base: CODE [ hexdump renice [[ hostname reset addgroup httpd rm adduser hwclock rmdir ar id rmmod ash ifconfig route awk ifdown run-parts basename ifup run-postinsts bootlogd inetd runlevel busybox init runlevel.sysvinit busybox.nosuid init.sysvinit sed busybox.suid insmod seq cat ip setconsole chattr kill sh chgrp killall sha1sum chmod killall5 sha256sum chown klogd sha3sum chroot last sha512sum chvt last.sysvinit shuf clear lastb shutdown cmp ldconfig shutdown.sysvinit cp less sleep cpio ln sort cut loadfont start-stop-daemon date loadkmap stat dc logger strings dd login stty deallocvt logname su delgroup logread sulogin deluser losetup swapoff depmod ls swapon devmem lsmod switch_root df md5sum sync diff mdev sysctl dirname mesg syslogd dmesg mesg.sysvinit tail dnsdomainname microcom tar du mkdir tee dumpkmap mkdosfs telinit dumpleases mkfifo telnet echo mkfs.vfat telnetd egrep mknod test env mkswap tftp expr mktemp time false modprobe top fatattr more touch fbset mount tr fdisk mountpoint traceroute fgrep mountpoint.sysvinit true find mtd_debug tty flash_erase mtdinfo udhcpc flash_eraseall mv udhcpd flash_lock nanddump umount flash_otp_dump nandtest uname flash_otp_info nandwrite uniq flash_otp_lock netstat unlink flash_otp_write nice unzip flash_unlock nohup update-alternatives flashcp nslookup update-rc.d flock od upgrade-firmware free openvt uptime fsck passwd users fstab-decode patch usleep fstrim peek utmpdump ftpd pidof utmpdump.sysvinit ftpget pidof.sysvinit vi ftpput ping vlock fuser ping6 wall fwupgrade pivot_root wall.sysvinit gdbserver poke watch getopt poweroff watchdog getty poweroff.sysvinit wc grep printf wget groups ps which gunzip pwd who gzip rdate whoami halt readlink xargs halt.sysvinit realpath yes hd reboot zcat head reboot.sysvinit
|
|
|
|
|
Apr 8 2016, 08:19
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(nill @ Apr 8 2016, 11:08)  Это имя дожно быть одинаковым в драйвере и device tree. Вы его изменили в device tree? Нашли эту строку в /proc/device-tree (или где она там...)? Это имя .compatible = "my_gpio_driver", которое задаётся для компатибле??? Цитата(nill @ Apr 8 2016, 11:08)  В /sys/... что-то не то, device tree выгдядит по-другому Это похоже Код root@peta_test:/sys/firmware/devicetree/base# ls -al -r--r--r-- 1 root root 4 Jan 1 00:15 #address-cells -r--r--r-- 1 root root 4 Jan 1 00:15 #size-cells drwxr-xr-x 8 root root 0 Jan 1 00:04 . drwxr-xr-x 3 root root 0 Jan 1 00:04 .. drwxr-xr-x 2 root root 0 Jan 1 00:05 aliases drwxr-xr-x 8 root root 0 Jan 1 00:05 amba_pl drwxr-xr-x 2 root root 0 Jan 1 00:15 chosen drwxr-xr-x 4 root root 0 Jan 1 00:15 clocks -r--r--r-- 1 root root 16 Jan 1 00:15 compatible drwxr-xr-x 3 root root 0 Jan 1 00:15 cpus drwxr-xr-x 2 root root 0 Jan 1 00:15 memory -r--r--r-- 1 root root 10 Jan 1 00:15 model -r--r--r-- 1 root root 1 Jan 1 00:15 name root@peta_test:/sys/firmware/devicetree/base# ????
|
|
|
|
Сообщений в этой теме
doom13 Petalinux. Kernel module. Apr 6 2016, 20:23 nill platform_driver_register() всего лишь регистрирует... Apr 7 2016, 08:07 doom13 Цитата(nill @ Apr 7 2016, 11:07) platform... Apr 7 2016, 08:58 doom13 Уточню.
Нашёл исходный код platform_driver_registe... Apr 7 2016, 10:35 nill Цитата(doom13 @ Apr 7 2016, 14:58) Этого ... Apr 8 2016, 06:53 doom13 Цитата(nill @ Apr 8 2016, 09:53) А вообще... Apr 8 2016, 07:31 doom13 Цитата(nill @ Apr 8 2016, 09:53) Покажите... Apr 8 2016, 07:39 nill Вам же говорят, что это каталог Зайдите внутрь, ... Apr 8 2016, 07:36 nill Это имя дожно быть одинаковым в драйвере и device ... Apr 8 2016, 08:08 nill ^ Да, это оно.
Так, кажется я начал о чём-то догад... Apr 8 2016, 08:20 doom13 Цитата(nill @ Apr 8 2016, 11:20) Так, каж... Apr 8 2016, 08:28 nill axi_gpio_0 определён в карте памяти, посмотрите в ... Apr 8 2016, 08:41 doom13 Цитата(nill @ Apr 8 2016, 11:41) axi_gpio... Apr 8 2016, 09:30 nill В файле pl.dtsi есть секция axi_gpio_0: gpio@10003... Apr 9 2016, 06:02 doom13 Цитата(nill @ Apr 9 2016, 09:02) В файле ... Apr 9 2016, 08:10 nill Других идей у меня, к сожалению, нет. Возможно, чт... Apr 10 2016, 06:58 doom13 RE: Petalinux. Kernel module. Apr 11 2016, 07:31 nill Цитата(doom13 @ Apr 11 2016, 14:31) Кодro... Apr 12 2016, 08:02 doom13 nill, cпасибо.
Попробую поэкспериментировать с жел... Apr 12 2016, 09:20
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|