On 30.10.2024 16:30:37, Ming Yu wrote: > I am trying to register interrupt controller for the MFD deivce. > I need to queue work to call handle_nested_irq() in the callback > of the interrupt pipe, right? I think you can directly demux the IRQ from the interrupt endpoint callback. But handle_nested_irq() only works from threaded IRQ context, so you have to use something like generic_handle_domain_irq_safe(). Have a look for how to setup the IRQ domain: | drivers/net/usb/lan78xx.c | drivers/net/usb/smsc95xx.c But the IRQ demux in the lan78xx only handles the PHY IRQ. The ksz driver does proper IRQ demux: | net/dsa/microchip/ksz_common.c regards, Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung Nürnberg | Phone: +49-5121-206917-129 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
Attachment:
signature.asc
Description: PGP signature