The Embedded I/O Company TIP700-SW-82 Linux Device Driver User Manual TEWS TECHNOLOGIES GmbH TEWS TECHNOLOGIES LLC

Similar documents
TIP675-SW-82. Linux Device Driver. 48 TTL I/O Lines with Interrupts Version 1.2.x. User Manual. Issue November 2013

TPMC860-SW-82. Linux Device Driver. 4 Channel Isolated Serial Interface RS232 Version 1.4.x. User Manual. Issue 1.4.

CARRIER-SW-82. Linux Device Driver. IPAC Carrier Version 2.2.x. User Manual. Issue November 2017

TIP700-SW-42. VxWorks Device Driver. User Manual. The Embedded I/O Company. Digital Output 24V DC. Version 2.0.x. Issue June 2008.

TIP670-SW-95. QNX-Neutrino Device Driver. User Manual. The Embedded I/O Company. Digital I/O. Version 1.0.x. Issue August 2008.

TDRV011-SW-82. Linux Device Driver. Extended CAN Bus Version 1.0.x. User Manual. Issue April 2018

TIP570-SW-95 QNX-Neutrino Device Driver TIP570 16/8 Channel 12 Bit ADC and 8 Channel 12 Bit DAC on SBS PCI40 Carrier

TIP120-SW-42. VxWorks Device Driver. Motion Controller with Incremental Encoder Interface. Version 2.1.x. User Manual. Issue 2.1.

TPMC680-SW-82. Linux Device Driver. 64 Digital Input/Output Version 1.1.x. User Manual. Issue April 2010

TIP866-SW-95. QNX-Neutrino Device Driver. 8 Channel Serial Interface IP. Version 2.1.x. User Manual. Issue October 2009

TIP114-SW-72. LynxOS Device Driver. User Manual. The Embedded I/O Company. 10 Channel Absolute Encoder Interface (SSI) Version 1.0.

TIP610-SW-95 QNX-Neutrino Device Driver TIP610 16/20 Channel Digital I/O on SBS PCI40 Carrier

TDRV002-SW-82. Linux Device Driver. Multi-Channel Serial Interface Version 1.8.x. User Manual. Issue November 2017

TPMC810-SW-82. Linux Device Driver. User Manual. The Embedded I/O Company. Isolated 2x CAN Bus Version 1.2.x. Issue 1.2.

TPMC500-SW-42. VxWorks Device Driver. User Manual. The Embedded I/O Company. 32 Channel 12 Bit ADC. Version 2.0.x. Issue 2.0.

TPMC917-SW-82. Linux Device Driver. User Manual. The Embedded I/O Company. 4 MB SRAM with Battery Backup and 4 Channel Serial Interface Version 1.0.

TDRV010-SW-95. QNX6 - Neutrino Device Driver. Isolated 2x CAN Bus. Version 1.0.x. User Manual. Issue September 2016

TPMC901-SW-95. QNX4 - Neutrino Device Driver. User Manual. The Embedded I/O Company. 6/4/2 Channel Extended CAN-Bus PMC

TDRV006-SW-42. VxWorks Device Driver. 64 Digital Inputs/Outputs (Bit I/O) Version 4.0.x. User Manual. Issue December 2017

TCP866-SW-82. Linux Device Driver. User Manual. The Embedded I/O Company. 8 Channel Serial PMC Version 1.0.x. Issue 1.

TPMC815-SW-72. LynxOS Device Driver. User Manual. The Embedded I/O Company. ARCNET Controller. Version 1.0.x. Issue 1.0 May 2004

TPMC821-SW-42. VxWorks Device Driver. User Manual. The Embedded I/O Company. INTERBUS Master G4 PMC. Version 1.4. Issue 1.

TPMC868-SW-42. VxWorks Device Driver. 16 Channel Serial PMC. Version 2.1.x. User Manual. Issue December 2011

