integration/soc_core: rework interrupt assignation/reservation
authorFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 9 May 2019 09:54:22 +0000 (11:54 +0200)
committerFlorent Kermarrec <florent@enjoy-digital.fr>
Thu, 9 May 2019 09:54:22 +0000 (11:54 +0200)
commit47dc87584f2bc29e837b4319f516ad3369473fd9
tree7f8070d6d5c88d717acc55cd95166d9560afb829
parent3ee9ce052939194947698611e9015dab4495de58
integration/soc_core: rework interrupt assignation/reservation

The CPUs can now reserve specific interrupts with reserved_interrupts property.
User can still define interrupts in SoCCore.interrupt_map (old way) or use
add_interrupt method. Interrupts specific to SoCCore internal modules are
allocated automatically on the remaining free interrupt ids.

Priority for the interrupts allocation:
- 1) CPU reserved interrupts.
- 2) User interrupts.
- 3) SoCCore interrupts.
litex/soc/cores/cpu/mor1kx/core.py
litex/soc/cores/cpu/picorv32/core.py
litex/soc/integration/soc_core.py
litex/tools/litex_sim.py