equal
deleted
inserted
replaced
1 /****************************************************************************** |
1 /****************************************************************************** |
2 * |
|
3 * d o m a i n . h |
|
4 * |
|
5 * EtherCAT domain structure. |
|
6 * |
2 * |
7 * $Id$ |
3 * $Id$ |
8 * |
4 * |
9 * Copyright (C) 2006 Florian Pose, Ingenieurgemeinschaft IgH |
5 * Copyright (C) 2006 Florian Pose, Ingenieurgemeinschaft IgH |
10 * |
6 * |
23 * along with the IgH EtherCAT Master; if not, write to the Free Software |
19 * along with the IgH EtherCAT Master; if not, write to the Free Software |
24 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
25 * |
21 * |
26 *****************************************************************************/ |
22 *****************************************************************************/ |
27 |
23 |
|
24 /** |
|
25 \file |
|
26 EtherCAT domain structure. |
|
27 */ |
|
28 |
|
29 /*****************************************************************************/ |
|
30 |
28 #ifndef _EC_DOMAIN_H_ |
31 #ifndef _EC_DOMAIN_H_ |
29 #define _EC_DOMAIN_H_ |
32 #define _EC_DOMAIN_H_ |
30 |
33 |
31 #include <linux/list.h> |
34 #include <linux/list.h> |
32 #include <linux/kobject.h> |
35 #include <linux/kobject.h> |
33 |
36 |
34 #include "globals.h" |
37 #include "globals.h" |
35 #include "slave.h" |
38 #include "slave.h" |
36 #include "command.h" |
39 #include "command.h" |
37 |
|
38 /*****************************************************************************/ |
|
39 |
|
40 /** |
|
41 \defgroup Domain EtherCAT domain |
|
42 Data types and methods for EtherCAT domains. |
|
43 A domain handles process data IO with a group of slaves. |
|
44 \{ |
|
45 */ |
|
46 |
40 |
47 /*****************************************************************************/ |
41 /*****************************************************************************/ |
48 |
42 |
49 /** |
43 /** |
50 Data field registration type. |
44 Data field registration type. |
79 uint32_t base_address; /**< logical offset address of the process data */ |
73 uint32_t base_address; /**< logical offset address of the process data */ |
80 unsigned int response_count; /**< number of responding slaves */ |
74 unsigned int response_count; /**< number of responding slaves */ |
81 struct list_head field_regs; /**< data field registrations */ |
75 struct list_head field_regs; /**< data field registrations */ |
82 }; |
76 }; |
83 |
77 |
84 /** \} */ |
|
85 |
|
86 /*****************************************************************************/ |
78 /*****************************************************************************/ |
87 |
79 |
88 int ec_domain_init(ec_domain_t *, ec_master_t *, unsigned int); |
80 int ec_domain_init(ec_domain_t *, ec_master_t *, unsigned int); |
89 void ec_domain_clear(struct kobject *); |
81 void ec_domain_clear(struct kobject *); |
90 int ec_domain_alloc(ec_domain_t *, uint32_t); |
82 int ec_domain_alloc(ec_domain_t *, uint32_t); |