xref: /openbmc/linux/Documentation/i2c/busses/i2c-ali15x3.rst (revision 976e3645923bdd2fe7893aae33fd7a21098bfb28)
1*ccf988b6SMauro Carvalho Chehab=========================
2*ccf988b6SMauro Carvalho ChehabKernel driver i2c-ali15x3
3*ccf988b6SMauro Carvalho Chehab=========================
4*ccf988b6SMauro Carvalho Chehab
5*ccf988b6SMauro Carvalho ChehabSupported adapters:
6*ccf988b6SMauro Carvalho Chehab  * Acer Labs, Inc. ALI 1533 and 1543C (south bridge)
7*ccf988b6SMauro Carvalho Chehab
8*ccf988b6SMauro Carvalho Chehab    Datasheet: Now under NDA
9*ccf988b6SMauro Carvalho Chehab	http://www.ali.com.tw/
10*ccf988b6SMauro Carvalho Chehab
11*ccf988b6SMauro Carvalho ChehabAuthors:
12*ccf988b6SMauro Carvalho Chehab	- Frodo Looijaard <frodol@dds.nl>,
13*ccf988b6SMauro Carvalho Chehab	- Philip Edelbrock <phil@netroedge.com>,
14*ccf988b6SMauro Carvalho Chehab	- Mark D. Studebaker <mdsxyz123@yahoo.com>
15*ccf988b6SMauro Carvalho Chehab
16*ccf988b6SMauro Carvalho ChehabModule Parameters
17*ccf988b6SMauro Carvalho Chehab-----------------
18*ccf988b6SMauro Carvalho Chehab
19*ccf988b6SMauro Carvalho Chehab* force_addr: int
20*ccf988b6SMauro Carvalho Chehab    Initialize the base address of the i2c controller
21*ccf988b6SMauro Carvalho Chehab
22*ccf988b6SMauro Carvalho Chehab
23*ccf988b6SMauro Carvalho ChehabNotes
24*ccf988b6SMauro Carvalho Chehab-----
25*ccf988b6SMauro Carvalho Chehab
26*ccf988b6SMauro Carvalho ChehabThe force_addr parameter is useful for boards that don't set the address in
27*ccf988b6SMauro Carvalho Chehabthe BIOS. Does not do a PCI force; the device must still be present in
28*ccf988b6SMauro Carvalho Chehablspci. Don't use this unless the driver complains that the base address is
29*ccf988b6SMauro Carvalho Chehabnot set.
30*ccf988b6SMauro Carvalho Chehab
31*ccf988b6SMauro Carvalho ChehabExample::
32*ccf988b6SMauro Carvalho Chehab
33*ccf988b6SMauro Carvalho Chehab    modprobe i2c-ali15x3 force_addr=0xe800
34*ccf988b6SMauro Carvalho Chehab
35*ccf988b6SMauro Carvalho ChehabSMBus periodically hangs on ASUS P5A motherboards and can only be cleared
36*ccf988b6SMauro Carvalho Chehabby a power cycle. Cause unknown (see Issues below).
37*ccf988b6SMauro Carvalho Chehab
38*ccf988b6SMauro Carvalho Chehab
39*ccf988b6SMauro Carvalho ChehabDescription
40*ccf988b6SMauro Carvalho Chehab-----------
41*ccf988b6SMauro Carvalho Chehab
42*ccf988b6SMauro Carvalho ChehabThis is the driver for the SMB Host controller on Acer Labs Inc. (ALI)
43*ccf988b6SMauro Carvalho ChehabM1541 and M1543C South Bridges.
44*ccf988b6SMauro Carvalho Chehab
45*ccf988b6SMauro Carvalho ChehabThe M1543C is a South bridge for desktop systems.
46*ccf988b6SMauro Carvalho Chehab
47*ccf988b6SMauro Carvalho ChehabThe M1541 is a South bridge for portable systems.
48*ccf988b6SMauro Carvalho Chehab
49*ccf988b6SMauro Carvalho ChehabThey are part of the following ALI chipsets:
50*ccf988b6SMauro Carvalho Chehab
51*ccf988b6SMauro Carvalho Chehab * "Aladdin Pro 2" includes the M1621 Slot 1 North bridge with AGP and
52*ccf988b6SMauro Carvalho Chehab   100MHz CPU Front Side bus
53*ccf988b6SMauro Carvalho Chehab * "Aladdin V" includes the M1541 Socket 7 North bridge with AGP and 100MHz
54*ccf988b6SMauro Carvalho Chehab   CPU Front Side bus
55*ccf988b6SMauro Carvalho Chehab
56*ccf988b6SMauro Carvalho Chehab   Some Aladdin V motherboards:
57*ccf988b6SMauro Carvalho Chehab	- Asus P5A
58*ccf988b6SMauro Carvalho Chehab	- Atrend ATC-5220
59*ccf988b6SMauro Carvalho Chehab	- BCM/GVC VP1541
60*ccf988b6SMauro Carvalho Chehab	- Biostar M5ALA
61*ccf988b6SMauro Carvalho Chehab	- Gigabyte GA-5AX (Generally doesn't work because the BIOS doesn't
62*ccf988b6SMauro Carvalho Chehab	  enable the 7101 device!)
63*ccf988b6SMauro Carvalho Chehab	- Iwill XA100 Plus
64*ccf988b6SMauro Carvalho Chehab	- Micronics C200
65*ccf988b6SMauro Carvalho Chehab	- Microstar (MSI) MS-5169
66*ccf988b6SMauro Carvalho Chehab
67*ccf988b6SMauro Carvalho Chehab  * "Aladdin IV" includes the M1541 Socket 7 North bridge
68*ccf988b6SMauro Carvalho Chehab    with host bus up to 83.3 MHz.
69*ccf988b6SMauro Carvalho Chehab
70*ccf988b6SMauro Carvalho ChehabFor an overview of these chips see http://www.acerlabs.com. At this time the
71*ccf988b6SMauro Carvalho Chehabfull data sheets on the web site are password protected, however if you
72*ccf988b6SMauro Carvalho Chehabcontact the ALI office in San Jose they may give you the password.
73*ccf988b6SMauro Carvalho Chehab
74*ccf988b6SMauro Carvalho ChehabThe M1533/M1543C devices appear as FOUR separate devices on the PCI bus. An
75*ccf988b6SMauro Carvalho Chehaboutput of lspci will show something similar to the following::
76*ccf988b6SMauro Carvalho Chehab
77*ccf988b6SMauro Carvalho Chehab  00:02.0 USB Controller: Acer Laboratories Inc. M5237 (rev 03)
78*ccf988b6SMauro Carvalho Chehab  00:03.0 Bridge: Acer Laboratories Inc. M7101      <= THIS IS THE ONE WE NEED
79*ccf988b6SMauro Carvalho Chehab  00:07.0 ISA bridge: Acer Laboratories Inc. M1533 (rev c3)
80*ccf988b6SMauro Carvalho Chehab  00:0f.0 IDE interface: Acer Laboratories Inc. M5229 (rev c1)
81*ccf988b6SMauro Carvalho Chehab
82*ccf988b6SMauro Carvalho Chehab.. important::
83*ccf988b6SMauro Carvalho Chehab
84*ccf988b6SMauro Carvalho Chehab   If you have a M1533 or M1543C on the board and you get
85*ccf988b6SMauro Carvalho Chehab   "ali15x3: Error: Can't detect ali15x3!"
86*ccf988b6SMauro Carvalho Chehab   then run lspci.
87*ccf988b6SMauro Carvalho Chehab
88*ccf988b6SMauro Carvalho Chehab   If you see the 1533 and 5229 devices but NOT the 7101 device,
89*ccf988b6SMauro Carvalho Chehab   then you must enable ACPI, the PMU, SMB, or something similar
90*ccf988b6SMauro Carvalho Chehab   in the BIOS.
91*ccf988b6SMauro Carvalho Chehab
92*ccf988b6SMauro Carvalho Chehab   The driver won't work if it can't find the M7101 device.
93*ccf988b6SMauro Carvalho Chehab
94*ccf988b6SMauro Carvalho ChehabThe SMB controller is part of the M7101 device, which is an ACPI-compliant
95*ccf988b6SMauro Carvalho ChehabPower Management Unit (PMU).
96*ccf988b6SMauro Carvalho Chehab
97*ccf988b6SMauro Carvalho ChehabThe whole M7101 device has to be enabled for the SMB to work. You can't
98*ccf988b6SMauro Carvalho Chehabjust enable the SMB alone. The SMB and the ACPI have separate I/O spaces.
99*ccf988b6SMauro Carvalho ChehabWe make sure that the SMB is enabled. We leave the ACPI alone.
100*ccf988b6SMauro Carvalho Chehab
101*ccf988b6SMauro Carvalho ChehabFeatures
102*ccf988b6SMauro Carvalho Chehab--------
103*ccf988b6SMauro Carvalho Chehab
104*ccf988b6SMauro Carvalho ChehabThis driver controls the SMB Host only. The SMB Slave
105*ccf988b6SMauro Carvalho Chehabcontroller on the M15X3 is not enabled. This driver does not use
106*ccf988b6SMauro Carvalho Chehabinterrupts.
107*ccf988b6SMauro Carvalho Chehab
108*ccf988b6SMauro Carvalho Chehab
109*ccf988b6SMauro Carvalho ChehabIssues
110*ccf988b6SMauro Carvalho Chehab------
111*ccf988b6SMauro Carvalho Chehab
112*ccf988b6SMauro Carvalho ChehabThis driver requests the I/O space for only the SMB
113*ccf988b6SMauro Carvalho Chehabregisters. It doesn't use the ACPI region.
114*ccf988b6SMauro Carvalho Chehab
115*ccf988b6SMauro Carvalho ChehabOn the ASUS P5A motherboard, there are several reports that
116*ccf988b6SMauro Carvalho Chehabthe SMBus will hang and this can only be resolved by
117*ccf988b6SMauro Carvalho Chehabpowering off the computer. It appears to be worse when the board
118*ccf988b6SMauro Carvalho Chehabgets hot, for example under heavy CPU load, or in the summer.
119*ccf988b6SMauro Carvalho ChehabThere may be electrical problems on this board.
120*ccf988b6SMauro Carvalho ChehabOn the P5A, the W83781D sensor chip is on both the ISA and
121*ccf988b6SMauro Carvalho ChehabSMBus. Therefore the SMBus hangs can generally be avoided
122*ccf988b6SMauro Carvalho Chehabby accessing the W83781D on the ISA bus only.
123