RTEMS | bsp/aarch64/raspberrypi: Add Mailbox Support (!915)

Christian Mauderer (@c-mauderer) gitlab at rtems.org
Mon Jan 19 08:10:24 UTC 2026



Merge request https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/915 was reviewed by Christian Mauderer

--
  
Christian Mauderer started a new discussion on bsps/aarch64/raspberrypi/include/bsp/mailbox.h: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/915#note_139207

 > +  BCM2711_MBOX_CHANNEL_PROP_ARM_VC = 8,  /**< Property tags (ARM -> VC) */
 > +  BCM2711_MBOX_CHANNEL_PROP_VC_ARM = 9   /**< Property tags (VC -> ARM) */
 > +} bcm2711_mbox_channel;

You removed the defines from raspberrypi.h and moved them here to this enum. That's completely fine. But is there a reason that you renamed them? For example `BCM2711_MBOX_CHANNEL_POWER` instead of `BCM2711_MBOX_CHANNEL_PM`?

--
  
Christian Mauderer started a new discussion on bsps/aarch64/raspberrypi/start/mailbox.c: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/915#note_139208

 > +
 > +    if ((data & MBOX_MAIL_CHANNEL_MASK) == channel) {
 > +      return data & MBOX_MAIL_DATA_MASK;

Is it possible that you never reach that?

I don't know the mbox peripheral enough. But I would expect that you somehow request data and then read them. What happens if a parallel thread reads the data that have been intended for your current thread? Would that `while (1)` ever exit?


-- 
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/915
You're receiving this email because of your account on gitlab.rtems.org.


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


More information about the bugs mailing list