![]() |
VME in CMS |
Printable (html) Printable (pdf) |
|
Drivers for the SBS VME bridgeSBS has officially released a driver version v2p3p0 which has been desinged for linux kernels 2.4.x. (Can be obtained from http://www.sbs.com). This driver compiles and installs without problems on a CERN-Linux-Redhat-7.3.4 machine which has the kernel sources installed. (A small bug in the mkbtp script has been removed for the CMS version below). It also compiles and installs on CERN Linux SLC302 and SLC303 machines. HOWEVERthere is an issue for SLC303 machines (kernel 2.4.21-20.EL.cern and the corresponding smp version). On these kernels BusErrors get losts (the software continues as if the access with the BusError was successfull. In case of a read access arbitrary data is delivered to the user.) The reason for this behaviour and a work around has been found by Evgueni Vlassov:
A feature of the original SBS driver was that certain functions (those of the so called nano bus API) where not correctly declared as extern "C" if compiled with C++. This excluded the use of these functions in the HAL since the linker did not find the functions due to incorrect name mangling. As a consequence it was not possible to use the bt_reset() function in order to reset the VME bus. This has been corrected in the latest CMS-version fo the driver. Latest version for CMS:v2p3p0_CMS-01This version is based on the SBS version v2p3p0. It compiles without problems on CERN Linux 7.3.4. The btpapi.h had to be modified so that the bt_reset() function can be called from C++ programs. It works with HAL versions ver-03-04 and higher. Earlier versions have to adjust the path to the SBS driver by hand (in Makefile.in) since the v2p3p0 subdirectory is not recognized by those versions in the configure script. Installation instructions:
/usr/local/SBS/1003/v2.0/sys/mkbtp Previous versions:
|
||||||||
|