CARRIER-SW-42. VxWorks Device Driver. IPAC Carrier. Version 4.2.x. User Manual. Issue July 2018

OPTO32A 24 Input Bit, 8 Output Bit Optical Isolator Board

TPMC550-SW-12 OS-9 for PPC Device Driver 8 (4) Channels Isolated 12-bit D/A

TPMC851-SW-42. VxWorks Device Driver. Multifunction I/O (16 bit ADC/DAC, TTL I/O, Counter) Version 2.0.x. User Manual. Issue 2.0.

TIP SERCOS IP with 2 Encoder Interfaces. User Manual. The Embedded I/O Company. Version 1.0. Issue 1.3 September 2006 D

TIP550. Optically Isolated 8/4 Channel 12-bit D/A. Version 1.2. User Manual. Issue October 2009

TPMC Channel Motion Control. User Manual. The Embedded I/O Company. Version 1.0. Issue 1.3 March 2003 D

Lecture 3. Introduction to Unix Systems Programming: Unix File I/O System Calls

Files. Eric McCreath

Section 3: File I/O, JSON, Generics. Meghan Cowan

TIP120. Motion Controller with Incremental Encoder Interface. Version 1.0. User Manual. Issue August 2014

TCP Channel Serial Interface RS232 / RS422 cpci Module. User Manual. The Embedded I/O Company. Version 1.0. Issue 1.

24DSI32 24DSI12 24-bit, 32 Channel Delta-Sigma A/D Boards

TIP815. ARCNET Controller. Version 1.0. User Manual. Issue September 2009

Artisan Technology Group is your source for quality new and certified-used/pre-owned equipment

TPMC /8 Digital Inputs (24V) 16/8 Digital Outputs (24V, 0.5A) Version 3.0. User Manual. Issue June 2014

CSE 333 SECTION 3. POSIX I/O Functions

Experiment 6 The Real World Interface

Lecture files in /home/hwang/cs375/lecture05 on csserver.

TIP111. Motion Controller with Absolute Encoder Interface (SSI) User Manual. The Embedded I/O Company. Version 1.1. Issue 1.4 September 2005 D

TPMC816. Two Independent Channels Extended CAN Bus PMC Module. Version 2.2. User Manual. Issue August 2014

Operating Systems. Lecture 06. System Calls (Exec, Open, Read, Write) Inter-process Communication in Unix/Linux (PIPE), Use of PIPE on command line

CSE 333 SECTION 3. POSIX I/O Functions

TPMC310. Conduction Cooled PMC Isolated 2 x CAN Bus. Version 1.1. User Manual. Issue June 2014

TPMC815 ARCNET PMC. User Manual. The Embedded I/O Company. Version 2.0. Issue 1.2 November 2002 D

OS COMPONENTS OVERVIEW OF UNIX FILE I/O. CS124 Operating Systems Fall , Lecture 2

File I/0. Advanced Programming in the UNIX Environment

TIP Digital Inputs Optically Isolated Version 1.0 Revision A. User Manual. Issue May 1997 D

Advcan QNX Driver User Manual V1.02

TPCE260. PCI Express PMC Carrier. Version 1.0. User Manual. Issue August 2014

TPMC Channel Isolated Serial Interface RS422/RS485. Version 1.0. User Manual. Issue July 2009

CMPS 105 Systems Programming. Prof. Darrell Long E2.371

TPMC Channel Isolated Serial Interface RS232. Version 1.0. User Manual. Issue August 2017

TXMC885. Four Channel 10/100/1000 Mbit/s Ethernet Adapter. Version 1.0. User Manual. Issue October 2011

UNIX System Calls. Sys Calls versus Library Func

spwr_base & spwr_chan

ICS-121. VxWORKS DEVICE DRIVER MANUAL

TPMC810. Isolated 2x CAN Bus. Version 1.1. User Manual. Issue June 2009

MaRTE OS Misc utilities

Processes often need to communicate. CSCB09: Software Tools and Systems Programming. Solution: Pipes. Recall: I/O mechanisms in C

Operating systems. Lecture 7

bytes per disk block (a block is usually called sector in the disk drive literature), sectors in each track, read/write heads, and cylinders (tracks).

CS240: Programming in C

DYNAMIC ENGINEERING 150 DuBois St. Suite C, Santa Cruz, CA Fax Est.

Objectives. Chapter 2: Operating-System Structures. 2.1 Operating System Services

CMSC 216 Introduction to Computer Systems Lecture 17 Process Control and System-Level I/O

Chapter 2: System Structures

DYNAMIC ENGINEERING 150 DuBois Suite C Santa Cruz, CA (831) Fax (831) Est.

PRODUCT OVERVIEW ISSUE 4

ADADIO 12 Channel, 16-bit A/D-D/A I/O With 8-bit Discrete Digital I/O

we are here I/O & Storage Layers Recall: C Low level I/O Recall: C Low Level Operations CS162 Operating Systems and Systems Programming Lecture 18

libnetfilter_log Reference Manual

COSC Operating Systems Design, Fall Lecture Note: Unnamed Pipe and Shared Memory. Unnamed Pipes

Janus-MM Basic CAN Driver For Linux 2.6.xx and Windows XP. User Manual Revision A

TPMC Digital Inputs/Outputs (Bit I/O) Version 2.0. User Manual. Issue February 2014

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

DRIVER AND LIBRARY FOR DB67 DSP BOARD DRIVER AND LIBRARY FOR DB67 DSP BOARD

Linux Kernel Modules & Device Drivers April 9, 2012

DM6420 Driver for Linux User s Manual Version 2.01.xx

N720 OpenLinux Software User Guide Version 1.0

High Performance Real-Time Operating Systems. Device Driver. User s and Reference Manual

Input/Output. Input/Output and Files. Input/Output. I/O System Objectives

we are here Page 1 Recall: How do we Hide I/O Latency? I/O & Storage Layers Recall: C Low level I/O

PMC-BiSerial-III SDLC 8-Channel SDLC Interface

NAME attr extended attributes on XFS filesystem objects. SYNOPSIS attr [ LRq ] s attrname [ V attrvalue ] pathname

Preview. System Call. System Call. System Call. System Call. Library Functions 9/20/2018. System Call

- It must provide a stable programming interfaces that applications can be built upon.

N720 OpenLinux Software User Guide Version 1.2

File I/O - Filesystems from a user s perspective

What Is Operating System? Operating Systems, System Calls, and Buffered I/O. Academic Computers in 1983 and Operating System

File Descriptors and Piping

M O T O R O L A C O M P U T E R G R O U P VME DRIVER FOR LINUX USER GUIDE

Laboratory Assignment #3. Extending scull, a char pseudo-device. Summary: Objectives: Tasks:

Release Notes CCURDSCC (WC-AD3224-DS)

Lecture 20. Log into Linux. Copy directory /home/hwang/cs375/lecture20 Project 5 due today. Project 6 posted, due Tuesday, April 8. Questions?

CSC 271 Software I: Utilities and Internals

Shared Memory Memory mapped files

Transcription:

The Embedded I/O Company TIP700-SW-82 Linux Device Driver Digital Output 24V DC Version 1.2.x User Manual Issue 1.2.1 February 2009 TEWS TECHNOLOGIES GmbH Am Bahnhof 7 Phone: +49 (0) 4101 4058 0 25469 Halstenbek, Germany Fax: +49 (0) 4101 4058 19 www.tews.com e-mail: info@tews.com TEWS TECHNOLOGIES LLC 9190 Double Diamond Parkway, Suite 127, Reno, NV 89521, USA www.tews.com Phone: +1 (775) 850 5830 Fax: +1 (775) 201 0347 e-mail: usasales@tews.com

