driver_vms.h 727 Bytes
/*
 *  driver_vms.h, memory structure for CS driver
 *
 *
 *
 */

#ifndef DRIVER_INCLUDE
#define DRIVER_INCLUDE

#include "ints.h"


/*
 *  DMA states
 */

typedef enum {
  WAIT,
  OUTPUT_WORD,
  DELAY1,
  DELAY2
} DmaStates;
 

typedef struct {
  /* required */
  char *label;
  int clk_old;
  int argc;
  char **argv;

  /* input */
  int request;
  int clk;
  int reset;

  /* output */
  int64  xbus_cs_data;
  int    xbus_cs_valid;
  int    exit;
  int    flush;

  /* intermediate regs */
  int state;
  int count;
  int reset_negedge;

} driver_vms_t;


/*
 *  Prototypes
 */
void driver_vms(driver_vms_t **pp0, driver_vms_t **pp1);
void driver_vms_init(driver_vms_t *p0, driver_vms_t *p1);

#endif /* DRIVER_INCLUDE */