打印
[FPGA]

【实验指导】如何查看SoC FPGA的系统中FPGA侧添加的GPIO的编号

[复制链接]
363|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zgmxs|  楼主 | 2020-2-16 18:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文由FPGA爱好者小梅哥编写,未经作者许可,本文仅允许网络论坛复制转载,且转载时请标明原作者。

Application to register interrupt and write simple interrupt service routine
----------------------------------------------------------------------------
Detect user input from push button / DIP switch:
        modprobe gpio_interrupt gpio_number=<n>
When user presses the button or flips the dip switch, a message will be printed
to kernel console.
1. If the user connects to the console on board using serial connection,
the message "Interrupt happened at gpio:<gpio_number>" will be printed on the
console.
2. If the user connects to the console on board using ssh, the message can be
viewed from kernel log via "dmesg" command.
Note: User will need to do "rmmod gpio_interrupt" prior in order to change
gpio_number by calling "modprobe gpio_interrupt gpio_number=<n>" again
User will need to get the GPIO number from /sys/class/gpio/ by using
command 'ls'. E.g.
        root@socfpga~:# ls /sys/class/gpio/
        gpiochip150        gpiochip152        gpiochip156        gpiochip160
        gpiochip192        gpiochip224
From the listing, n can be obtained. The GPIO number may vary for different
design with different device tree entries; this is due to the GPIO numbers are
auto-assign by the kernel.
To confirm the n is associated to which peripheral, user needs to match the
label of the GPIO chip to the address of push button and DIP switch in device
tree.
e.g.
        root@socfpga~:# cat /sys/class/gpio/gpiochip150/label
        /sopc@0/bridge@0xc0000000/gpio@0x1000100C0
In this reference design, DIP switch is at address 0x10080 while the push button
is at address 0x100c0. So in this case GPIO number 150 - 151 are allocated to
push button 0 - 1.


使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

104

主题

104

帖子

3

粉丝