mbox series

[v2,0/8] sparc/leon3: Add support for -smp

Message ID 20240116130213.172358-1-chigot@adacore.com (mailing list archive)
Headers show
Series sparc/leon3: Add support for -smp | expand

Message

Clément Chigot Jan. 16, 2024, 1:02 p.m. UTC
V2 modifications
 - Patch1: Add SPDX copyright tags.
 - Patch3: Add defines for MP_STATUS fields. Improve comments.
 - Patch4: Improve a comment.
 - Patch6: Dropped as already merged.

---

This series allows leon3 emulations to record up 4 CPUs.

It requires some enhancements in the grlib_irqmp device and adding the
cpu_index field in the asr17 instruction.

It has been tested locally with various bareboard runtimes.


Clément Chigot (8):
  sparc/grlib: split out the headers for each peripherals
  intc/grlib_irqmp: add ncpus property
  intc/grlib_irqmp: implements the multiprocessor status register
  intc/grlib_irqmp: implements multicore irq
  target/sparc: implement asr17 feature for smp
  leon3: implement multiprocessor
  leon3: check cpu_id in the tiny bootloader
  MAINTAINERS: replace Fabien by myself as Leon3 maintainer

 MAINTAINERS                                   |   2 +-
 hw/char/grlib_apbuart.c                       |   6 +-
 hw/intc/grlib_irqmp.c                         | 112 ++++++++++-----
 hw/sparc/leon3.c                              | 135 +++++++++++++-----
 hw/timer/grlib_gptimer.c                      |   6 +-
 include/hw/char/grlib_uart.h                  |  32 +++++
 .../hw/{sparc/grlib.h => intc/grlib_irqmp.h}  |  18 +--
 include/hw/timer/grlib_gptimer.h              |  32 +++++
 target/sparc/helper.c                         |  16 +++
 target/sparc/helper.h                         |   1 +
 target/sparc/translate.c                      |  13 +-
 11 files changed, 278 insertions(+), 95 deletions(-)
 create mode 100644 include/hw/char/grlib_uart.h
 rename include/hw/{sparc/grlib.h => intc/grlib_irqmp.h} (83%)
 create mode 100644 include/hw/timer/grlib_gptimer.h

Comments

Clément Chigot Jan. 30, 2024, 8:38 a.m. UTC | #1
Hey Philippe,

Gentle ping on this serie

Thanks,
Clément



On Tue, Jan 16, 2024 at 2:02 PM Clément Chigot <chigot@adacore.com> wrote:
>
> V2 modifications
>  - Patch1: Add SPDX copyright tags.
>  - Patch3: Add defines for MP_STATUS fields. Improve comments.
>  - Patch4: Improve a comment.
>  - Patch6: Dropped as already merged.
>
> ---
>
> This series allows leon3 emulations to record up 4 CPUs.
>
> It requires some enhancements in the grlib_irqmp device and adding the
> cpu_index field in the asr17 instruction.
>
> It has been tested locally with various bareboard runtimes.
>
>
> Clément Chigot (8):
>   sparc/grlib: split out the headers for each peripherals
>   intc/grlib_irqmp: add ncpus property
>   intc/grlib_irqmp: implements the multiprocessor status register
>   intc/grlib_irqmp: implements multicore irq
>   target/sparc: implement asr17 feature for smp
>   leon3: implement multiprocessor
>   leon3: check cpu_id in the tiny bootloader
>   MAINTAINERS: replace Fabien by myself as Leon3 maintainer
>
>  MAINTAINERS                                   |   2 +-
>  hw/char/grlib_apbuart.c                       |   6 +-
>  hw/intc/grlib_irqmp.c                         | 112 ++++++++++-----
>  hw/sparc/leon3.c                              | 135 +++++++++++++-----
>  hw/timer/grlib_gptimer.c                      |   6 +-
>  include/hw/char/grlib_uart.h                  |  32 +++++
>  .../hw/{sparc/grlib.h => intc/grlib_irqmp.h}  |  18 +--
>  include/hw/timer/grlib_gptimer.h              |  32 +++++
>  target/sparc/helper.c                         |  16 +++
>  target/sparc/helper.h                         |   1 +
>  target/sparc/translate.c                      |  13 +-
>  11 files changed, 278 insertions(+), 95 deletions(-)
>  create mode 100644 include/hw/char/grlib_uart.h
>  rename include/hw/{sparc/grlib.h => intc/grlib_irqmp.h} (83%)
>  create mode 100644 include/hw/timer/grlib_gptimer.h
>
> --
> 2.25.1
>
Philippe Mathieu-Daudé Jan. 30, 2024, 11:55 a.m. UTC | #2
On 16/1/24 14:02, Clément Chigot wrote:
> V2 modifications
>   - Patch1: Add SPDX copyright tags.
>   - Patch3: Add defines for MP_STATUS fields. Improve comments.
>   - Patch4: Improve a comment.
>   - Patch6: Dropped as already merged.
> 
> ---
> 
> This series allows leon3 emulations to record up 4 CPUs.
> 
> It requires some enhancements in the grlib_irqmp device and adding the
> cpu_index field in the asr17 instruction.
> 
> It has been tested locally with various bareboard runtimes.
> 
> 
> Clément Chigot (8):
>    sparc/grlib: split out the headers for each peripherals
>    intc/grlib_irqmp: add ncpus property
>    intc/grlib_irqmp: implements the multiprocessor status register
>    intc/grlib_irqmp: implements multicore irq
>    target/sparc: implement asr17 feature for smp
>    leon3: implement multiprocessor
>    leon3: check cpu_id in the tiny bootloader
>    MAINTAINERS: replace Fabien by myself as Leon3 maintainer

Cc'ing maintainers per:

$ ./scripts/get_maintainer.pl -f hw/sparc/leon3.c
"Clément Chigot" <chigot@adacore.com> (maintainer:Leon3)
Frederic Konrad <konrad.frederic@yahoo.fr> (maintainer:Leon3)
Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> (maintainer:SPARC TCG CPUs)
Artyom Tarasenko <atar4qemu@gmail.com> (maintainer:SPARC TCG CPUs)

Mark / Artyom if you don't have PR planned I can take the v3 if you Ack.

Regards,

Phil.