TIP700-SW-82 Linux Device Driver Digital Output 24V DC Supported Modules: TIP700 This document contains information, which is proprietary to TEWS TECHNOLOGIES GmbH. Any reproduction without written permission is forbidden. TEWS TECHNOLOGIES GmbH has made any effort to ensure that this manual is accurate and complete. However TEWS TECHNOLOGIES GmbH reserves the right to change the product described in this document at any time without notice. TEWS TECHNOLOGIES GmbH is not liable for any damage arising out of the application or use of the device described herein. 2004-2009 by TEWS TECHNOLOGIES GmbH Issue Description Date 1.0 First Issue July 11, 2003 1.1 Support for DEVFS and SMP February 16, 2004 1.2.0 Introduction and installation section modified April 18, 2006 1.2.1 General Revision February 25, 2009 TIP700-SW-82 Linux Device Driver Page 2 of 18

Table of Contents 1 INTRODUCTION... 4 1.1 IPAC Carrier Driver...4 2 INSTALLATION... 5 2.1 Build and install the device driver...6 2.2 Uninstall the device driver...6 2.3 Install device driver into the running kernel...6 2.4 Remove device driver from the running kernel...7 2.5 Change Major Device Number...7 3 DEVICE INPUT/OUTPUT FUNCTIONS... 8 3.1 open()...8 3.2 close()...10 3.3 write()...11 3.4 ioctl()...13 3.4.1 T700_IOC_ENABLE_WD...15 3.4.2 T700_IOC_DISABLE_WD...16 3.4.3 T700_IOC_TRIGGER_WD...17 4 DEBUGGING... 18 TIP700-SW-82 Linux Device Driver Page 3 of 18

1 Introduction The TIP700-SW-82 Linux device driver allows the operation of the TIP700 digital output IPAC conforming to the Linux I/O system specification. This includes a device-independent basic I/O interface with open(), close(), write() and ioctl() functions. The TIP700-SW-82 device driver supports the following features: writing digital output value enable and disable output watchdog The TIP700-SW-82 device driver supports the modules listed below: TIP700-10 16 isolated digital outputs 24V DC (IndustryPack ) TIP700-20 8 isolated digital outputs 24V DC (IndustryPack ) To get more information about the features and use of TIP700 devices it is recommended to read the manuals listed below. TIP700 User manual TIP700 Engineering Manual CARRIER-SW-82 IPAC Carrier User Manual 1.1 IPAC Carrier Driver IndustryPack (IPAC) carrier boards have different implementations of the system to IndustryPack bus bridge logic, different implementations of interrupt and error handling and so on. Also the different byte ordering (big-endian versus little-endian) of CPU boards will cause problems on accessing the IndustryPack I/O and memory spaces. To simplify the implementation of IPAC device drivers which work with any supported carrier board, TEWS TECHNOLOGIES has designed a so called Carrier Driver that hides all differences of different carrier boards under a well defined interface. The TEWS TECHNOLOGIES IPAC Carrier Driver CARRIER-SW-82 is part of this TIP700-SW-82 distribution. It is located in directory CARRIER-SW-82 on the corresponding distribution media. This IPAC Device Driver requires a properly installed IPAC Carrier Driver. Due to the design of the Carrier Driver, it is sufficient to install the IPAC Carrier Driver once, even if multiple IPAC Device Drivers are used. Please refer to the CARRIER-SW-82 User Manual for a detailed description how to install and setup the CARRIER-SW-82 device driver, and for a description of the TEWS TECHNOLOGIES IPAC Carrier Driver concept. TIP700-SW-82 Linux Device Driver Page 4 of 18

