RTEMS | bsps/raspberrypi5: Add SMP support (!1072)
Preetam Das (@lostux)
gitlab at rtems.org
Tue Feb 24 11:12:32 UTC 2026
Preetam Das commented on a discussion on bsps/aarch64/raspberrypi5/start/bspsmp.c: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1072#note_143395
> +{
> + uint32_t PSCI_FN_SYSTEM_CPU_ON = 0xC4000003;
> + /* Core IDs are in AFF1 in the Pi5 */
> + uint64_t target_cpu = (uint64_t) cpu_index << 8;
> + uint64_t ret;
> +
> + __asm__ volatile (
> + "mov x0, %1\n"
> + "mov x1, %2\n"
> + "mov x2, %3\n"
> + "mov x3, #0\n"
> + "smc #0\n"
> + "mov %0, x0\n"
> + : "=r" ( ret ) : "r" ( PSCI_FN_SYSTEM_CPU_ON ), "r" ( target_cpu ),
> + "r" ( (uint64_t) _start ) : "x0", "x1", "x2", "x3", "memory"
> + );
@opticron Added the function `_AArch64_Get_MPIDR_for_cpu_index` and its ARM variant. I thought of naming the ARM version `_AArch32_`, but to be similar to the other ones in the header, I went with \_ARM\_. These functions are implemented in `bsps/shared/start/bspsmp-mpidr.c`. Let me know if the file name needs changing.
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1072#note_143395
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/20260224/e604e8c2/attachment-0001.htm>
More information about the bugs
mailing list