symbian-qemu-0.9.1-12/qemu-symbian-svp/hw/fw_cfg.h
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 #ifndef FW_CFG_H
       
     2 #define FW_CFG_H
       
     3 
       
     4 #define FW_CFG_SIGNATURE        0x00
       
     5 #define FW_CFG_ID               0x01
       
     6 #define FW_CFG_UUID             0x02
       
     7 #define FW_CFG_RAM_SIZE         0x03
       
     8 #define FW_CFG_NOGRAPHIC        0x04
       
     9 #define FW_CFG_NB_CPUS          0x05
       
    10 #define FW_CFG_MACHINE_ID       0x06
       
    11 #define FW_CFG_MAX_ENTRY        0x10
       
    12 
       
    13 #define FW_CFG_WRITE_CHANNEL    0x4000
       
    14 #define FW_CFG_ARCH_LOCAL       0x8000
       
    15 #define FW_CFG_ENTRY_MASK       ~(FW_CFG_WRITE_CHANNEL | FW_CFG_ARCH_LOCAL)
       
    16 
       
    17 #define FW_CFG_INVALID          0xffff
       
    18 
       
    19 #ifndef NO_QEMU_PROTOS
       
    20 typedef void (*FWCfgCallback)(void *opaque, uint8_t *data);
       
    21 
       
    22 int fw_cfg_add_bytes(void *opaque, uint16_t key, uint8_t *data, uint16_t len);
       
    23 int fw_cfg_add_i16(void *opaque, uint16_t key, uint16_t value);
       
    24 int fw_cfg_add_i32(void *opaque, uint16_t key, uint32_t value);
       
    25 int fw_cfg_add_i64(void *opaque, uint16_t key, uint64_t value);
       
    26 int fw_cfg_add_callback(void *opaque, uint16_t key, FWCfgCallback callback,
       
    27                         void *callback_opaque, uint8_t *data, size_t len);
       
    28 void *fw_cfg_init(uint32_t ctl_port, uint32_t data_port,
       
    29 		target_phys_addr_t crl_addr, target_phys_addr_t data_addr);
       
    30 
       
    31 #endif /* NO_QEMU_PROTOS */
       
    32 
       
    33 #endif