intc.h (897B)
1#ifndef INTC_H 2#define INTC_H 3 4#include "qom/object.h" 5 6#define TYPE_INTERRUPT_STATS_PROVIDER "intctrl" 7 8typedef struct InterruptStatsProviderClass InterruptStatsProviderClass; 9DECLARE_CLASS_CHECKERS(InterruptStatsProviderClass, INTERRUPT_STATS_PROVIDER, 10 TYPE_INTERRUPT_STATS_PROVIDER) 11#define INTERRUPT_STATS_PROVIDER(obj) \ 12 INTERFACE_CHECK(InterruptStatsProvider, (obj), \ 13 TYPE_INTERRUPT_STATS_PROVIDER) 14 15typedef struct InterruptStatsProvider InterruptStatsProvider; 16 17struct InterruptStatsProviderClass { 18 InterfaceClass parent; 19 20 /* The returned pointer and statistics must remain valid until 21 * the BQL is next dropped. 22 */ 23 bool (*get_statistics)(InterruptStatsProvider *obj, uint64_t **irq_counts, 24 unsigned int *nb_irqs); 25 void (*print_info)(InterruptStatsProvider *obj, Monitor *mon); 26}; 27 28#endif