FarSync Drivers | ![]() |
![]() |
---|
The following are a prerequisite for the installation of the device driver and supporting software:
Kernel development system including:
C compiler
Make system
Patch utility
Reminder: For loadable module support on 2.4.x kernels you should have modutils 2.4.2 or better installed. As root you can use "insmod -V" to check.
The FarSync Flex drivers are not currently in the Kernel source tree and are only available for 2.6 Kernels, so must always built as external Kernel modules.
In general, the 2.6 Kernels supported are:
Note 1: For FarSync Flex support a Kernel version of 2.6.8 or later is required, the 2.4 Kernel is not supported.
Note 2: For FarSync T2Ue and FarSync T4Ue a Kernel version 2.6.12 is
required, the 2.4 Kernel is not supported.
Proceed to running the install script.
For 2.4 Kernels the farsync driver source is updated in the Kernel source tree. Therefore you will need a valid Kernel source tree for the Kernel that you are running. This would normally be in place under /usr/src and it is required that a the symbolic link /usr/src/linux should point to it. Please note that the FarSync Flex driver is not currently available for 2.4 Kernels.
Each distribution seems to have it's own methods of building Kernel Source, but the following method is the one that we use here at FarSite.
make dep make bzImage make modules make modules_install make install
See your system documentation for more information.
Change directory to the newly created source tree
# cd farsync-1.09.xx
The source tree will contain the following files and sub-directories:
install | The installation script |
uninstall | A script to uninstall the driver |
Readme | The Readme file |
COPYING | A copy of the GNU Public License |
common/ | Common files for the installation |
doc/ | Online documentation |
farnetd/ | Port monitoring utility |
includes/ | Include files for the drivers |
Kernel2.2/ | Support files and scripts for 2.2.x driver |
Kernel2.4/ | Support files and scripts for 2.4.x sync driver |
Kernel2.4-hdlc/ | Support files and scripts for 2.4.x hdlc driver |
Kernel2.4-oem/ | Support files and scripts for 2.4.x oem driver |
Kernel2.6/ | Support files and scripts for 2.6.x sync driver |
Kernel2.6-hdlc/ | Support files and scripts for 2.6.x hdlc driver |
Kernel2.6-oem/ | Support files and scripts for 2.6.x oem driver |
patch/ | various patch files |
As root, run the install script with the following command
# ./install oem
Use ./install rather than simply install so as not to confuse the command with any standard install command that may be present on the system.
The installation script will detect the Kernel version under /usr/src/linux and perform some other checks before installing the software.
The kernel configuration system may be patched to include support for the FarSync cards unless it already contains this support from a previous patch or as standard.
OEM driver source files farsync.c and farsync.h will be installed in /usr/src/linux/drivers/net/wan with any previous versions being backed up as farsync.c~ and farsync.h~
The support utilities will be added to /sbin and support files placed in /etc/farsite/farsync.
If no configuration files are present then example configuration files will be placed in
/etc/farsite/farsync/
(/etc/sysconfig/network-scripts on Red Hat like systems).
Post Install Actions
For 2.6 Kernels, the install script will build the farsync and fsflex modules as external Kernel modules. This release has removed the requirement for the syncppp module to be present as a module and therefore it is no longer a requirement to build it anymore.
The next step is to Start the Drivers.
We now need to rebuild the Kernel with the FarSync driver enabled in the Kernel configuration.
Make sure that you are root, and change directory
to /usr/src/linux. Configure the kernel using one of the following
make xconfig if your System supports X
make menuconfig if you have the curses library installed or
make config if you prefer.
You should have already tested the kernel configuration and build process
before installing the FarSite software
(see above).
Red Hat 7.1 users are reminded that they should perform a
make mrproper
the first time they build the kernel.
The Kernel configuration layout varies depending on the Kernel series that you are using, but the description below assumes that you are using a 2.6 Kernel series. The Kernel config layout may differ for the older 2.4 Kernels.
Make sure that PCI Support (CONFIG_PCI) is enabled in the Bus Options menu. This is the default on most systems.
Under the Device Driver->Network device support menu select the Wan interfaces menu and enable Wan interface support.
Then enable the Generic HDLC Layer. Under this section only enable all the Synchronous Point-to-point Protocol Support and the FarSync T-Series support in the same menu. You can select these as modules or to be compiled into the Kernel.
Save and exit the configuration system as normal.
Rebuild and Install Kernel
Now you should rebuild and install the new kernel as normal. On many systems
this can be performed with the following sequence of commands:
make dep
make bzImage
make modules
make modules_install
make install
If you elected to build the FarSync driver as a loadable module then you will need to setup identifying aliases in the modules configuration file. This is in /etc/modules.conf for 2.4 systems.
For the first port on each card add a line likealias syncX farsync
where X is the interface number 0, 1, 2... to the file. Note that if this is not done, then the card may not be loaded with firmware when the system boots.
When the Kernel build process is complete reboot into the Kernel you have just built.
The next step is to start the drivers. If you had to build the synppp module then load that module first if you did not update the /etc/init.d/farsync script to always load and unload it. You can manually load the module with the command
insmod syncppp.ko
and then start the drivers with the following command:
/etc/init.d/farsync start
If you have FarSync PCI cards installed, then you should see a message showing that the card is being loaded. For example
[root@odeon ~]# Loading T4U [root@odeon ~]# [root@odeon ~]#
And you can cat the /proc/farsync and /proc/fsflex files to check that the interfaces are running.
[root@odeon ~]# [root@odeon ~]# more /proc/farsync FarSync OEM Driver version 1.09.05 - Patch Level 00 - Build -b23 1 Cards found sync0-sync3:(W7418039) FarSync T4U IRQ5, 4 ports, State: Running Total number of ports = 4 [root@odeon ~]# [root@odeon ~]# more /proc/fsflex FarSync Flex OEM Driver version 1.09.05 - Patch Level 00 - Build -b23 2 Cards found sync4-sync4: FarSync Flex-1 (U0010063), 1 ports, State: Running sync5-sync5: FarSync Flex-1 (U0010096), 1 ports, State: Running Total number of ports = 2 [root@odeon ~]#
Port 0 configuration file required to trigger download
In order to avoid probing non-existent hardware the firmware download script
uses the presence of the configuration file for port zero as a marker to
trigger the attempted download of the card firmware. If this file is not
present then the card firmware will not be downloaded even if other ports on
the card are configured. In order to download card firmware where port zero
is not used simply create a dummy configuration file with the ONBOOT
parameter set to "no".
When using the OEM driver it is possible to request that all cards are
downloaded with firmware and started by created an empty file called
ifcfg-syncALL in the /etc/farsite/farsync directory.
Once the driver have been successfully started, the ports are available to
applications. If you have purchased the Software Developers Tool Kit (SDK)
then you can build and try out some of the example applications. Most of
them a written to work on two ports that are looped back to each other (using a
NULL modem cable for example). The SDK also contains a comprehensive API
manual.
As the system boots look for and check the farsync and fsflex driver startup messages which should look something like this:
FarSync OEM driver 1.09.05-00-32bit-b21 (c) 2001-2009 FarSite Communications Ltd. sync0-sync3: (W7870001) FarSync T4U IRQ5, 4 ports fst: fst_min_dma_len set to 0 fst: fst_dmathr set to dd00dd00 fst: fst_iocinfo_version set to 1 fst: Initialising flex tty driver Flex USB OEM driver 1.09.05-00-32bit-b21 (c) 2009 FarSite Communications Ltd. sync4-sync4: (U0010063) FarSync Flex-1, 1 ports USB flex device now attached to Minor 0 sync5-sync5: (U0010096) FarSync Flex-1, 1 ports USB flex device now attached to Minor 1
You can confirm that the drivers have found all the FarSync devices and check the card serial numbers by looking in the /proc/farsync and /proc/fsflex files as detailed above.
Copyright 2001-2010 FarSite Communications Ltd. |
![]() |
---|