1237 the generic driver, because the network stack code uses dynamic memory |
1237 the generic driver, because the network stack code uses dynamic memory |
1238 allocations and other things, that could cause the system to freeze in |
1238 allocations and other things, that could cause the system to freeze in |
1239 realtime context. |
1239 realtime context. |
1240 \end{itemize} |
1240 \end{itemize} |
1241 |
1241 |
|
1242 \paragraph{Device Activation} In order to send and receive frames through a |
|
1243 socket, the Ethernet device linked to that socket has to be activated, |
|
1244 otherwise all frames will be rejected. Activation has to take place before the |
|
1245 master module is loaded and can happen in several ways: |
|
1246 |
|
1247 \begin{itemize} |
|
1248 |
|
1249 \item Ad-hoc, using the command \lstinline+ip link set dev ethX up+ (or the |
|
1250 older \lstinline+ifconfig ethX up+), |
|
1251 |
|
1252 \item Configured, depending on the distribution, for example using |
|
1253 \lstinline+ifcfg+ files (\lstinline+/etc/sysconfig/network/ifcfg-ethX+) in |
|
1254 openSUSE and others. This is the better choice, if the EtherCAT master shall |
|
1255 start at system boot time. Since the Ethernet device shall only be activated, |
|
1256 but no IP address etc.\ shall be assigned, it is enough to use |
|
1257 \lstinline+STARTMODE=auto+ as configuration. |
|
1258 |
|
1259 \end{itemize} |
|
1260 |
1242 %------------------------------------------------------------------------------ |
1261 %------------------------------------------------------------------------------ |
1243 |
1262 |
1244 \section{Providing Ethernet Devices} |
1263 \section{Providing Ethernet Devices} |
1245 \label{sec:providing-devices} |
1264 \label{sec:providing-devices} |
1246 |
1265 |