"system/memory.h" header is indirectly pulled by "hw/sysbus.h".
Include it explicitly to avoid when refactoring the latter:
In file included from ../../hw/misc/avr_power.c:26:
include/hw/misc/avr_power.h:40:18: error: field has incomplete type
'MemoryRegion' (aka 'struct MemoryRegion')
40 | MemoryRegion iomem;
| ^
In file included from ../../hw/timer/avr_timer16.c:39:
include/hw/timer/avr_timer16.h:51:18: error: field has incomplete type
'MemoryRegion' (aka 'struct MemoryRegion')
51 | MemoryRegion iomem;
| ^
In file included from ../../hw/char/avr_usart.c:23:
include/hw/char/avr_usart.h:67:18: error: field has incomplete type
'MemoryRegion' (aka 'struct MemoryRegion')
67 | MemoryRegion mmio;
| ^
include/qemu/typedefs.h:68:16: note: forward declaration of 'struct
MemoryRegion'
68 | typedef struct MemoryRegion MemoryRegion;
| ^
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
---
include/hw/char/avr_usart.h | 1 +
include/hw/misc/avr_power.h | 1 +
include/hw/timer/avr_timer16.h | 1 +
3 files changed, 3 insertions(+)
diff --git a/include/hw/char/avr_usart.h b/include/hw/char/avr_usart.h
index 0cc599e9b15..2d2fc0669f2 100644
--- a/include/hw/char/avr_usart.h
+++ b/include/hw/char/avr_usart.h
@@ -25,6 +25,7 @@
#include "hw/sysbus.h"
#include "chardev/char-fe.h"
#include "qom/object.h"
+#include "system/memory.h"
/* Offsets of registers. */
#define USART_DR 0x06
diff --git a/include/hw/misc/avr_power.h b/include/hw/misc/avr_power.h
index 388e421aa7b..a3d3d1de878 100644
--- a/include/hw/misc/avr_power.h
+++ b/include/hw/misc/avr_power.h
@@ -27,6 +27,7 @@
#include "hw/sysbus.h"
#include "qom/object.h"
+#include "system/memory.h"
#define TYPE_AVR_MASK "avr-power"
diff --git a/include/hw/timer/avr_timer16.h b/include/hw/timer/avr_timer16.h
index a1a032a24dc..c08288d6227 100644
--- a/include/hw/timer/avr_timer16.h
+++ b/include/hw/timer/avr_timer16.h
@@ -31,6 +31,7 @@
#include "hw/sysbus.h"
#include "qemu/timer.h"
#include "qom/object.h"
+#include "system/memory.h"
enum NextInterrupt {
OVERFLOW,
--
2.51.0