master/ethernet.h
author Florian Pose <fp@igh-essen.com>
Thu, 20 Apr 2006 14:34:58 +0000
changeset 196 f8a1e9f364a3
parent 195 674071846ee3
child 197 b9a6e2c22745
child 1618 5cff10efb927
permissions -rw-r--r--
Introduced version number define.
/******************************************************************************
 *
 *  e t h e r n e t . h
 *
 *  Ethernet-over-EtherCAT (EoE)
 *
 *  $Id$
 *
 *****************************************************************************/

#include <linux/list.h>

#include "../include/ecrt.h"
#include "globals.h"
#include "slave.h"
#include "command.h"

/*****************************************************************************/

typedef enum
{
    EC_EOE_IDLE,
    EC_EOE_CHECKING,
    EC_EOE_FETCHING
}
ec_eoe_state_t;

/*****************************************************************************/

typedef struct
{
    struct list_head list;
    ec_slave_t *slave;
    ec_eoe_state_t rx_state;
}
ec_eoe_t;

/*****************************************************************************/

void ec_eoe_init(ec_eoe_t *, ec_slave_t *);
void ec_eoe_clear(ec_eoe_t *);
void ec_eoe_run(ec_eoe_t *);
void ec_eoe_print(const ec_eoe_t *);

/*****************************************************************************/