I am trying to handle GPIO interrupt in userspace on Linux with UIO
I am using imx6dl-sabresd development board with kernel version 4.1.15
I have added uio in imx6qdl-sabresd.dtsi as given below, and built imx6dl-sabresd.dtb
user_io@0 {
compatible = "mydevice,generic-uio,ui_pdrv";
status = "okay";
interrupt-parent = <&gpio1>;
interrupts = <4 IRQ_TYPE_EDGE_RISING>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_user_io>;
};
&iomuxc {
.
.
pinctrl_user_io: user_io-0 {
fsl,pins = <
MX6QDL_PAD_GPIO_4__KEY_COL7 0x1b0b1
>;
};
.
.
}
Then I built kernel with:
CONFIG_UIO=y
CONFIG_UIO_PDRV_GENIRQ=m
CONFIG_UIO_DMEM_GENIRQ is not set
(I also tried CONFIG_UIO=m,CONFIG_UIO_PDRV_GENIRQ=m
and CONFIG_UIO=y, CONFIG_UIO_PDRV_GENIRQ=y)
After boot I tried to load generic IRQ with,
modprobe uio_pdrv_genirq uio_pdrv_genirq.of_id="mydevice,generic-uio,ui_pdrv"
Still I do not found /dev/uio0##
Thanks in advance!