This is a scoped enum meant to be used mainly in the python world for DTB autogeneration. By making an ArmInterruptPin self aware of its own type, we can use it in the C++ world when modelling devices. For example if a device spec is enforcing a specific triggering behaviour, its gem5 implementation can query the interrupt type and panic if its expectations are not met. In this way we are sure what the Linux kernel sees in the DTB is in sync with how the model really behaves Change-Id: I66ae3cfbc7b1ed94804f1f882c12eb31f70840da Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/35395 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>