Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
E
etherlabmaster
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Jira
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
ICS Control System Infrastructure
etherlabmaster
Commits
18d3ac10
Commit
18d3ac10
authored
18 years ago
by
Florian Pose
Browse files
Options
Downloads
Patches
Plain Diff
Removed XML device from master structure.
parent
f9293318
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
master/master.c
+1
-11
1 addition, 11 deletions
master/master.c
master/master.h
+1
-4
1 addition, 4 deletions
master/master.h
master/module.c
+4
-2
4 additions, 2 deletions
master/module.c
with
6 additions
and
17 deletions
master/master.c
+
1
−
11
View file @
18d3ac10
...
@@ -102,8 +102,7 @@ static struct kobj_type ktype_ec_master = {
...
@@ -102,8 +102,7 @@ static struct kobj_type ktype_ec_master = {
int
ec_master_init
(
ec_master_t
*
master
,
/**< EtherCAT master */
int
ec_master_init
(
ec_master_t
*
master
,
/**< EtherCAT master */
unsigned
int
index
,
/**< master index */
unsigned
int
index
,
/**< master index */
unsigned
int
eoeif_count
,
/**< number of EoE interfaces */
unsigned
int
eoeif_count
/**< number of EoE interfaces */
dev_t
dev_num
/**< number for XML cdev's */
)
)
{
{
ec_eoe_t
*
eoe
,
*
next_eoe
;
ec_eoe_t
*
eoe
,
*
next_eoe
;
...
@@ -164,12 +163,6 @@ int ec_master_init(ec_master_t *master, /**< EtherCAT master */
...
@@ -164,12 +163,6 @@ int ec_master_init(ec_master_t *master, /**< EtherCAT master */
master
->
sdo_timer
.
data
=
(
unsigned
long
)
master
;
master
->
sdo_timer
.
data
=
(
unsigned
long
)
master
;
init_completion
(
&
master
->
sdo_complete
);
init_completion
(
&
master
->
sdo_complete
);
// init XML character device
if
(
ec_xmldev_init
(
&
master
->
xmldev
,
master
,
dev_num
))
{
EC_ERR
(
"Failed to init XML character device.
\n
"
);
goto
out_return
;
}
// create EoE handlers
// create EoE handlers
for
(
i
=
0
;
i
<
eoeif_count
;
i
++
)
{
for
(
i
=
0
;
i
<
eoeif_count
;
i
++
)
{
if
(
!
(
eoe
=
(
ec_eoe_t
*
)
kmalloc
(
sizeof
(
ec_eoe_t
),
GFP_KERNEL
)))
{
if
(
!
(
eoe
=
(
ec_eoe_t
*
)
kmalloc
(
sizeof
(
ec_eoe_t
),
GFP_KERNEL
)))
{
...
@@ -216,8 +209,6 @@ out_clear_eoe:
...
@@ -216,8 +209,6 @@ out_clear_eoe:
ec_eoe_clear
(
eoe
);
ec_eoe_clear
(
eoe
);
kfree
(
eoe
);
kfree
(
eoe
);
}
}
ec_xmldev_clear
(
&
master
->
xmldev
);
out_return:
return
-
1
;
return
-
1
;
}
}
...
@@ -261,7 +252,6 @@ void ec_master_clear(struct kobject *kobj /**< kobject of the master */)
...
@@ -261,7 +252,6 @@ void ec_master_clear(struct kobject *kobj /**< kobject of the master */)
ec_fsm_master_clear
(
&
master
->
fsm
);
ec_fsm_master_clear
(
&
master
->
fsm
);
ec_datagram_clear
(
&
master
->
fsm_datagram
);
ec_datagram_clear
(
&
master
->
fsm_datagram
);
ec_xmldev_clear
(
&
master
->
xmldev
);
// clear EoE objects
// clear EoE objects
list_for_each_entry_safe
(
eoe
,
next_eoe
,
&
master
->
eoe_handlers
,
list
)
{
list_for_each_entry_safe
(
eoe
,
next_eoe
,
&
master
->
eoe_handlers
,
list
)
{
...
...
This diff is collapsed.
Click to expand it.
master/master.h
+
1
−
4
View file @
18d3ac10
...
@@ -49,7 +49,6 @@
...
@@ -49,7 +49,6 @@
#include
"device.h"
#include
"device.h"
#include
"domain.h"
#include
"domain.h"
#include
"xmldev.h"
#include
"fsm_master.h"
#include
"fsm_master.h"
/*****************************************************************************/
/*****************************************************************************/
...
@@ -102,8 +101,6 @@ struct ec_master
...
@@ -102,8 +101,6 @@ struct ec_master
ec_device_t
*
device
;
/**< EtherCAT device */
ec_device_t
*
device
;
/**< EtherCAT device */
struct
semaphore
device_sem
;
/**< device semaphore */
struct
semaphore
device_sem
;
/**< device semaphore */
ec_xmldev_t
xmldev
;
/**< XML character device */
ec_fsm_master_t
fsm
;
/**< master state machine */
ec_fsm_master_t
fsm
;
/**< master state machine */
ec_datagram_t
fsm_datagram
;
/**< datagram used for state machines */
ec_datagram_t
fsm_datagram
;
/**< datagram used for state machines */
ec_master_mode_t
mode
;
/**< master mode */
ec_master_mode_t
mode
;
/**< master mode */
...
@@ -150,7 +147,7 @@ struct ec_master
...
@@ -150,7 +147,7 @@ struct ec_master
/*****************************************************************************/
/*****************************************************************************/
// master creation/deletion
// master creation/deletion
int
ec_master_init
(
ec_master_t
*
,
unsigned
int
,
unsigned
int
,
dev_t
);
int
ec_master_init
(
ec_master_t
*
,
unsigned
int
,
unsigned
int
);
void
ec_master_destroy
(
ec_master_t
*
);
void
ec_master_destroy
(
ec_master_t
*
);
// mode transitions
// mode transitions
...
...
This diff is collapsed.
Click to expand it.
master/module.c
+
4
−
2
View file @
18d3ac10
...
@@ -45,6 +45,7 @@
...
@@ -45,6 +45,7 @@
#include
"globals.h"
#include
"globals.h"
#include
"master.h"
#include
"master.h"
#include
"device.h"
#include
"device.h"
#include
"xmldev.h"
/*****************************************************************************/
/*****************************************************************************/
...
@@ -56,7 +57,8 @@ void __exit ec_cleanup_module(void);
...
@@ -56,7 +57,8 @@ void __exit ec_cleanup_module(void);
static
int
ec_master_count
=
1
;
/**< parameter value, number of masters */
static
int
ec_master_count
=
1
;
/**< parameter value, number of masters */
static
int
ec_eoeif_count
=
0
;
/**< parameter value, number of EoE interf. */
static
int
ec_eoeif_count
=
0
;
/**< parameter value, number of EoE interf. */
static
struct
list_head
ec_masters
;
/**< list of masters */
static
struct
list_head
ec_masters
;
/**< list of masters */
static
dev_t
device_number
;
static
dev_t
device_number
;
/**< XML character device number */
ec_xmldev_t
xmldev
;
/**< XML character device */
char
*
ec_master_version_str
=
EC_MASTER_VERSION
;
char
*
ec_master_version_str
=
EC_MASTER_VERSION
;
...
@@ -112,7 +114,7 @@ int __init ec_init_module(void)
...
@@ -112,7 +114,7 @@ int __init ec_init_module(void)
goto
out_free
;
goto
out_free
;
}
}
if
(
ec_master_init
(
master
,
i
,
ec_eoeif_count
,
device_number
))
if
(
ec_master_init
(
master
,
i
,
ec_eoeif_count
))
goto
out_free
;
goto
out_free
;
list_add_tail
(
&
master
->
list
,
&
ec_masters
);
list_add_tail
(
&
master
->
list
,
&
ec_masters
);
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment