ec_reload.sh
changeset 172 e84c21548a8d
parent 171 faa7d433239c
child 173 10e182a8bc4e
equal deleted inserted replaced
171:faa7d433239c 172:e84c21548a8d
     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 ###############################################################################
       
    40 
       
    41 # Parameter abfragen
       
    42 if [ $# -eq 0 ]
       
    43 then
       
    44 echo "$0: Parameter <ec_device_index> fehlt!"
       
    45 exit 1
       
    46 fi
       
    47 
       
    48 echo "Lade EtherCAT..."
       
    49 
       
    50 # Aktuelle Versionen nach /tmp kopieren...
       
    51 copy_to_tmp master/ec_master.ko
       
    52 copy_to_tmp devices/ec_8139too.ko
       
    53 
       
    54 # Module entfernen...
       
    55 remove_module 8139too
       
    56 remove_module 8139cp
       
    57 remove_module ec_8139too
       
    58 remove_module ec_master
       
    59 
       
    60 # Neue Versionen laden
       
    61 insert_module /tmp/ec_master.ko
       
    62 insert_module /tmp/ec_8139too.ko ec_device_index=$1
       
    63 
       
    64 echo "EtherCAT neu geladen."
       
    65 exit 0
       
    66 
       
    67 ###############################################################################