Part Number: AM62P
Other Parts Discussed in Thread: TCA6424
Hey how can I find hardware irq for an interrupt line(GPIO1_23_INTn) if I want to add a node in the dts file to handle this interrupt what irq can I use? 

This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Thummala,
What behavior are you trying to achieve when GPIO1_23_INTn? Can you clarify how you’re planning to use GPIO1_23? Are you attempting to trigger an interrupt that notifies a userspace application, or is this GPIO meant to be managed by a kernel driver for a specific peripheral?
Regards,
Shriya
Hi Vasanth,
Just to clarify are you using Linux? And are you using the AM62P EVM or a custom board? Generally, for GPIO-based interrupts, you do not hardcode a hardware IRQ number in the device tree. Instead, the IRQ is derived through software. I recommend looking at the following example for interrupts: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/Documentation/devicetree/bindings/input/gpio-keys.yaml?h=ti-linux-6.1.y. I also recommend taking a look at the AM62P TRM for more information on interrupts for GPIOs: AM62Px Sitara Processors Technical Reference Manual (Rev. C).
Regards,
Shriya
Hi Shriya,
Thank you for the reply.
I am not using Linux, I have QNXOS running on AM62P EVM board. The issue is I have a microtips-mf10hie panel for which the dts node is defined as:
&main_i2c0 {
#address-cells = <1>;
#size-cells = <0>;
touchscreen@41 {
compatible = "ilitek,ili251x";
reg = <0x41>;
interrupt-parent = <&exp1>;
interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&exp2 20 GPIO_ACTIVE_LOW>;
};
};
and its interrupt parent:
exp1: gpio@22 {
compatible = "ti,tca6424";
reg = <0x22>;
gpio-controller;
#gpio-cells = <2>;
gpio-line-names = "OLDI_INT#", "x8_NAND_DETECT",
"UART1_FET_SEL", "MMC1_SD_EN",
"VPP_EN", "EXP_PS_3V3_EN",
"UART1_FET_BUF_EN", "EXP_HAT_DETECT",
"DSI_GPIO0", "DSI_GPIO1",
"OLDI_EDID", "BT_UART_WAKE_SOC_3V3",
"USB_TYPEA_OC_INDICATION", "CSI_GPIO0",
"CSI_GPIO1", "WLAN_ALERTn",
"HDMI_INTn", "TEST_GPIO2",
"MCASP1_FET_EN", "MCASP1_BUF_BT_EN",
"MCASP1_FET_SEL", "DSI_EDID",
"PD_I2C_IRQ", "IO_EXP_TEST_LED";
interrupt-parent = <&main_gpio1>;
interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
interrupt-controller;
#interrupt-cells = <2>;
pinctrl-names = "default";
pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>;
bootph-all;
};
I have to pass the same irq it is using from QNXOS to an android host through hypervisor.
Best regards,
Vasanth
Hi Vasanth,
I am roping in our QNXOS expert for further assistance.
Regards,
Shriya
Hi Vasanth,
Hey how can I find hardware irq for an interrupt line(GPIO1_23_INTn) if I want to add a node in the dts file to handle this interrupt what irq can I use?
You can use IRQ 32 for GPIO1_23 pin.
Refer gpio_test application from QNX SDK.
Regards,
Vaibhav