equal
deleted
inserted
replaced
|
1 #!/bin/sh |
|
2 ############################################################################### |
|
3 # |
|
4 # Shell-Script zum Laden des EtherCAT-Masters |
|
5 # |
|
6 # $Id$ |
|
7 # |
|
8 ############################################################################### |
|
9 |
|
10 remove_module() |
|
11 { |
|
12 if lsmod | grep ^$1 > /dev/null |
|
13 then |
|
14 echo "Entlade Modul \"$1\"..." |
|
15 rmmod $1 || exit -1 |
|
16 fi |
|
17 } |
|
18 |
|
19 copy_to_tmp() |
|
20 { |
|
21 if ! cp $1 /tmp/ |
|
22 then |
|
23 echo "Fehler beim Kopieren von $1 nach /tmp..." |
|
24 exit -1 |
|
25 fi |
|
26 } |
|
27 |
|
28 insert_module() |
|
29 { |
|
30 name=`basename $1` |
|
31 echo "Lade Modul \"$name\"..." |
|
32 if ! insmod $* |
|
33 then |
|
34 echo "Fehler beim Laden!" |
|
35 exit -1 |
|
36 fi |
|
37 } |
|
38 |
|
39 # Parameter abfragen |
|
40 if [ $# -eq 0 ] |
|
41 then |
|
42 echo "$0: Parameter <ec_device_index> fehlt!" |
|
43 exit 1 |
|
44 fi |
|
45 |
|
46 echo "Lade EtherCAT..." |
|
47 |
|
48 # Aktuelle Versionen nach /tmp kopieren... |
|
49 copy_to_tmp master/ec_master.ko |
|
50 copy_to_tmp devices/ec_8139too.ko |
|
51 |
|
52 # Module entfernen... |
|
53 remove_module 8139too |
|
54 remove_module 8139cp |
|
55 remove_module ec_8139too |
|
56 remove_module ec_master |
|
57 |
|
58 # Neue Versionen laden |
|
59 insert_module /tmp/ec_master.ko |
|
60 insert_module /tmp/ec_8139too.ko ec_device_index=$1 |
|
61 |
|
62 echo "EtherCAT neu geladen." |
|
63 |
|
64 exit 0 |