SKGEI2C.TXT Driver File Contents (CardAssistant1_3.zip)

	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

How To Update Drivers Manually

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.

server: web3, load: 1.97