xref: /OK3568_Linux_fs/kernel/Documentation/hwmon/smm665.rst (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunKernel driver smm665
2*4882a593Smuzhiyun====================
3*4882a593Smuzhiyun
4*4882a593SmuzhiyunSupported chips:
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun  * Summit Microelectronics SMM465
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun    Prefix: 'smm465'
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun    Addresses scanned: -
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun    Datasheet:
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun      http://www.summitmicro.com/prod_select/summary/SMM465/SMM465DS.pdf
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun  * Summit Microelectronics SMM665, SMM665B
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun    Prefix: 'smm665'
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun    Addresses scanned: -
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun    Datasheet:
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun      http://www.summitmicro.com/prod_select/summary/SMM665/SMM665B_2089_20.pdf
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun  * Summit Microelectronics SMM665C
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun    Prefix: 'smm665c'
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun    Addresses scanned: -
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun    Datasheet:
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun      http://www.summitmicro.com/prod_select/summary/SMM665C/SMM665C_2125.pdf
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun  * Summit Microelectronics SMM764
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun    Prefix: 'smm764'
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun    Addresses scanned: -
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun    Datasheet:
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun      http://www.summitmicro.com/prod_select/summary/SMM764/SMM764_2098.pdf
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun  * Summit Microelectronics SMM766, SMM766B
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun    Prefix: 'smm766'
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun    Addresses scanned: -
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun    Datasheets:
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun      http://www.summitmicro.com/prod_select/summary/SMM766/SMM766_2086.pdf
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun      http://www.summitmicro.com/prod_select/summary/SMM766B/SMM766B_2122.pdf
57*4882a593Smuzhiyun
58*4882a593SmuzhiyunAuthor: Guenter Roeck <linux@roeck-us.net>
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun
61*4882a593SmuzhiyunModule Parameters
62*4882a593Smuzhiyun-----------------
63*4882a593Smuzhiyun
64*4882a593Smuzhiyun* vref: int
65*4882a593Smuzhiyun    Default: 1250 (mV)
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun    Reference voltage on VREF_ADC pin in mV. It should not be necessary to set
68*4882a593Smuzhiyun    this parameter unless a non-default reference voltage is used.
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun
71*4882a593SmuzhiyunDescription
72*4882a593Smuzhiyun-----------
73*4882a593Smuzhiyun
74*4882a593Smuzhiyun[From datasheet] The SMM665 is an Active DC Output power supply Controller
75*4882a593Smuzhiyunthat monitors, margins and cascade sequences power. The part monitors six
76*4882a593Smuzhiyunpower supply channels as well as VDD, 12V input, two general-purpose analog
77*4882a593Smuzhiyuninputs and an internal temperature sensor using a 10-bit ADC.
78*4882a593Smuzhiyun
79*4882a593SmuzhiyunEach monitored channel has its own high and low limits, plus a critical
80*4882a593Smuzhiyunlimit.
81*4882a593Smuzhiyun
82*4882a593SmuzhiyunSupport for SMM465, SMM764, and SMM766 has been implemented but is untested.
83*4882a593Smuzhiyun
84*4882a593Smuzhiyun
85*4882a593SmuzhiyunUsage Notes
86*4882a593Smuzhiyun-----------
87*4882a593Smuzhiyun
88*4882a593SmuzhiyunThis driver does not probe for devices, since there is no register which
89*4882a593Smuzhiyuncan be safely used to identify the chip. You will have to instantiate
90*4882a593Smuzhiyunthe devices explicitly. When instantiating the device, you have to specify
91*4882a593Smuzhiyunits configuration register address.
92*4882a593Smuzhiyun
93*4882a593SmuzhiyunExample: the following will load the driver for an SMM665 at address 0x57
94*4882a593Smuzhiyunon I2C bus #1::
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun	$ modprobe smm665
97*4882a593Smuzhiyun	$ echo smm665 0x57 > /sys/bus/i2c/devices/i2c-1/new_device
98*4882a593Smuzhiyun
99*4882a593Smuzhiyun
100*4882a593SmuzhiyunSysfs entries
101*4882a593Smuzhiyun-------------
102*4882a593Smuzhiyun
103*4882a593SmuzhiyunThis driver uses the values in the datasheet to convert ADC register values
104*4882a593Smuzhiyuninto the values specified in the sysfs-interface document. All attributes are
105*4882a593Smuzhiyunread only.
106*4882a593Smuzhiyun
107*4882a593SmuzhiyunMin, max, lcrit, and crit values are used by the chip to trigger external signals
108*4882a593Smuzhiyunand/or other activity. Triggered signals can include HEALTHY, RST, Power Off,
109*4882a593Smuzhiyunor Fault depending on the chip configuration. The driver reports values as lcrit
110*4882a593Smuzhiyunor crit if exceeding the limits triggers RST, Power Off, or Fault, and as min or
111*4882a593Smuzhiyunmax otherwise. For details please see the SMM665 datasheet.
112*4882a593Smuzhiyun
113*4882a593SmuzhiyunFor SMM465 and SMM764, values for Channel E and F are reported but undefined.
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun======================= =======================================================
116*4882a593Smuzhiyunin1_input		12V input voltage (mV)
117*4882a593Smuzhiyunin2_input		3.3V (VDD) input voltage (mV)
118*4882a593Smuzhiyunin3_input		Channel A voltage (mV)
119*4882a593Smuzhiyunin4_input		Channel B voltage (mV)
120*4882a593Smuzhiyunin5_input		Channel C voltage (mV)
121*4882a593Smuzhiyunin6_input		Channel D voltage (mV)
122*4882a593Smuzhiyunin7_input		Channel E voltage (mV)
123*4882a593Smuzhiyunin8_input		Channel F voltage (mV)
124*4882a593Smuzhiyunin9_input		AIN1 voltage (mV)
125*4882a593Smuzhiyunin10_input		AIN2 voltage (mV)
126*4882a593Smuzhiyun
127*4882a593Smuzhiyunin1_min			12v input minimum voltage (mV)
128*4882a593Smuzhiyunin2_min			3.3V (VDD) input minimum voltage (mV)
129*4882a593Smuzhiyunin3_min			Channel A minimum voltage (mV)
130*4882a593Smuzhiyunin4_min			Channel B minimum voltage (mV)
131*4882a593Smuzhiyunin5_min			Channel C minimum voltage (mV)
132*4882a593Smuzhiyunin6_min			Channel D minimum voltage (mV)
133*4882a593Smuzhiyunin7_min			Channel E minimum voltage (mV)
134*4882a593Smuzhiyunin8_min			Channel F minimum voltage (mV)
135*4882a593Smuzhiyunin9_min			AIN1 minimum voltage (mV)
136*4882a593Smuzhiyunin10_min		AIN2 minimum voltage (mV)
137*4882a593Smuzhiyun
138*4882a593Smuzhiyunin1_max			12v input maximum voltage (mV)
139*4882a593Smuzhiyunin2_max			3.3V (VDD) input maximum voltage (mV)
140*4882a593Smuzhiyunin3_max			Channel A maximum voltage (mV)
141*4882a593Smuzhiyunin4_max			Channel B maximum voltage (mV)
142*4882a593Smuzhiyunin5_max			Channel C maximum voltage (mV)
143*4882a593Smuzhiyunin6_max			Channel D maximum voltage (mV)
144*4882a593Smuzhiyunin7_max			Channel E maximum voltage (mV)
145*4882a593Smuzhiyunin8_max			Channel F maximum voltage (mV)
146*4882a593Smuzhiyunin9_max			AIN1 maximum voltage (mV)
147*4882a593Smuzhiyunin10_max		AIN2 maximum voltage (mV)
148*4882a593Smuzhiyun
149*4882a593Smuzhiyunin1_lcrit		12v input critical minimum voltage (mV)
150*4882a593Smuzhiyunin2_lcrit		3.3V (VDD) input critical minimum voltage (mV)
151*4882a593Smuzhiyunin3_lcrit		Channel A critical minimum voltage (mV)
152*4882a593Smuzhiyunin4_lcrit		Channel B critical minimum voltage (mV)
153*4882a593Smuzhiyunin5_lcrit		Channel C critical minimum voltage (mV)
154*4882a593Smuzhiyunin6_lcrit		Channel D critical minimum voltage (mV)
155*4882a593Smuzhiyunin7_lcrit		Channel E critical minimum voltage (mV)
156*4882a593Smuzhiyunin8_lcrit		Channel F critical minimum voltage (mV)
157*4882a593Smuzhiyunin9_lcrit		AIN1 critical minimum voltage (mV)
158*4882a593Smuzhiyunin10_lcrit		AIN2 critical minimum voltage (mV)
159*4882a593Smuzhiyun
160*4882a593Smuzhiyunin1_crit		12v input critical maximum voltage (mV)
161*4882a593Smuzhiyunin2_crit		3.3V (VDD) input critical maximum voltage (mV)
162*4882a593Smuzhiyunin3_crit		Channel A critical maximum voltage (mV)
163*4882a593Smuzhiyunin4_crit		Channel B critical maximum voltage (mV)
164*4882a593Smuzhiyunin5_crit		Channel C critical maximum voltage (mV)
165*4882a593Smuzhiyunin6_crit		Channel D critical maximum voltage (mV)
166*4882a593Smuzhiyunin7_crit		Channel E critical maximum voltage (mV)
167*4882a593Smuzhiyunin8_crit		Channel F critical maximum voltage (mV)
168*4882a593Smuzhiyunin9_crit		AIN1 critical maximum voltage (mV)
169*4882a593Smuzhiyunin10_crit		AIN2 critical maximum voltage (mV)
170*4882a593Smuzhiyun
171*4882a593Smuzhiyunin1_crit_alarm		12v input critical alarm
172*4882a593Smuzhiyunin2_crit_alarm		3.3V (VDD) input critical alarm
173*4882a593Smuzhiyunin3_crit_alarm		Channel A critical alarm
174*4882a593Smuzhiyunin4_crit_alarm		Channel B critical alarm
175*4882a593Smuzhiyunin5_crit_alarm		Channel C critical alarm
176*4882a593Smuzhiyunin6_crit_alarm		Channel D critical alarm
177*4882a593Smuzhiyunin7_crit_alarm		Channel E critical alarm
178*4882a593Smuzhiyunin8_crit_alarm		Channel F critical alarm
179*4882a593Smuzhiyunin9_crit_alarm		AIN1 critical alarm
180*4882a593Smuzhiyunin10_crit_alarm		AIN2 critical alarm
181*4882a593Smuzhiyun
182*4882a593Smuzhiyuntemp1_input		Chip temperature
183*4882a593Smuzhiyuntemp1_min		Mimimum chip temperature
184*4882a593Smuzhiyuntemp1_max		Maximum chip temperature
185*4882a593Smuzhiyuntemp1_crit		Critical chip temperature
186*4882a593Smuzhiyuntemp1_crit_alarm	Temperature critical alarm
187*4882a593Smuzhiyun======================= =======================================================
188