2 Installation Following files are located on the distribution media: Directory path TIP700-SW-82 : TIP700-SW-82-SRC.tar.gz TIP700-SW-82-1.2.1.pdf ChangeLog.txt Release.txt GZIP compressed archive with driver source code PDF copy of this manual Release history Release information For installation the files have to be copied to the desired target directory. The GZIP compressed archive TIP700-SW-82-SRC.tar.gz contains the following files and directories: Directory path./tip700/ : tip700.c tip700def.h tip700.h makenode Makefile example/tip700exa.c example/makefile include/config.h include/tpmodule.h include/tpmodule.c Driver source code Driver include file Driver include file for application program Script to create device nodes on the file system Device driver make file Example application Example application make file Driver independent library header file Kernel independent library header file Kernel independent library source code file In order to perform an installation, extract all files of the archive TIP700-SW-82-SRC.tar.gz to the desired target directory. The command tar -xzvf TIP700-SW-82-SRC.tar.gz will extract the files into the local directory. Before building a new device driver, the TEWS TECHNOLOGIES IPAC carrier driver must be installed properly, because this driver includes the header file ipac_carrier.h, which is part of the IPAC carrier driver distribution. Please refer to the IPAC carrier driver user manual in the directory path CARRIER-SW-82 on the separate distribution media. TIP700-SW-82 Linux Device Driver Page 5 of 18

2.1 Build and install the device driver Login as root Change to the target directory To create and install the driver in the module directory /lib/modules/<version>/misc enter: # make install For Linux kernel 2.6.x, there may be compiler warnings claiming some undefined ipac_* symbols. These warnings are caused by the IPAC carrier driver, which is unknown during compilation of this TIP driver. The warnings can be ignored. Also after the first build we have to execute depmod to create a new dependency description for loadable kernel modules. This dependency file is later used by modprobe to automatically load the correct IPAC carrier driver modules. # depmod aq 2.2 Uninstall the device driver Login as root Change to the target directory To remove the driver from the module directory /lib/modules/<version>/misc enter: # make uninstall Update kernel module dependency description file: # depmod aq 2.3 Install device driver into the running kernel To load the device driver into the running kernel, login as root and execute the following commands: # modprobe tip700drv After the first build or if you are using dynamic major device allocation it s necessary to create new device nodes on the file system. Please execute the script file makenode to do this. If your kernel has enabled a dynamic device file system (devfs or sysfs with udev) then you have to skip running the makenode script. Instead of creating device nodes from the script the driver itself takes creating and destroying of device nodes in its responsibility. # sh makenode TIP700-SW-82 Linux Device Driver Page 6 of 18

On success the device driver will create a minor device for each TIP700 module found. The first TIP700 can be accessed with device node /dev/tip700_0, the second TIP700 with device node /dev/tip700_1, the third TIP700 with device node /dev/tip700_2 and so on. The allocation of device nodes to physical TIP700 modules depends on the search order of the IPAC carrier driver. Please refer to the IPAC carrier user manual. Loading of the TIP700 device driver will only work if kernel KMOD support is installed, necessary carrier board drivers already installed and the kernel dependency file is up to date. If KMOD support isn t available you have to build either a new kernel with KMOD installed or you have to install the IPAC carrier kernel modules manually in the correct order (please refer to the IPAC carrier driver user manual). 2.4 Remove device driver from the running kernel To remove the device driver from the running kernel login as root and execute the following command: # modprobe tip700drv r If your kernel has enabled a dynamic device file system (devfs or sysfs with udev) all /dev/tip700_x nodes will be automatically removed from your file system after this. Be sure that the driver isn t opened by any application program. If opened you will get the response tip700drv: Device or resource busy and the driver will still remain in the system until you close all opened files and execute modprobe r again. 2.5 Change Major Device Number The TIP700 driver uses dynamic allocation of major device numbers by default. If this isn t suitable for the application it s possible to define a major number for the driver. If the kernel has enabled a dynamic files system the driver will not use the symbol TIP700_MAJOR. To change the major number edit the file tip700.c, change the following symbol to appropriate value and enter make install to create a new driver. TIP700_MAJOR Valid numbers are in range between 0 and 255. A value of 0 means dynamic number allocation. Example: #define TIP700_MAJOR 122 TIP700-SW-82 Linux Device Driver Page 7 of 18

