SK-98xx i2C Interface Description $Revision: 1.10 $ $Date: 1999/09/16 08:18:23 $ CONTENTS ======== 1) Purpose 2) Includes needed when using the i2C module 3) Module Dependencies 4) Define Description 5) Variable and Structure Description 6) Function Description 7) Log 8) History *** (1) PURPOSE =========== This document describes the interface of the i2C module. All defines, data structures and functions that need to be used by other modules are described here. *** (2) INCLUDES NEEDED WHEN USING THE i2C MODULE ============================================= The following include files are needed but NOT provided by the I2C module: h/sktypes.h should be included in skdrv2st.h h/lm80.h h/skpnmi.h The following include files are needed and provided by the I2C module: h/skgei2c.h is included in ski2c.h h/ski2c.h should be included in skdrv2st.h *** (3) MODULE DEPENDENCIES ======================= The drivers would need the "Event Queue / Dispatcher" module, too. But this module is also designed for the diagnostics. In that case the dispatcher is not needed. The includes of the Timer module (part of the Event queue) must be done before including the ski2c.h Because the sensor threshold watching facility the PNMI events must be defined anywhere in the includefile included by skdrv1st.h or skdrv2nd.h. The function SkOsGetTime() is also required. *** (4) DEFINE DESCRIPTION ====================== *** (5) VARIABLE AND STRUCTURE DESCRIPTION ====================================== The struct SK_I2C must be included in the Adapter Context with the name I2c. SK_I2C I2c; /* I2c relevant data structures */ The Interrupt mask register must be initialized with the I2C_READY but enabled. The diagnostic module does NOT use this interrupt and therefore it does NOT need to enable the I2C-READY interrupt. *** (6) FUNCTION DESCRIPTION ======================== The Init function has the following synopsis: int SkI2cInit( SK_AC *pAc, /* Adapter Context */ SK_IOC IoC, /* IoContext needed in level 1 and 2 */ int Level) /* Init Level */ The meaning of the parameter Level is as follows: Level 0: init the data structures. Level 1: init the board registers. Do NOT use interrupts. Level 2: start working. interrupts are functional. The function SkI2cEvent is called by the Event dispatcher it has the following synopsis: int SkI2cEvent( SK_AC *pAc, /* Adapters context */ SK_IOC IoC, /* Io Context */ SK_U32 Event, /* Module specific Event */ SK_EVPARA Para) /* Event specific Parameter */ int SkI2cReadSensor( SK_AC *pAc, /* Adapter Context */ SK_IOC IoC, /* IoContext */ SK_SENSOR *pSen) /* Sensor to be read */ This function is not directly used by any driver. It reads a sensors value according to the state a sensor is in. Returns 1 if the read was completed, 0 else. If compiled with SK_DIAG the read is done synchronously. int SkLm80ReadSensor( SK_AC *pAc, /* Adapter Context */ SK_IOC IoC, /* IoContext */ SK_SENSOR pSen) /* Sensor to be read */ This function does the real read to the LM80 sensor. It is not called directly but it will be stored into the sensors table and then called by the SkI2cReadSensor function. Returns 1 if the read was completed, 0 else. If compiled with SK_DIAG the read is done synchronously. *** (7) LOG ======= $Log: skgei2c.txt,v $ Revision 1.10 1999/09/16 08:18:23 cgoos new version 1.05 Revision 1.9 1999/08/06 08:34:27 gklug new version 1.04 Revision 1.8 1999/03/26 08:28:57 gklug add: history for v 1.03 Revision 1.7 1999/01/07 09:33:42 gklug add: history Revision 1.6 1998/08/20 11:37:34 gklug chg: change Ioc to IoC Revision 1.5 1998/08/19 12:20:55 gklug fix: remove struct from C files (see CCC) Revision 1.4 1998/08/17 13:53:06 gklug fix: Parameter of Event function and its result Revision 1.3 1998/08/17 06:56:13 malthoff Add comment to include files. Correct comments to parameter SK_IoC. Add required function SkOsGetTime(). Revision 1.2 1998/08/11 07:25:01 gklug add: interface description add: module dependencies and include files needed Revision 1.1 1998/07/17 11:35:37 gklug Created. *** (8) HISTORY =========== VERSION 1.05 Problems fixed: - Copperfield-Dual-Boards have only one fan Known limitations: - None VERSION 1.04 New features: - First version with copper board support (on prototype board). Known limitations: - None VERSION 1.03 Problems fixed: - Sensor status was not set back to 'ok' after 'warning/error'. (#10386) Known limitations: - None VERSION 1.02 Problems fixed: - 'Clear status'-command produced error log. (#10348) Known limitations: - None VERSION 1.01 Problems fixed: - Errornous error log in Solaris driver. (#10303) Known limitations: - None VERSION 1.00 Known limitations: - None *** End of Document ***Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.