diff --git a/hw/fw_cfg.h b/hw/fw_cfg.h
index a63f54f..c1019d0 100644
--- a/hw/fw_cfg.h
+++ b/hw/fw_cfg.h
@@ -38,6 +38,7 @@
 
 #define FW_CFG_INVALID          0xffff
 
+#ifndef NO_QEMU_PROTOS
 typedef struct FWCfgFile {
     uint32_t  size;        /* file size */
     uint16_t  select;      /* write this to 0x510 to read it */
@@ -50,7 +51,6 @@ typedef struct FWCfgFiles {
     FWCfgFile f[];
 } FWCfgFiles;
 
-#ifndef NO_QEMU_PROTOS
 typedef void (*FWCfgCallback)(void *opaque, uint8_t *data);
 
 typedef struct _FWCfgState FWCfgState;
