Commit 5da556e33fc53179a5bec10b5698e262cf68e26d

Authored by Hans de Goede
Committed by Jean Delvare
1 parent 7958e3b45d

hwmon: (f71882fg) Add support for the F71869A

The F71869A is almost the same as the F71869F/E, except that it has
the normal number of temp and pwm zones for a F71882FG derived chip,
rather then the limited number of the F71869F/E.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Tested-by: Max Baldwin <archerseven@gmail.com>
Acked-by: Guenter Roeck <guenter.roeck@ericsson.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

Showing 3 changed files with 20 additions and 3 deletions Side-by-side Diff

Documentation/hwmon/f71882fg
... ... @@ -22,6 +22,10 @@
22 22 Prefix: 'f71869'
23 23 Addresses scanned: none, address read from Super I/O config space
24 24 Datasheet: Available from the Fintek website
  25 + * Fintek F71869A
  26 + Prefix: 'f71869a'
  27 + Addresses scanned: none, address read from Super I/O config space
  28 + Datasheet: Not public
25 29 * Fintek F71882FG and F71883FG
26 30 Prefix: 'f71882fg'
27 31 Addresses scanned: none, address read from Super I/O config space
drivers/hwmon/Kconfig
... ... @@ -333,7 +333,7 @@
333 333 F71858FG
334 334 F71862FG
335 335 F71863FG
336   - F71869F/E
  336 + F71869F/E/A
337 337 F71882FG
338 338 F71883FG
339 339 F71889FG/ED/A
drivers/hwmon/f71882fg.c
... ... @@ -52,6 +52,7 @@
52 52 #define SIO_F71858_ID 0x0507 /* Chipset ID */
53 53 #define SIO_F71862_ID 0x0601 /* Chipset ID */
54 54 #define SIO_F71869_ID 0x0814 /* Chipset ID */
  55 +#define SIO_F71869A_ID 0x1007 /* Chipset ID */
55 56 #define SIO_F71882_ID 0x0541 /* Chipset ID */
56 57 #define SIO_F71889_ID 0x0723 /* Chipset ID */
57 58 #define SIO_F71889E_ID 0x0909 /* Chipset ID */
... ... @@ -108,8 +109,8 @@
108 109 module_param(force_id, ushort, 0);
109 110 MODULE_PARM_DESC(force_id, "Override the detected device ID");
110 111  
111   -enum chips { f71808e, f71808a, f71858fg, f71862fg, f71869, f71882fg, f71889fg,
112   - f71889ed, f71889a, f8000, f81865f };
  112 +enum chips { f71808e, f71808a, f71858fg, f71862fg, f71869, f71869a, f71882fg,
  113 + f71889fg, f71889ed, f71889a, f8000, f81865f };
113 114  
114 115 static const char *f71882fg_names[] = {
115 116 "f71808e",
... ... @@ -117,6 +118,7 @@
117 118 "f71858fg",
118 119 "f71862fg",
119 120 "f71869", /* Both f71869f and f71869e, reg. compatible and same id */
  121 + "f71869a",
120 122 "f71882fg",
121 123 "f71889fg", /* f81801u too, same id */
122 124 "f71889ed",
... ... @@ -131,6 +133,7 @@
131 133 [f71858fg] = { 1, 1, 1, 0, 0, 0, 0, 0, 0 },
132 134 [f71862fg] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
133 135 [f71869] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
  136 + [f71869a] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
134 137 [f71882fg] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
135 138 [f71889fg] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
136 139 [f71889ed] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 },
... ... @@ -145,6 +148,7 @@
145 148 [f71858fg] = 0,
146 149 [f71862fg] = 0,
147 150 [f71869] = 0,
  151 + [f71869a] = 0,
148 152 [f71882fg] = 1,
149 153 [f71889fg] = 1,
150 154 [f71889ed] = 1,
... ... @@ -159,6 +163,7 @@
159 163 [f71858fg] = 0,
160 164 [f71862fg] = 1,
161 165 [f71869] = 1,
  166 + [f71869a] = 1,
162 167 [f71882fg] = 1,
163 168 [f71889fg] = 1,
164 169 [f71889ed] = 1,
... ... @@ -173,6 +178,7 @@
173 178 [f71858fg] = 3,
174 179 [f71862fg] = 3,
175 180 [f71869] = 3,
  181 + [f71869a] = 3,
176 182 [f71882fg] = 4,
177 183 [f71889fg] = 3,
178 184 [f71889ed] = 3,
... ... @@ -187,6 +193,7 @@
187 193 [f71858fg] = 0,
188 194 [f71862fg] = 1,
189 195 [f71869] = 1,
  196 + [f71869a] = 1,
190 197 [f71882fg] = 1,
191 198 [f71889fg] = 1,
192 199 [f71889ed] = 1,
... ... @@ -201,6 +208,7 @@
201 208 [f71858fg] = 3,
202 209 [f71862fg] = 3,
203 210 [f71869] = 3,
  211 + [f71869a] = 3,
204 212 [f71882fg] = 3,
205 213 [f71889fg] = 3,
206 214 [f71889ed] = 3,
... ... @@ -2243,6 +2251,7 @@
2243 2251 case f71808e:
2244 2252 case f71808a:
2245 2253 case f71869:
  2254 + case f71869a:
2246 2255 /* These always have signed auto point temps */
2247 2256 data->auto_point_temp_signed = 1;
2248 2257 /* Fall through to select correct fan/pwm reg bank! */
... ... @@ -2305,6 +2314,7 @@
2305 2314 case f71808e:
2306 2315 case f71808a:
2307 2316 case f71869:
  2317 + case f71869a:
2308 2318 case f71889fg:
2309 2319 case f71889ed:
2310 2320 case f71889a:
... ... @@ -2527,6 +2537,9 @@
2527 2537 break;
2528 2538 case SIO_F71869_ID:
2529 2539 sio_data->type = f71869;
  2540 + break;
  2541 + case SIO_F71869A_ID:
  2542 + sio_data->type = f71869a;
2530 2543 break;
2531 2544 case SIO_F71882_ID:
2532 2545 sio_data->type = f71882fg;