RTEMS | bsps/arm/raspberrypi: Fix IRQ dispatch with bank-1 IRQ pending (!1542)

Vijay Banerjee (@vijay) gitlab at rtems.org
Thu Oct 22 13:07:51 UTC 2026




Vijay Banerjee started a new discussion on bsps/arm/raspberrypi/irq/irq.c: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1542#note_161345

 >  
 >    pend = BCM2835_REG(BCM2835_IRQ_BASIC);
 >    if ( pend & BCM2835_IRQ_BASIC_SPEEDUP_USED_BITS ) {
 > -    pend_bit = ffs(pend) - 1;
 > +    /*
 > +     * Only the speed-up bits may be fed to ffs().  Bit 8 ("one or more
 > +     * bits set in pending register 1") is set as well when a non-speed-up
 > +     * GPU interrupt (e.g. the system timer tick, GPU IRQ 3) is pending at
 > +     * the same time as a speed-up one (e.g. USB, GPU IRQ 9).  ffs(pend)
 > +     * then selects bit 8 whose table entry is -1, no handler is called,
 > +     * the interrupt stays asserted and the CPU re-enters this function
 > +     * forever (observed as a system hang on Raspberry Pi 3B+ under USB
 > +     * load).
 > +     */

Is it possible to make this comment block concise?

-- 
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1542#note_161345
You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/namespace/49/sent_notifications/6-719liog1f2new4omd7iq1hxps-1d/unsubscribe | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | Help: https://gitlab.rtems.org/help


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20261022/e5e08a35/attachment-0001.htm>


More information about the bugs mailing list