diff options
author | Roberto De Ioris <roberto@unbit.it> | 2008-08-15 03:40:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-15 11:35:43 -0400 |
commit | 9f86f28df14e06b12908d6475ee2462f0555bf34 (patch) | |
tree | 5bdea314d60d61d8261cb95e2692c362fcd85892 | |
parent | fdfaa4833f984c6f8d44afb1fed6c0c775e6e67b (diff) |
applesmc: support for Intel iMac
This adds support for fans and temperature sensors on intel iMac.
Tested on iMac 24" 2.8ghz (iMac8,1), it supports the following sensors:
cpu A
ambient
gpu
gpu diode
gpu heatsink
hd bay 1
memory controller
optical drive
power
Signed-off-by: Roberto De Ioris <roberto@unbit.it>
Cc: Nicolas Boichat <nicolas@boichat.ch>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Mark M. Hoffman <mhoffman@lightlink.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | drivers/hwmon/applesmc.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/hwmon/applesmc.c b/drivers/hwmon/applesmc.c index aacc0c4b809c..52d842b48fae 100644 --- a/drivers/hwmon/applesmc.c +++ b/drivers/hwmon/applesmc.c | |||
@@ -98,6 +98,9 @@ static const char* temperature_sensors_sets[][36] = { | |||
98 | "TH1P", "TH2P", "TH3P", "TMAP", "TMAS", "TMBS", "TM0P", "TM0S", | 98 | "TH1P", "TH2P", "TH3P", "TMAP", "TMAS", "TMBS", "TM0P", "TM0S", |
99 | "TM1P", "TM1S", "TM2P", "TM2S", "TM3S", "TM8P", "TM8S", "TM9P", | 99 | "TM1P", "TM1S", "TM2P", "TM2S", "TM3S", "TM8P", "TM8S", "TM9P", |
100 | "TM9S", "TN0H", "TS0C", NULL }, | 100 | "TM9S", "TN0H", "TS0C", NULL }, |
101 | /* Set 5: iMac */ | ||
102 | { "TC0D", "TA0P", "TG0P", "TG0D", "TG0H", "TH0P", "Tm0P", "TO0P", | ||
103 | "Tp0C", NULL }, | ||
101 | }; | 104 | }; |
102 | 105 | ||
103 | /* List of keys used to read/write fan speeds */ | 106 | /* List of keys used to read/write fan speeds */ |
@@ -1223,6 +1226,8 @@ static __initdata struct dmi_match_data applesmc_dmi_data[] = { | |||
1223 | { .accelerometer = 0, .light = 0, .temperature_set = 3 }, | 1226 | { .accelerometer = 0, .light = 0, .temperature_set = 3 }, |
1224 | /* MacPro: temperature set 4 */ | 1227 | /* MacPro: temperature set 4 */ |
1225 | { .accelerometer = 0, .light = 0, .temperature_set = 4 }, | 1228 | { .accelerometer = 0, .light = 0, .temperature_set = 4 }, |
1229 | /* iMac: temperature set 5 */ | ||
1230 | { .accelerometer = 0, .light = 0, .temperature_set = 5 }, | ||
1226 | }; | 1231 | }; |
1227 | 1232 | ||
1228 | /* Note that DMI_MATCH(...,"MacBook") will match "MacBookPro1,1". | 1233 | /* Note that DMI_MATCH(...,"MacBook") will match "MacBookPro1,1". |
@@ -1248,6 +1253,10 @@ static __initdata struct dmi_system_id applesmc_whitelist[] = { | |||
1248 | DMI_MATCH(DMI_BOARD_VENDOR,"Apple"), | 1253 | DMI_MATCH(DMI_BOARD_VENDOR,"Apple"), |
1249 | DMI_MATCH(DMI_PRODUCT_NAME,"MacPro2") }, | 1254 | DMI_MATCH(DMI_PRODUCT_NAME,"MacPro2") }, |
1250 | (void*)&applesmc_dmi_data[4]}, | 1255 | (void*)&applesmc_dmi_data[4]}, |
1256 | { applesmc_dmi_match, "Apple iMac", { | ||
1257 | DMI_MATCH(DMI_BOARD_VENDOR,"Apple"), | ||
1258 | DMI_MATCH(DMI_PRODUCT_NAME,"iMac") }, | ||
1259 | (void*)&applesmc_dmi_data[5]}, | ||
1251 | { .ident = NULL } | 1260 | { .ident = NULL } |
1252 | }; | 1261 | }; |
1253 | 1262 | ||