diff options
Diffstat (limited to 'hw/fw_cfg.h')
-rw-r--r-- | hw/fw_cfg.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/hw/fw_cfg.h b/hw/fw_cfg.h index 7070c94010..b06665e46c 100644 --- a/hw/fw_cfg.h +++ b/hw/fw_cfg.h @@ -37,14 +37,16 @@ #ifndef NO_QEMU_PROTOS typedef void (*FWCfgCallback)(void *opaque, uint8_t *data); -int fw_cfg_add_bytes(void *opaque, uint16_t key, uint8_t *data, uint32_t len); -int fw_cfg_add_i16(void *opaque, uint16_t key, uint16_t value); -int fw_cfg_add_i32(void *opaque, uint16_t key, uint32_t value); -int fw_cfg_add_i64(void *opaque, uint16_t key, uint64_t value); -int fw_cfg_add_callback(void *opaque, uint16_t key, FWCfgCallback callback, +typedef struct _FWCfgState FWCfgState; +int fw_cfg_add_bytes(FWCfgState *s, uint16_t key, uint8_t *data, uint32_t len); +int fw_cfg_add_i16(FWCfgState *s, uint16_t key, uint16_t value); +int fw_cfg_add_i32(FWCfgState *s, uint16_t key, uint32_t value); +int fw_cfg_add_i64(FWCfgState *s, uint16_t key, uint64_t value); +int fw_cfg_add_callback(FWCfgState *s, uint16_t key, FWCfgCallback callback, void *callback_opaque, uint8_t *data, size_t len); -void *fw_cfg_init(uint32_t ctl_port, uint32_t data_port, - target_phys_addr_t crl_addr, target_phys_addr_t data_addr); +int fw_cfg_add_file(FWCfgState *s, uint8_t type, uint8_t *data, uint32_t len); +FWCfgState *fw_cfg_init(uint32_t ctl_port, uint32_t data_port, + target_phys_addr_t crl_addr, target_phys_addr_t data_addr); #endif /* NO_QEMU_PROTOS */ |