# HG changeset patch # User Florian Pose # Date 1187618669 0 # Node ID daaa2e8ae232013989ca055af55555998a891d5e # Parent bc985819713ae9455df97ee8778da5aabfc10327 Added EoE helpers. diff -r bc985819713a -r daaa2e8ae232 README.EoE --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.EoE Mon Aug 20 14:04:29 2007 +0000 @@ -0,0 +1,24 @@ +------------------------------------------------------------------------------- + +$Id$ + +This file shall give additional information on how to set up a network +environment with Ethernet-over-EtherCAT devices. + +A virtual network interface will appear for every EoE-capable slave. The +interface naming scheme is eoeXsY, where X is the master index and Y is the +slave's ring position. Please provide a network configuration file for any of +these interfaces. On SUSE systems, these can look like the following: + +/etc/sysconfig/network/ifcfg-eoe0s14: +IPADDRESS=10.0.0.14/8 +STARTMODE=auto + +This will tell the ifupd to configure and open the device after it appears. + +If the interfaces shall be part of a network bridge, the IPADDRESS line is not +necessary. Instead, copy the file script/ifup-eoe.sh to your systems if-up.d +directory (on SUSE, this is /etc/sysconfig/network/if-up.d), and customize the +included variables. + +------------------------------------------------------------------------------- diff -r bc985819713a -r daaa2e8ae232 script/Makefile.am --- a/script/Makefile.am Tue Aug 14 14:00:07 2007 +0000 +++ b/script/Makefile.am Mon Aug 20 14:04:29 2007 +0000 @@ -39,6 +39,6 @@ bin_SCRIPTS = lsec -EXTRA_DIST = lsec +EXTRA_DIST = lsec ifup-eoe.sh #------------------------------------------------------------------------------ diff -r bc985819713a -r daaa2e8ae232 script/ifup-eoe.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/script/ifup-eoe.sh Mon Aug 20 14:04:29 2007 +0000 @@ -0,0 +1,64 @@ +#!/bin/bash + +#------------------------------------------------------------------------------ +# +# $Id$ +# +# Copyright (C) 2006 Florian Pose, Ingenieurgemeinschaft IgH +# +# This file is part of the IgH EtherCAT Master. +# +# The IgH EtherCAT Master is free software; you can redistribute it +# and/or modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# The IgH EtherCAT Master is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with the IgH EtherCAT Master; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# +# The right to use EtherCAT Technology is granted and comes free of +# charge under condition of compatibility of product made by +# Licensee. People intending to distribute/sell products based on the +# code, have to sign an agreement to guarantee that products using +# software based on IgH EtherCAT master stay compatible with the actual +# EtherCAT specification (which are released themselves as an open +# standard) as the (only) precondition to have the right to use EtherCAT +# Technology, IP and trade marks. +# +#------------------------------------------------------------------------------ + +# this ifup.d script adds special network interfaces to a network bridge + +CFGNAME=${1} +IFNAME=${2} + +# customize here +BRNAME="eoebr0" +INTERFACES="" +BRCTL="/sbin/brctl" +LOGGER="logger -t ifup-eoe" + +# if the current interface in the list of interfaces to bridge? +if ! echo ${INTERFACES} | grep -qw ${IFNAME}; then + exit 0; +fi + +# does the EoE bridge already exist? +if ! ${BRCTL} show | grep -q "^${BRNAME}"; then + ${LOGGER} Creating ${BRNAME} + ${BRCTL} addbr ${BRNAME} # create it +fi + +${LOGGER} Adding ${IFNAME} to ${BRNAME} +ip link set ${IFNAME} down +ip addr flush dev ${IFNAME} +${BRCTL} addif ${BRNAME} ${IFNAME} +ip link set ${IFNAME} up + +#------------------------------------------------------------------------------