Hi, This patchset aims at genericizing the 'info irq' and 'info pic' HMP commands, so that it is available on all machines and can display details about more than one interrupt controller per machine.
Patch 1 adds a new interface InterruptStatsProvider, which is used to: - gather statistics for the 'info irq' command - print some text when 'info pic' is called Patches 2 to 4 implement InterruptStatsProvider interface on interrupt controllers which have ad-hock code to handle 'info irq'/'info pic' commands. Patch 5 removes ad-hock code, and replaces it by a generic version. You can get details about multiple interrupt controllers per machine starting here. Patch 6 makes 'info irq'/'info pic' commands available on all architectures. For example, Alpha clipper machine is now able to display details about the i8259 interrupt controller. Changes since v1: - renamed interface from IntCtrl to InterruptStatsProvider Hervé Hervé Poussineau (6): intc: add an interface to gather statistics/informations on interrupt controllers intc/i8259: implement InterruptStatsProvider interface intc/slavio_intctl: implement InterruptStatsProvider interface intc/lm32_pic: implement InterruptStatsProvider interface intc: make HMP 'info irq' and 'info pic' commands use InterruptStatsProvider interface intc: make HMP 'info irq' and 'info pic' commands available on all targets hmp-commands-info.hx | 17 +---------- hmp.c | 65 +++++++++++++++++++++++++++++++++++++++++ hmp.h | 2 ++ hw/intc/Makefile.objs | 1 + hw/intc/i8259.c | 73 +++++++++++++++++++++++----------------------- hw/intc/intc.c | 41 ++++++++++++++++++++++++++ hw/intc/lm32_pic.c | 63 ++++++++++++++++++--------------------- hw/intc/slavio_intctl.c | 67 ++++++++++++++++++++++-------------------- hw/sparc/sun4m.c | 15 +--------- include/hw/i386/pc.h | 2 -- include/hw/intc/intc.h | 30 +++++++++++++++++++ include/hw/lm32/lm32_pic.h | 3 -- include/hw/sparc/sun4m.h | 8 ----- monitor.c | 6 ---- 14 files changed, 241 insertions(+), 152 deletions(-) create mode 100644 hw/intc/intc.c create mode 100644 include/hw/intc/intc.h -- 2.1.4