Apple M1 Pro/Max SoCs come with a new version of the interrupt controller.
This version appears to be more scalable (supports more cores, more
interrupts) but is still fairly similar to the previous generation so
it makes sense for them to share a driver. One major difference is that
it seems that the new interrupt controller no longer has the ability to
have external interrupts target specific CPU cores. Instead it delivers
them to whichever core is willing to handle the interrupt. Since this
currently isn't compatible with what OpenBSD wants we disable the
delivery of external interrupts to the secondary cores by setting some
bits in an implementation-defined system register.
This makes OpenBSD run on M1 Pro/Max machines.
ok jsg@