There are several libraries like WiringPi, RPi and pigpio, claiming to implement interrupt handling for GPIO signals. But as far as I can estimate, they all do polling on the pins, therefore implement a busy wait in a parallel thread. Only the library bcm2835 warns that it's not using real interrupts.
Reviewing the available datasheets (BCM2835 and BCM2711) I was able to identify the registers on which one can enable interrupts for three pins, which then should be routed from the Video Core over the Generic Interrupt Controller (GIC-400) to the CPU cores. On ATmega32 you can write to registers like these to enable interrupts on certain pins and implement
ISR(desired_vec) as interrupt handler method.
Now I'd like to know how to implement an ISR on RPi. Is that even possible in user space?
And what is the difference between interrupts and BCM's edge detection? Does this actually activate the GIC?