Re: [PATCH v1 1/5] cpukit/microblaze: Add exception framework

2022-02-01 Thread Sebastian Huber
Hello Kinsey, could you please use the _CPU_* and CPU_* prefixes only for items which are defined by the CPU port interface: cpukit/score/cpu/no_cpu/include/rtems/score/cpu.h cpukit/score/cpu/no_cpu/include/rtems/score/cpuimpl.h Architecture-specific interfaces should have an architecture-spe

[PATCH v1 3/5] cpukit/microblaze: Add exception extensions

2022-02-01 Thread Kinsey Moore
Add the functions necessary to support RTEMS_EXCEPTION_EXTENSIONS and mark this functionality as available on MicroBlaze. --- cpukit/score/cpu/microblaze/cpu.c | 133 + cpukit/score/cpu/microblaze/cpu_asm.S | 137 ++ .../cpu/microblaze/include/rt

[PATCH v1 1/5] cpukit/microblaze: Add exception framework

2022-02-01 Thread Kinsey Moore
This patch updates the CPU_Exception_frame to include all necessary registers, combines hardware snd software exception handlers into a shared vector, provides an architecture-specific hook for taking control of exception handling, and moves exception handling over to actually using the CPU_Excepti

[PATCH v1 5/5] cpukit/microblaze: Simplify dispatch assembly

2022-02-01 Thread Kinsey Moore
The dispatch code was unnecessarily saving and restoring an extra interrupt frame. This avoids the extra frame and folds the dispatch call into a fallthrough to the interrupt frame restoration code. --- cpukit/score/cpu/microblaze/cpu_asm.S | 48 ++- 1 file changed, 2 inser

[PATCH v1 2/5] cpukit/microblaze: Add debug vector and handler

2022-02-01 Thread Kinsey Moore
This patch adds a vector for debug events along with a hook similar to the exception framework. The debug vector generates an exception frame for use by libdebugger. --- .../start/_debug_sw_break_handler.S | 106 ++ bsps/microblaze/shared/start/start.S | 7 +-

[PATCH v1 4/5] cpukit/microblaze: Clarify interrupt frame usage

2022-02-01 Thread Kinsey Moore
Avoid use of magic numbers in favor of named constants and add MSR to the interrupt frame so that thread dispatch can occur on exceptions as well. --- .../microblaze_fpga/start/_interrupt_handler.S | 4 +++- cpukit/score/cpu/microblaze/cpu_asm.S| 16 .../cpu/microbl