From d773dcfb57ed3e51dd386a85548ee7299d8cc0e7 Mon Sep 17 00:00:00 2001 From: Todd Fujinaka Date: Mon, 22 Jun 2015 08:32:49 -0700 Subject: igb-avb: add igb/igb_avb coexistence to README Add a method of having both the igb and igb_avb kernel modules at the same time. --- kmod/igb/README | 49 +++++++++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/kmod/igb/README b/kmod/igb/README index a465784f..c08ff5d4 100644 --- a/kmod/igb/README +++ b/kmod/igb/README @@ -1,15 +1,15 @@ INTRODUCTION -This component demonstrates various features of the Intel I210 Ethernet -controller. These features can be used for developing Audio/Video Bridging -applications, Industrial Ethernet applications which require precise timing -control over frame transmission, or test harnesses for measuring system +This component demonstrates various features of the Intel I210 Ethernet +controller. These features can be used for developing Audio/Video Bridging +applications, Industrial Ethernet applications which require precise timing +control over frame transmission, or test harnesses for measuring system latencies and sampling events. -This component - igb_avb - is limited to the Intel I210 Ethernet controller. -The kernel module can be loaded in parallel to existing in-kernel igb modules -which may be used on other supported Intel LAN controllers. Modifications are -required to the in-kernel drivers if the existing in-kernel igb driver has +This component - igb_avb - is limited to the Intel I210 Ethernet controller. +The kernel module can be loaded in parallel to existing in-kernel igb modules +which may be used on other supported Intel LAN controllers. Modifications are +required to the in-kernel drivers if the existing in-kernel igb driver has support for the Intel I210. BUILDING @@ -21,20 +21,25 @@ PTP by default (and will fail to build without kernel PTP support enabled). RUNNING To install the kernel mode driver, you must have root permissions. Typically, -the driver is loaded by: +the driver is loaded by removing the currently running igb and running igb_avb: + sudo rmmod igb sudo modprobe i2c_algo_bit sudo modprobe dca sudo modprobe ptp sudo insmod ./igb_avb.ko -As 3.4 and later kernels include support for the I210, you may need to 'rmmod -igb' before loading the igb_avb module. +Another option is to install the igb_avb driver in the "updates" directory +which will override igb for the other drivers claiming the same device ID. This +will allow the coexistence of igb and igb_avb. Copy igb_avb.ko to: + sudo cp igb_avb.ko /lib/modules/`uname -r`/updates/ + sudo depmod -a + modprobe igb_avb -As the AVB Transmit queues (0,1) are mapped to a user-space application, typical -LAN traffic must be steered away from these queues. The driver implements one -method registering an ndo_select_queue handler to map traffic to queue[3]. -Another possibly faster method uses the the transmit packet steering (XPS) -functionality available since 2.6.35. An example script is below +As the AVB Transmit queues (0,1) are mapped to a user-space application, +typical LAN traffic must be steered away from these queues. The driver +implements one method registering an ndo_select_queue handler to map traffic to +queue[3]. Another possibly faster method uses the the transmit packet steering +(XPS) functionality available since 2.6.35. An example script is below #!/bin/bash @@ -52,9 +57,9 @@ echo f > /sys/class/net/$INTERFACE/queues/tx-2/xps_cpus echo f > /sys/class/net/$INTERFACE/queues/tx-3/xps_cpus ifconfig $INTERFACE up -You map also want to disable the network manager from 'managing' your interface. -The easiest way is to find the interface configuration scripts on your distribution. -On Fedora 18, these are located at /etc/sysconfig/network-scripts/ifcfg-. -Edit the file to set 'BOOTPROTO=none'. This eliminates DHCP trying to configure the -interface while you may be doing user-space application configuration. - +You map also want to disable the network manager from 'managing' your +interface. The easiest way is to find the interface configuration scripts on +your distribution. On Fedora 18, these are located at +/etc/sysconfig/network-scripts/ifcfg-. Edit the file to set +'BOOTPROTO=none'. This eliminates DHCP trying to configure the interface while +you may be doing user-space application configuration. -- cgit v1.2.1