43 lines
720 B
C
43 lines
720 B
C
#ifndef __LIBDEVICE_H__
|
|
#define __LIBDEVICE_H__
|
|
|
|
#include <stdint.h>
|
|
#include "mem.h"
|
|
|
|
#define SMART_ADDR_TYPE_GLOBAL 1
|
|
#define SMART_ADDR_TYPE_SEGMENTED 2
|
|
|
|
#define EXTENDED_DEVICE_TYPE_DUMMY 0
|
|
#define EXTENDED_DEVICE_TYPE_INSTR_SIMUL 1
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint64_t addr;
|
|
uint8_t segno;
|
|
uint64_t localAddr;
|
|
uint8_t addrType;
|
|
mem_h_read_func* handler;
|
|
uint64_t ident;
|
|
} smart_read_spec_t;
|
|
|
|
typedef struct
|
|
{
|
|
uint64_t addr;
|
|
uint8_t segno;
|
|
uint64_t localAddr;
|
|
uint8_t addrType;
|
|
mem_h_write_func handler;
|
|
uint64_t ident;
|
|
} smart_write_spec_t;
|
|
|
|
typedef struct {
|
|
device_mem_t* deviceMem;
|
|
void* deviceInfo;
|
|
} device_public_context_t;
|
|
|
|
|
|
|
|
#endif // ifndef __LIBDEVICE_H__
|
|
|