3 Device Input/Output functions This chapter describes the interface to the device driver I/O system. 3.1 open() NAME open() - open a file descriptor SYNOPSIS #include <fcntl.h> int open (const char *filename, int flags) DESCRIPTION The open function creates and returns a new file descriptor for the file named by filename. The flags argument controls how the file is to be opened. This is a bit mask; you create the value by the bitwise OR of the appropriate parameters (using the operator in C). See also the GNU C Library documentation for more information about the open function and open flags. EXAMPLE int fd; fd = open( /dev/tip700_0, O_RDWR); if (fd < 0) { /* handle error condition */ } RETURNS The normal return value from open is a non-negative integer file descriptor. In the case of an error, a value of 1 is returned. The global variable errno contains the detailed error code. TIP700-SW-82 Linux Device Driver Page 8 of 18

ERRORS E_NODEV The requested minor device does not exist. This is the only error code returned by the driver, other codes may be returned by the I/O system during open. SEE ALSO GNU C Library description Low-Level Input/Output TIP700-SW-82 Linux Device Driver Page 9 of 18

3.2 close() NAME close() close a file descriptor SYNOPSIS #include <unistd.h> int close (int filedes) DESCRIPTION The close function closes the file descriptor filedes. EXAMPLE int fd; if (close(fd)!= 0) { /* handle close error conditions */ } RETURNS The normal return value from close is 0. In the case of an error, a value of 1 is returned. The global variable errno contains the detailed error code. ERRORS E_NODEV The requested minor device does not exist. This is the only error code returned by the driver, other codes may be returned by the I/O system during close. For more information about close error codes, see the GNU C Library description Low- Level Input/Output. SEE ALSO GNU C Library description Low-Level Input/Output TIP700-SW-82 Linux Device Driver Page 10 of 18

3.3 write() NAME write() write to a device SYNOPSIS #include <unistd.h> ssize_t write(int filedes, void *buffer, size_t size) DESCRIPTION This function writes to the output registers of the TIP700 associated with the file descriptor filedes from a structure (T700_BUFFER) pointed to by buffer. The argument size specifies the length of the buffer and must be set to the size of the structure T700_BUFFER. typedef struct { unsigned short } T700_BUFFER; value; value This parameter holds the new value for output lines 1 to 16. Where bit 2 0 corresponds to output line 1, bit 2 1 to output line 2, and so on. EXAMPLE #include <tip700.h> int ssize_t T700_BUFFER fd; num_bytes; io_buf; io_buf.value = 0x1234; num_bytes = write(fd, &io_buf, sizeof(t700_buffer)); if (num_bytes!= sizeof(t700_buffer)) { // process error; } TIP700-SW-82 Linux Device Driver Page 11 of 18

RETURNS On success write returns the size of bytes written (always the size of T700_BUFFER). In the case of an error, a value of 1 is returned. The global variable errno contains the detailed error code. ERRORS EINVAL This error code is returned if the size of the buffer is wrong. SEE ALSO GNU C Library description Low-Level Input/Output TIP700-SW-82 Linux Device Driver Page 12 of 18

3.4 ioctl() NAME ioctl() device control functions SYNOPSIS #include <sys/ioctl.h> int ioctl(int filedes, int request [, void *argp]) DESCRIPTION The ioctl function sends a control code directly to a device, specified by filedes, causing the corresponding device to perform the requested operation. The argument request specifies the control code for the operation. The optional argument argp depends on the selected request and is described for each request in detail later in this chapter. The following ioctl codes are defined in tip700.h: Symbol T700_IOC_ENABLE_WD T700_IOC_DISABLE_WD T700_IOC_TRIGGER_WD Meaning Enable output watchdog Disable output watchdog Trigger output watchdog See behind for more detailed information on each control code. To use these TIP700 specific control codes the header file tip700.h must be included in to the application RETURNS On success, zero is returned. In the case of an error, a value of 1 is returned. The global variable errno contains the detailed error code. TIP700-SW-82 Linux Device Driver Page 13 of 18

