File:  [Qemu by Fabrice Bellard] / qemu / rwhandler.h
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 18:33:31 2018 UTC (3 years, 1 month ago) by root
Branches: qemu, MAIN
CVS tags: qemu1000, qemu0151, qemu0150, qemu0141, qemu0140, HEAD
qemu 0.14.0

    1: #ifndef READ_WRITE_HANDLER_H
    2: #define READ_WRITE_HANDLER_H
    3: 
    4: #include "qemu-common.h"
    5: #include "ioport.h"
    6: 
    7: typedef struct ReadWriteHandler ReadWriteHandler;
    8: 
    9: /* len is guaranteed to be one of 1, 2 or 4, addr is guaranteed to fit in an
   10:  * appropriate type (io/memory/etc). They do not need to be range checked. */
   11: typedef void WriteHandlerFunc(ReadWriteHandler *, pcibus_t addr,
   12:                               uint32_t value, int len);
   13: typedef uint32_t ReadHandlerFunc(ReadWriteHandler *, pcibus_t addr, int len);
   14: 
   15: struct ReadWriteHandler {
   16:     WriteHandlerFunc *write;
   17:     ReadHandlerFunc *read;
   18: };
   19: 
   20: /* Helpers for when we want to use a single routine with length. */
   21: /* CPU memory handler: both read and write must be present. */
   22: int cpu_register_io_memory_simple(ReadWriteHandler *, int endian);
   23: /* io port handler: can supply only read or write handlers. */
   24: int register_ioport_simple(ReadWriteHandler *,
   25:                            pio_addr_t start, int length, int size);
   26: 
   27: #endif

unix.superglobalmegacorp.com