fp@54: /****************************************************************************** fp@54: * fp@54: * Oeffentliche EtherCAT-Schnittstellen fuer EtherCAT-Geraetetreiber. fp@54: * fp@54: * $Id$ fp@54: * fp@54: *****************************************************************************/ fp@54: fp@54: #ifndef _ETHERCAT_DEVICE_H_ fp@54: #define _ETHERCAT_DEVICE_H_ fp@54: fp@54: #include fp@54: fp@54: /*****************************************************************************/ fp@54: fp@54: struct ec_device; fp@54: fp@54: typedef struct ec_device ec_device_t; fp@54: fp@54: /*****************************************************************************/ fp@54: fp@54: typedef enum fp@54: { fp@54: EC_DEVICE_STATE_READY, EC_DEVICE_STATE_SENT, EC_DEVICE_STATE_RECEIVED, fp@54: EC_DEVICE_STATE_TIMEOUT, EC_DEVICE_STATE_ERROR fp@54: } fp@54: ec_device_state_t; fp@54: fp@54: /*****************************************************************************/ fp@54: fp@54: ec_device_t *EtherCAT_dev_register(unsigned int, struct net_device *, fp@54: irqreturn_t (*)(int, void *, fp@54: struct pt_regs *), fp@54: struct module *); fp@54: void EtherCAT_dev_unregister(unsigned int); fp@54: int EtherCAT_dev_is_ec(ec_device_t *, struct net_device *); fp@54: void EtherCAT_dev_state(ec_device_t *, ec_device_state_t); fp@54: int EtherCAT_dev_receive(ec_device_t *, void *, unsigned int); fp@54: fp@54: /*****************************************************************************/ fp@54: fp@54: #endif