ERRORS EINVAL Invalid argument. This error code is returned if the requested ioctl function is unknown. Please check the argument request. Other function dependant error codes will be described for each ioctl code separately. Note, the TIP700 driver always returns standard Linux error codes. SEE ALSO ioctl man pages TIP700-SW-82 Linux Device Driver Page 14 of 18

3.4.1 T700_IOC_ENABLE_WD NAME T700_IOC_ENABLE_WD - Enable output watchdog DESCRIPTION This ioctl function enables the output watchdog facility of the TIP700. If the output watchdog is not retriggered within approximately 120 milliseconds the state of the output register will be set to inactive. The watchdog is triggered implicitly by a write to the output register or by executing the ioctl function T700_IOC_TRIGGER_WD. The initialization state (driver startup) of the output watchdog is disabled. EXAMPLE #include <tip700.h> int int fd; result; result = ioctl(fd, T700_IOC_ENABLE_WD); if (result < 0) { /* handle ioctl error */ } ERRORS This ioctl function returns no function specific error codes. TIP700-SW-82 Linux Device Driver Page 15 of 18

3.4.2 T700_IOC_DISABLE_WD NAME T700_IOC_DISABLE_WD - Disable output watchdog DESCRIPTION This ioctl function disables the output watchdog facility of the TIP700. The initialization state (driver startup) of the output watchdog is disabled. EXAMPLE #include <tip700.h> int int fd; result; result = ioctl(fd, T700_IOC_DISABLE_WD); if (result < 0) { /* handle ioctl error */ } ERRORS This ioctl function returns no function specific error codes. TIP700-SW-82 Linux Device Driver Page 16 of 18

3.4.3 T700_IOC_TRIGGER_WD NAME T700_IOC_TRIGGER_WD - Trigger output watchdog DESCRIPTION This ioctl function triggers the output watchdog of the TIP700. If the output watchdog is not retriggered within approximately 120 milliseconds the state of the output register will be set to inactive. The watchdog is triggered implicitly by a write to the output register or by executing this ioctl function. The initialization state (driver startup) of the output watchdog is disabled. EXAMPLE #include <tip700.h> int int fd; result; result = ioctl(fd, T700_IOC_TRIGGER_WD); if (result < 0) { /* handle ioctl error */ } ERRORS This ioctl function returns no function specific error codes. TIP700-SW-82 Linux Device Driver Page 17 of 18

4 Debugging For debugging output see tip700.c. You will find the following symbol: #undef TIP700_DEBUG_VIEW To enable a debug output replace undef with define. The TIP700_DEBUG_VIEW symbol controls debugging output from the whole driver. TIP700 8 or 16 Digital Outputs version 1.2.1 (2009-02-25)<6> TIP700 : Probe new TIP700 mounted on <TEWS TECHNOLOGIES - (Compact)PCI IPAC Carrier> at slot A TIP700 : IP I/O Memory Space 00000000 : 00 01 FF 01 TIP700 : IP ID Memory Space 00000000 : FF 49 FF 50 FF 41 FF 43 FF B3 FF 05 FF 10 FF 00 00000010 : FF 00 FF 00 FF 0C FF D7 FF 00 FF 00 FF 00 FF 00 00000020 : FF 00 FF 00 FF 00 FF 00 FF 00 FF 00 FF 00 FF 00 00000030 : FF 00 FF 00 FF 00 FF 00 FF 00 FF 00 FF 00 FF 00 TIP700 : IOCTL : T700_IOC_ENABLE_WD TIP700 : IOCTL : T700_IOC_DISABLE_WD TIP700-SW-82 Linux Device Driver Page 18 of 18