[PATCH v2 00/12] Simplify generic interrupt controller support

Sebastian Huber sebastian.huber at embedded-brains.de
Sat Jun 19 14:04:36 UTC 2021


Chris thankfully reminded me that my first patch set was far too sloppy:

https://lists.rtems.org/pipermail/devel/2021-June/067858.html

I did split it up into parts which are easier to review and test.  This patch
set simplifies the generic interrupt controller support a bit to prepare for
more complex follow up changes.  It basically replaces the BSP-provided defines
BSP_INTERRUPT_VECTOR_MIN and BSP_INTERRUPT_VECTOR_MAX with
BSP_INTERRUPT_VECTOR_COUNT.  The correctness of the changes was checked by
adding a C pre processor assertion and building all BSPs.

Sebastian Huber (12):
  bsps/irq: Remove BSP_INTERRUPT_NO_HEAP_USAGE
  bsp/genmcf548x: Change BSP_INTERRUPT_VECTOR_MIN
  bsp/generic_or1k: Remove incomplete IRQ support
  bsps/irq: Assert BSP_INTERRUPT_VECTOR_MIN == 0
  bsps/irq: Remove BSP_INTERRUPT_VECTOR_MIN
  smpcapture02: Fix use of BSP_INTERRUPT_VECTOR_MAX
  bsps/irq: Add BSP_INTERRUPT_VECTOR_COUNT
  bsps/irq: Remove BSP_INTERRUPT_VECTOR_NUMBER
  bsps/irq: Use BSP_INTERRUPT_VECTOR_COUNT
  bsps/irq: Remove BSP_INTERRUPT_VECTOR_MAX
  bsps/irq: Default BSP_INTERRUPT_VECTOR_COUNT == 0
  bsp/atsam: Fix BSP_INTERRUPT_VECTOR_COUNT

 bsps/aarch64/a53/include/bsp/irq.h            |  3 +-
 bsps/aarch64/a72/include/bsp/irq.h            |  3 +-
 bsps/aarch64/xilinx-zynqmp/include/bsp/irq.h  |  3 +-
 bsps/arm/altera-cyclone-v/include/bsp/irq.h   |  4 +-
 bsps/arm/atsam/include/bsp/irq.h              |  4 +-
 bsps/arm/atsam/start/bspstart.c               |  2 +-
 bsps/arm/beagle/include/bsp/irq.h             |  3 +-
 bsps/arm/beagle/irq/irq.c                     |  2 +-
 bsps/arm/csb336/include/bsp/irq.h             |  4 +-
 bsps/arm/csb337/include/bsp/irq.h             |  4 +-
 bsps/arm/edb7312/include/bsp/irq.h            |  4 +-
 bsps/arm/fvp/include/bsp/irq.h                |  5 +--
 bsps/arm/gumstix/include/bsp/irq.h            |  4 +-
 bsps/arm/imx/include/bsp/irq.h                |  3 +-
 bsps/arm/imxrt/include/bsp/irq.h              |  3 +-
 bsps/arm/lm3s69xx/include/bsp/irq.h           |  3 +-
 bsps/arm/lpc176x/include/bsp/irq.h            |  4 +-
 bsps/arm/lpc176x/irq/irq.c                    |  2 +-
 bsps/arm/lpc24xx/include/bsp/irq.h            |  6 +--
 bsps/arm/lpc24xx/irq/irq.c                    |  4 +-
 bsps/arm/lpc32xx/include/bsp/irq.h            |  5 +--
 bsps/arm/raspberrypi/include/bsp/irq.h        |  5 +--
 bsps/arm/realview-pbx-a9/include/bsp/irq.h    |  3 +-
 bsps/arm/rtl22xx/include/bsp/irq.h            |  4 +-
 bsps/arm/shared/irq/irq-armv7m.c              |  2 +-
 bsps/arm/shared/start/start.S                 |  2 +-
 bsps/arm/smdk2410/include/bsp/irq.h           |  4 +-
 bsps/arm/stm32f4/include/bsp/irq.h            |  3 +-
 bsps/arm/stm32h7/include/bsp/irq.h            |  4 +-
 bsps/arm/tms570/include/bsp/irq.h             |  3 +-
 bsps/arm/tms570/irq/irq.c                     |  2 +-
 bsps/arm/xen/include/bsp/irq.h                |  3 +-
 bsps/arm/xilinx-zynq/include/bsp/irq.h        |  3 +-
 bsps/arm/xilinx-zynqmp/include/bsp/irq.h      |  3 +-
 bsps/i386/include/bsp/irq.h                   |  3 +-
 bsps/include/bsp/irq-default.h                | 12 +++---
 bsps/include/bsp/irq-generic.h                | 30 ++++---------
 bsps/lm32/include/bsp/irq.h                   |  7 +--
 bsps/m68k/genmcf548x/include/bsp/irq.h        |  4 +-
 bsps/m68k/genmcf548x/irq/irq.c                | 18 +++++---
 bsps/mips/csb350/include/bsp/irq.h            |  3 +-
 bsps/mips/hurricane/include/bsp/irq.h         |  3 +-
 bsps/mips/jmr3904/include/bsp/irq.h           |  4 +-
 bsps/mips/malta/include/bsp/irq.h             |  4 +-
 bsps/mips/rbtx4925/include/bsp/irq.h          |  3 +-
 bsps/mips/rbtx4938/include/bsp/irq.h          |  3 +-
 bsps/mips/shared/irq/irq.c                    |  2 +-
 bsps/or1k/generic_or1k/include/bsp/irq.h      |  3 +-
 bsps/or1k/generic_or1k/irq/irq.c              | 43 -------------------
 bsps/powerpc/gen5200/include/bsp/irq.h        |  4 +-
 bsps/powerpc/gen83xx/include/bsp/irq.h        |  4 +-
 .../motorola_powerpc/include/bsp/irq.h        |  3 +-
 bsps/powerpc/mpc55xxevb/include/bsp/irq.h     |  5 +--
 bsps/powerpc/mpc8260ads/include/bsp/irq.h     |  4 +-
 bsps/powerpc/psim/include/bsp/irq.h           |  3 +-
 bsps/powerpc/qemuppc/include/bsp/irq.h        |  4 +-
 bsps/powerpc/qoriq/include/bsp/irq.h          |  6 +--
 bsps/powerpc/qoriq/irq/irq.c                  |  6 +--
 bsps/powerpc/t32mppc/include/bsp/irq.h        |  3 +-
 bsps/powerpc/tqm8xx/include/bsp/irq.h         |  4 +-
 bsps/powerpc/virtex/include/bsp/irq.h         |  3 +-
 bsps/riscv/griscv/include/bsp/irq.h           |  4 +-
 bsps/riscv/riscv/include/bsp/irq.h            |  4 +-
 bsps/shared/irq/irq-generic.c                 | 36 ++--------------
 bsps/shared/irq/irq-info.c                    |  2 +-
 bsps/shared/irq/irq-server.c                  |  2 +-
 bsps/sparc/erc32/include/bsp/irq.h            |  3 +-
 bsps/sparc/leon2/include/bsp/irq.h            |  3 +-
 bsps/sparc/leon3/include/bsp/irq.h            |  3 +-
 bsps/x86_64/include/bsp/irq.h                 |  3 +-
 .../lib/libbsp/or1k/generic_or1k/Makefile.am  |  6 +--
 .../bsps/or1k/generic_or1k/bspgenericor1k.yml |  4 +-
 testsuites/smptests/smpcapture02/init.c       |  2 +-
 73 files changed, 107 insertions(+), 272 deletions(-)
 delete mode 100644 bsps/or1k/generic_or1k/irq/irq.c

-- 
2.26.2



More information about the devel mailing list