summaryrefslogtreecommitdiff
path: root/Documentation/i2c/busses/i2c-sis96x.rst
blob: 437cc1d89588d67f39ea58c2152daeaf2125c352 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
========================
Kernel driver i2c-sis96x
========================

Replaces 2.4.x i2c-sis645

Supported adapters:

  * Silicon Integrated Systems Corp (SiS)

    Any combination of these host bridges:
	645, 645DX (aka 646), 648, 650, 651, 655, 735, 745, 746

    and these south bridges:
	961, 962, 963(L)

Author: Mark M. Hoffman <mhoffman@lightlink.com>

Description
-----------

This SMBus only driver is known to work on motherboards with the above
named chipset combinations. The driver was developed without benefit of a
proper datasheet from SiS. The SMBus registers are assumed compatible with
those of the SiS630, although they are located in a completely different
place. Thanks to Alexander Malysh <amalysh@web.de> for providing the
SiS630 datasheet (and  driver).

The command ``lspci`` as root should produce something like these lines::

  00:00.0 Host bridge: Silicon Integrated Systems [SiS]: Unknown device 0645
  00:02.0 ISA bridge: Silicon Integrated Systems [SiS] 85C503/5513
  00:02.1 SMBus: Silicon Integrated Systems [SiS]: Unknown device 0016

or perhaps this::

  00:00.0 Host bridge: Silicon Integrated Systems [SiS]: Unknown device 0645
  00:02.0 ISA bridge: Silicon Integrated Systems [SiS]: Unknown device 0961
  00:02.1 SMBus: Silicon Integrated Systems [SiS]: Unknown device 0016

(kernel versions later than 2.4.18 may fill in the "Unknown"s)

If you can't see it please look on quirk_sis_96x_smbus
(drivers/pci/quirks.c) (also if southbridge detection fails)

I suspect that this driver could be made to work for the following SiS
chipsets as well: 635, and 635T. If anyone owns a board with those chips
AND is willing to risk crashing & burning an otherwise well-behaved kernel
in the name of progress... please contact me at <mhoffman@lightlink.com> or
via the linux-i2c mailing list: <linux-i2c@vger.kernel.org>.  Please send bug
reports and/or success stories as well.


TO DOs
------

* The driver does not support SMBus block reads/writes; I may add them if a
  scenario is found where they're needed.


Thank You
---------

Mark D. Studebaker <mdsxyz123@yahoo.com>
 - design hints and bug fixes

Alexander Maylsh <amalysh@web.de>
 - ditto, plus an important datasheet... almost the one I really wanted

Hans-Günter Lütke Uphues <hg_lu@t-online.de>
 - patch for SiS735

Robert Zwerus <arzie@dds.nl>
 - testing for SiS645DX

Kianusch Sayah Karadji <kianusch@sk-tech.net>
 - patch for SiS645DX/962

Ken Healy
 - patch for SiS655

To anyone else who has written w/ feedback, thanks!