equal
deleted
inserted
replaced
3 * d o m a i n . h |
3 * d o m a i n . h |
4 * |
4 * |
5 * EtherCAT domain structure. |
5 * EtherCAT domain structure. |
6 * |
6 * |
7 * $Id$ |
7 * $Id$ |
|
8 * |
|
9 * Copyright (C) 2006 Florian Pose, Ingenieurgemeinschaft IgH |
|
10 * |
|
11 * This file is part of the IgH EtherCAT Master. |
|
12 * |
|
13 * The IgH EtherCAT Master is free software; you can redistribute it |
|
14 * and/or modify it under the terms of the GNU General Public License |
|
15 * as published by the Free Software Foundation; version 2 of the License. |
|
16 * |
|
17 * The IgH EtherCAT Master is distributed in the hope that it will be |
|
18 * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
20 * GNU General Public License for more details. |
|
21 * |
|
22 * You should have received a copy of the GNU General Public License |
|
23 * 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 |
8 * |
25 * |
9 *****************************************************************************/ |
26 *****************************************************************************/ |
10 |
27 |
11 #ifndef _EC_DOMAIN_H_ |
28 #ifndef _EC_DOMAIN_H_ |
12 #define _EC_DOMAIN_H_ |
29 #define _EC_DOMAIN_H_ |
15 #include <linux/kobject.h> |
32 #include <linux/kobject.h> |
16 |
33 |
17 #include "globals.h" |
34 #include "globals.h" |
18 #include "slave.h" |
35 #include "slave.h" |
19 #include "command.h" |
36 #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 */ |
20 |
46 |
21 /*****************************************************************************/ |
47 /*****************************************************************************/ |
22 |
48 |
23 /** |
49 /** |
24 Data field registration type. |
50 Data field registration type. |
53 uint32_t base_address; /**< logical offset address of the process data */ |
79 uint32_t base_address; /**< logical offset address of the process data */ |
54 unsigned int response_count; /**< number of responding slaves */ |
80 unsigned int response_count; /**< number of responding slaves */ |
55 struct list_head field_regs; /**< data field registrations */ |
81 struct list_head field_regs; /**< data field registrations */ |
56 }; |
82 }; |
57 |
83 |
|
84 /** \} */ |
|
85 |
58 /*****************************************************************************/ |
86 /*****************************************************************************/ |
59 |
87 |
60 int ec_domain_init(ec_domain_t *, ec_master_t *, unsigned int); |
88 int ec_domain_init(ec_domain_t *, ec_master_t *, unsigned int); |
61 void ec_domain_clear(struct kobject *); |
89 void ec_domain_clear(struct kobject *); |
62 int ec_domain_alloc(ec_domain_t *, uint32_t); |
90 int ec_domain_alloc(ec_domain_t *, uint32_t); |