diff --git a/kernel/chips/mtp008.c b/kernel/chips/mtp008.c index 67fe0939..ae5b0513 100644 --- a/kernel/chips/mtp008.c +++ b/kernel/chips/mtp008.c @@ -193,51 +193,6 @@ static inline u8 FAN_TO_REG(long rpm, int div) #define PWM_TO_REG(val) (val) #define PWMENABLE_FROM_REG(nr, val) (((val) >> ((nr) + 3)) & 1) -/* Initial limits */ -#define MTP008_INIT_IN_0 (vid) /* VCore 1 */ -#define MTP008_INIT_IN_1 330 /* +3.3V */ -#define MTP008_INIT_IN_2 (1200 * 10 / 38) /* +12V */ -#define MTP008_INIT_IN_3 (vid) /* VCore 2 */ -#define MTP008_INIT_IN_5 ((11861 + 7 * (-1200)) / 36) /* -12V */ -#define MTP008_INIT_IN_6 150 /* Vtt */ - -#define MTP008_INIT_IN_PCT 10 - -#define MTP008_INIT_IN_MIN_0 (MTP008_INIT_IN_0 - \ - MTP008_INIT_IN_0 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MAX_0 (MTP008_INIT_IN_0 + \ - MTP008_INIT_IN_0 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MIN_1 (MTP008_INIT_IN_1 - \ - MTP008_INIT_IN_1 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MAX_1 (MTP008_INIT_IN_1 + \ - MTP008_INIT_IN_1 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MIN_2 (MTP008_INIT_IN_2 - \ - MTP008_INIT_IN_2 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MAX_2 (MTP008_INIT_IN_2 + \ - MTP008_INIT_IN_2 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MIN_3 (MTP008_INIT_IN_3 - \ - MTP008_INIT_IN_3 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MAX_3 (MTP008_INIT_IN_3 + \ - MTP008_INIT_IN_3 * MTP008_INIT_IN_PCT / 100) - -#define MTP008_INIT_IN_MIN_5 (MTP008_INIT_IN_5 - \ - MTP008_INIT_IN_5 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MAX_5 (MTP008_INIT_IN_5 + \ - MTP008_INIT_IN_5 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MIN_6 (MTP008_INIT_IN_6 - \ - MTP008_INIT_IN_6 * MTP008_INIT_IN_PCT / 100) -#define MTP008_INIT_IN_MAX_6 (MTP008_INIT_IN_6 + \ - MTP008_INIT_IN_6 * MTP008_INIT_IN_PCT / 100) - -#define MTP008_INIT_FAN_MIN_1 3000 -#define MTP008_INIT_FAN_MIN_2 3000 -#define MTP008_INIT_FAN_MIN_3 3000 - -#define MTP008_INIT_TEMP_OVER 700 /* 70 Celsius */ -#define MTP008_INIT_TEMP_HYST 500 /* 50 Celsius */ -#define MTP008_INIT_TEMP2_OVER 700 /* 70 Celsius */ -#define MTP008_INIT_TEMP2_HYST 500 /* 50 Celsius */ - /* * For each registered MTP008, we need to keep some data in memory. The * structure itself is dynamically allocated, at the same time when a new @@ -551,7 +506,6 @@ static int mtp008_write_value(struct i2c_client *client, u8 reg, u8 value) /* Called when we have found a new MTP008. It should set limits, etc. */ static void mtp008_init_client(struct i2c_client *client) { - int vid; u8 save1, save2; struct mtp008_data *data; @@ -570,65 +524,6 @@ static void mtp008_init_client(struct i2c_client *client) mtp008_getsensortype(data, save2); - /* - * Retrieve the VID setting (needed for the default limits). - */ - vid = mtp008_read_value(client, MTP008_REG_VID_FANDIV) & 0x0f; - vid |= (mtp008_read_value(client, MTP008_REG_RESET_VID4) & 0x01) << 4; - vid = VID_FROM_REG(vid); - - /* - * Set the default limits. - * - * Setting temp sensors is done as follows: - * - * Register 0x57: 0 0 0 0 x x x x - * | \ / +-- AIN5/VT3 - * | +----- AIN4/VT2/PII - * +-------- VT1/PII - */ - - mtp008_write_value(client, MTP008_REG_IN_MAX(0), - IN_TO_REG(MTP008_INIT_IN_MAX_0)); - mtp008_write_value(client, MTP008_REG_IN_MIN(0), - IN_TO_REG(MTP008_INIT_IN_MIN_0)); - mtp008_write_value(client, MTP008_REG_IN_MAX(1), - IN_TO_REG(MTP008_INIT_IN_MAX_1)); - mtp008_write_value(client, MTP008_REG_IN_MIN(1), - IN_TO_REG(MTP008_INIT_IN_MIN_1)); - mtp008_write_value(client, MTP008_REG_IN_MAX(2), - IN_TO_REG(MTP008_INIT_IN_MAX_2)); - mtp008_write_value(client, MTP008_REG_IN_MIN(2), - IN_TO_REG(MTP008_INIT_IN_MIN_2)); - mtp008_write_value(client, MTP008_REG_IN_MAX(3), - IN_TO_REG(MTP008_INIT_IN_MAX_3)); - mtp008_write_value(client, MTP008_REG_IN_MIN(3), - IN_TO_REG(MTP008_INIT_IN_MIN_3)); - - mtp008_write_value(client, MTP008_REG_IN_MAX(5), - IN_TO_REG(MTP008_INIT_IN_MAX_5)); - mtp008_write_value(client, MTP008_REG_IN_MIN(5), - IN_TO_REG(MTP008_INIT_IN_MIN_5)); - mtp008_write_value(client, MTP008_REG_IN_MAX(6), - IN_TO_REG(MTP008_INIT_IN_MAX_6)); - mtp008_write_value(client, MTP008_REG_IN_MIN(6), - IN_TO_REG(MTP008_INIT_IN_MIN_6)); - - mtp008_write_value(client, MTP008_REG_TEMP_MAX, - TEMP_TO_REG(MTP008_INIT_TEMP_OVER)); - mtp008_write_value(client, MTP008_REG_TEMP_MIN, - TEMP_TO_REG(MTP008_INIT_TEMP_HYST)); - mtp008_write_value(client, MTP008_REG_IN_MAX(4), - TEMP_TO_REG(MTP008_INIT_TEMP2_OVER)); - mtp008_write_value(client, MTP008_REG_IN_MIN(4), - TEMP_TO_REG(MTP008_INIT_TEMP2_HYST)); - - mtp008_write_value(client, MTP008_REG_FAN_MIN(1), - FAN_TO_REG(MTP008_INIT_FAN_MIN_1, 2)); - mtp008_write_value(client, MTP008_REG_FAN_MIN(2), - FAN_TO_REG(MTP008_INIT_FAN_MIN_2, 2)); - mtp008_write_value(client, MTP008_REG_FAN_MIN(3), - FAN_TO_REG(MTP008_INIT_FAN_MIN_3, 2)); /* * Start monitoring. diff --git a/kernel/chips/sis5595.c b/kernel/chips/sis5595.c index 90d003f0..437c89f6 100644 --- a/kernel/chips/sis5595.c +++ b/kernel/chips/sis5595.c @@ -169,43 +169,6 @@ static inline u8 FAN_TO_REG(long rpm, int div) #define DIV_FROM_REG(val) (1 << (val)) #define DIV_TO_REG(val) ((val)==8?3:(val)==4?2:(val)==1?0:1) -/* Initial limits. To keep them sane, we use the 'standard' translation as - specified in the SIS5595 sheet. Use the config file to set better limits. */ -#define SIS5595_INIT_IN_0 (((1200) * 10)/38) -#define SIS5595_INIT_IN_1 (((500) * 100)/168) -#define SIS5595_INIT_IN_2 330 -#define SIS5595_INIT_IN_3 250 -#define SIS5595_INIT_IN_4 250 - -#define SIS5595_INIT_IN_PERCENTAGE 10 - -#define SIS5595_INIT_IN_MIN_0 \ - (SIS5595_INIT_IN_0 - SIS5595_INIT_IN_0 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MAX_0 \ - (SIS5595_INIT_IN_0 + SIS5595_INIT_IN_0 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MIN_1 \ - (SIS5595_INIT_IN_1 - SIS5595_INIT_IN_1 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MAX_1 \ - (SIS5595_INIT_IN_1 + SIS5595_INIT_IN_1 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MIN_2 \ - (SIS5595_INIT_IN_2 - SIS5595_INIT_IN_2 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MAX_2 \ - (SIS5595_INIT_IN_2 + SIS5595_INIT_IN_2 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MIN_3 \ - (SIS5595_INIT_IN_3 - SIS5595_INIT_IN_3 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MAX_3 \ - (SIS5595_INIT_IN_3 + SIS5595_INIT_IN_3 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MIN_4 \ - (SIS5595_INIT_IN_4 - SIS5595_INIT_IN_4 * SIS5595_INIT_IN_PERCENTAGE / 100) -#define SIS5595_INIT_IN_MAX_4 \ - (SIS5595_INIT_IN_4 + SIS5595_INIT_IN_4 * SIS5595_INIT_IN_PERCENTAGE / 100) - -#define SIS5595_INIT_FAN_MIN_1 3000 -#define SIS5595_INIT_FAN_MIN_2 3000 - -#define SIS5595_INIT_TEMP_OVER 600 -#define SIS5595_INIT_TEMP_HYST 100 - /* For the SIS5595, we need to keep some data in memory. That data is pointed to by sis5595_list[NR]->data. The structure itself is dynamically allocated, at the time when the new sis5595 client is @@ -542,38 +505,6 @@ static void sis5595_init_client(struct i2c_client *client) This sets fan-divs to 2, among others */ sis5595_write_value(client, SIS5595_REG_CONFIG, 0x80); - sis5595_write_value(client, SIS5595_REG_IN_MIN(0), - IN_TO_REG(SIS5595_INIT_IN_MIN_0)); - sis5595_write_value(client, SIS5595_REG_IN_MAX(0), - IN_TO_REG(SIS5595_INIT_IN_MAX_0)); - sis5595_write_value(client, SIS5595_REG_IN_MIN(1), - IN_TO_REG(SIS5595_INIT_IN_MIN_1)); - sis5595_write_value(client, SIS5595_REG_IN_MAX(1), - IN_TO_REG(SIS5595_INIT_IN_MAX_1)); - sis5595_write_value(client, SIS5595_REG_IN_MIN(2), - IN_TO_REG(SIS5595_INIT_IN_MIN_2)); - sis5595_write_value(client, SIS5595_REG_IN_MAX(2), - IN_TO_REG(SIS5595_INIT_IN_MAX_2)); - sis5595_write_value(client, SIS5595_REG_IN_MIN(3), - IN_TO_REG(SIS5595_INIT_IN_MIN_3)); - sis5595_write_value(client, SIS5595_REG_IN_MAX(3), - IN_TO_REG(SIS5595_INIT_IN_MAX_3)); - sis5595_write_value(client, SIS5595_REG_FAN_MIN(1), - FAN_TO_REG(SIS5595_INIT_FAN_MIN_1, 2)); - sis5595_write_value(client, SIS5595_REG_FAN_MIN(2), - FAN_TO_REG(SIS5595_INIT_FAN_MIN_2, 2)); - if(data->maxins == 4) { - sis5595_write_value(client, SIS5595_REG_IN_MIN(4), - IN_TO_REG(SIS5595_INIT_IN_MIN_4)); - sis5595_write_value(client, SIS5595_REG_IN_MAX(4), - IN_TO_REG(SIS5595_INIT_IN_MAX_4)); - } else { - sis5595_write_value(client, SIS5595_REG_TEMP_OVER, - TEMP_TO_REG(SIS5595_INIT_TEMP_OVER)); - sis5595_write_value(client, SIS5595_REG_TEMP_HYST, - TEMP_TO_REG(SIS5595_INIT_TEMP_HYST)); - } - /* Start monitoring */ sis5595_write_value(client, SIS5595_REG_CONFIG, (sis5595_read_value(client, SIS5595_REG_CONFIG) diff --git a/kernel/chips/smsc47m1.c b/kernel/chips/smsc47m1.c index 95a7584b..e11da8c8 100644 --- a/kernel/chips/smsc47m1.c +++ b/kernel/chips/smsc47m1.c @@ -123,9 +123,6 @@ static inline u8 MIN_TO_REG(long rpm, int div) #define PWM_FROM_REG(val) ((((val) & 0x7f) * 1005) / 640) #define PWM_TO_REG(val) SENSORS_LIMIT((((val) * 645) / 1000), 0, 63) -#define SMSC47M1_INIT_FAN_MIN_1 3000 -#define SMSC47M1_INIT_FAN_MIN_2 3000 - struct smsc47m1_data { struct semaphore lock; int sysctl_id; @@ -346,10 +343,6 @@ static void smsc47m1_init_client(struct i2c_client *client) /* configure pins for tach function */ smsc47m1_write_value(client, SMSC47M1_REG_TPIN1, 0x05); smsc47m1_write_value(client, SMSC47M1_REG_TPIN2, 0x05); - smsc47m1_write_value(client, SMSC47M1_REG_FAN_MIN(1), - MIN_TO_REG(SMSC47M1_INIT_FAN_MIN_1, 2)); - smsc47m1_write_value(client, SMSC47M1_REG_FAN_MIN(2), - MIN_TO_REG(SMSC47M1_INIT_FAN_MIN_2, 2)); } static void smsc47m1_update_client(struct i2c_client *client) diff --git a/kernel/chips/thmc50.c b/kernel/chips/thmc50.c index cccafbff..a1ea126a 100644 --- a/kernel/chips/thmc50.c +++ b/kernel/chips/thmc50.c @@ -71,10 +71,6 @@ SENSORS_INSMOD_1(thmc50); #define TEMP_FROM_REG(val) ((val>127)?val - 0x0100:val) #define TEMP_TO_REG(val) ((val<0)?0x0100+val:val) -/* Initial values */ -#define THMC50_INIT_TEMP_OS 60 -#define THMC50_INIT_TEMP_HYST 50 - /* Each client has this additional data */ struct thmc50_data { int sysctl_id; @@ -308,11 +304,6 @@ static int thmc50_write_value(struct i2c_client *client, u8 reg, u16 value) static void thmc50_init_client(struct i2c_client *client) { - /* Initialize the THMC50 chip */ - thmc50_write_value(client, THMC50_REG_TEMP_OS, - TEMP_TO_REG(THMC50_INIT_TEMP_OS)); - thmc50_write_value(client, THMC50_REG_TEMP_HYST, - TEMP_TO_REG(THMC50_INIT_TEMP_HYST)); thmc50_write_value(client, THMC50_REG_CONF, 1); } diff --git a/kernel/chips/via686a.c b/kernel/chips/via686a.c index f1c25f00..91c3fd3e 100644 --- a/kernel/chips/via686a.c +++ b/kernel/chips/via686a.c @@ -330,41 +330,6 @@ static inline long TEMP_FROM_REG10(u16 val) #define DIV_FROM_REG(val) (1 << (val)) #define DIV_TO_REG(val) ((val)==8?3:(val)==4?2:(val)==1?0:1) -/* Initial limits */ -#define VIA686A_INIT_IN_0 200 -#define VIA686A_INIT_IN_1 250 -#define VIA686A_INIT_IN_2 330 -#define VIA686A_INIT_IN_3 500 -#define VIA686A_INIT_IN_4 1200 - -#define VIA686A_INIT_IN_PERCENTAGE 10 - -#define VIA686A_INIT_IN_MIN_0 (VIA686A_INIT_IN_0 - VIA686A_INIT_IN_0 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MAX_0 (VIA686A_INIT_IN_0 + VIA686A_INIT_IN_0 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MIN_1 (VIA686A_INIT_IN_1 - VIA686A_INIT_IN_1 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MAX_1 (VIA686A_INIT_IN_1 + VIA686A_INIT_IN_1 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MIN_2 (VIA686A_INIT_IN_2 - VIA686A_INIT_IN_2 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MAX_2 (VIA686A_INIT_IN_2 + VIA686A_INIT_IN_2 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MIN_3 (VIA686A_INIT_IN_3 - VIA686A_INIT_IN_3 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MAX_3 (VIA686A_INIT_IN_3 + VIA686A_INIT_IN_3 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MIN_4 (VIA686A_INIT_IN_4 - VIA686A_INIT_IN_4 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) -#define VIA686A_INIT_IN_MAX_4 (VIA686A_INIT_IN_4 + VIA686A_INIT_IN_4 \ - * VIA686A_INIT_IN_PERCENTAGE / 100) - -#define VIA686A_INIT_FAN_MIN 3000 - -#define VIA686A_INIT_TEMP_OVER 600 -#define VIA686A_INIT_TEMP_HYST 500 - /* For the VIA686A, we need to keep some data in memory. That data is pointed to by via686a_list[NR]->data. The structure itself is dynamically allocated, at the same time when a new via686a client is @@ -637,37 +602,6 @@ static void via686a_init_client(struct i2c_client *client) clears in about 2-4 udelays and that isn't nearly enough. */ udelay(50); - via686a_write_value(client, VIA686A_REG_IN_MIN(0), - IN_TO_REG(VIA686A_INIT_IN_MIN_0, 0)); - via686a_write_value(client, VIA686A_REG_IN_MAX(0), - IN_TO_REG(VIA686A_INIT_IN_MAX_0, 0)); - via686a_write_value(client, VIA686A_REG_IN_MIN(1), - IN_TO_REG(VIA686A_INIT_IN_MIN_1, 1)); - via686a_write_value(client, VIA686A_REG_IN_MAX(1), - IN_TO_REG(VIA686A_INIT_IN_MAX_1, 1)); - via686a_write_value(client, VIA686A_REG_IN_MIN(2), - IN_TO_REG(VIA686A_INIT_IN_MIN_2, 2)); - via686a_write_value(client, VIA686A_REG_IN_MAX(2), - IN_TO_REG(VIA686A_INIT_IN_MAX_2, 2)); - via686a_write_value(client, VIA686A_REG_IN_MIN(3), - IN_TO_REG(VIA686A_INIT_IN_MIN_3, 3)); - via686a_write_value(client, VIA686A_REG_IN_MAX(3), - IN_TO_REG(VIA686A_INIT_IN_MAX_3, 3)); - via686a_write_value(client, VIA686A_REG_IN_MIN(4), - IN_TO_REG(VIA686A_INIT_IN_MIN_4, 4)); - via686a_write_value(client, VIA686A_REG_IN_MAX(4), - IN_TO_REG(VIA686A_INIT_IN_MAX_4, 4)); - via686a_write_value(client, VIA686A_REG_FAN_MIN(1), - FAN_TO_REG(VIA686A_INIT_FAN_MIN, 2)); - via686a_write_value(client, VIA686A_REG_FAN_MIN(2), - FAN_TO_REG(VIA686A_INIT_FAN_MIN, 2)); - for (i = 1; i <= 3; i++) { - via686a_write_value(client, VIA686A_REG_TEMP_OVER(i), - TEMP_TO_REG(VIA686A_INIT_TEMP_OVER)); - via686a_write_value(client, VIA686A_REG_TEMP_HYST(i), - TEMP_TO_REG(VIA686A_INIT_TEMP_HYST)); - } - /* Start monitoring */ via686a_write_value(client, VIA686A_REG_CONFIG, 0x01); diff --git a/kernel/chips/w83627hf.c b/kernel/chips/w83627hf.c index ed710c2d..b2a11312 100644 --- a/kernel/chips/w83627hf.c +++ b/kernel/chips/w83627hf.c @@ -245,104 +245,6 @@ static inline u8 DIV_TO_REG(long val) return ((u8) i); } -/* Initial limits */ -#define W83781D_INIT_IN_0 (vid==3500?280:vid/10) -#define W83781D_INIT_IN_1 (vid==3500?280:vid/10) -#define W83781D_INIT_IN_2 330 -#define W83781D_INIT_IN_3 (((500) * 100)/168) -#define W83781D_INIT_IN_4 (((1200) * 10)/38) -#define W83781D_INIT_IN_5 (((-1200) * -604)/2100) -#define W83781D_INIT_IN_6 (((-500) * -604)/909) -#define W83781D_INIT_IN_7 (((500) * 100)/168) -#define W83781D_INIT_IN_8 300 -/* Initial limits for 782d/783s negative voltages */ -/* Note level shift. Change min/max below if you change these. */ -#define W83782D_INIT_IN_5 ((((-1200) + 1491) * 100)/514) -#define W83782D_INIT_IN_6 ((( (-500) + 771) * 100)/314) - -#define W83781D_INIT_IN_PERCENTAGE 10 - -#define W83781D_INIT_IN_MIN_0 \ - (W83781D_INIT_IN_0 - W83781D_INIT_IN_0 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_0 \ - (W83781D_INIT_IN_0 + W83781D_INIT_IN_0 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_1 \ - (W83781D_INIT_IN_1 - W83781D_INIT_IN_1 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_1 \ - (W83781D_INIT_IN_1 + W83781D_INIT_IN_1 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_2 \ - (W83781D_INIT_IN_2 - W83781D_INIT_IN_2 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_2 \ - (W83781D_INIT_IN_2 + W83781D_INIT_IN_2 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_3 \ - (W83781D_INIT_IN_3 - W83781D_INIT_IN_3 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_3 \ - (W83781D_INIT_IN_3 + W83781D_INIT_IN_3 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_4 \ - (W83781D_INIT_IN_4 - W83781D_INIT_IN_4 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_4 \ - (W83781D_INIT_IN_4 + W83781D_INIT_IN_4 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_5 \ - (W83781D_INIT_IN_5 - W83781D_INIT_IN_5 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_5 \ - (W83781D_INIT_IN_5 + W83781D_INIT_IN_5 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_6 \ - (W83781D_INIT_IN_6 - W83781D_INIT_IN_6 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_6 \ - (W83781D_INIT_IN_6 + W83781D_INIT_IN_6 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_7 \ - (W83781D_INIT_IN_7 - W83781D_INIT_IN_7 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_7 \ - (W83781D_INIT_IN_7 + W83781D_INIT_IN_7 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MIN_8 \ - (W83781D_INIT_IN_8 - W83781D_INIT_IN_8 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -#define W83781D_INIT_IN_MAX_8 \ - (W83781D_INIT_IN_8 + W83781D_INIT_IN_8 * W83781D_INIT_IN_PERCENTAGE \ - / 100) -/* Initial limits for 782d/783s negative voltages */ -/* These aren't direct multiples because of level shift */ -/* Beware going negative - check */ -#define W83782D_INIT_IN_MIN_5_TMP \ - (((-1200 * (100 + W83781D_INIT_IN_PERCENTAGE)) + (1491 * 100))/514) -#define W83782D_INIT_IN_MIN_5 \ - ((W83782D_INIT_IN_MIN_5_TMP > 0) ? W83782D_INIT_IN_MIN_5_TMP : 0) -#define W83782D_INIT_IN_MAX_5 \ - (((-1200 * (100 - W83781D_INIT_IN_PERCENTAGE)) + (1491 * 100))/514) -#define W83782D_INIT_IN_MIN_6_TMP \ - ((( -500 * (100 + W83781D_INIT_IN_PERCENTAGE)) + (771 * 100))/314) -#define W83782D_INIT_IN_MIN_6 \ - ((W83782D_INIT_IN_MIN_6_TMP > 0) ? W83782D_INIT_IN_MIN_6_TMP : 0) -#define W83782D_INIT_IN_MAX_6 \ - ((( -500 * (100 - W83781D_INIT_IN_PERCENTAGE)) + (771 * 100))/314) - -#define W83781D_INIT_FAN_MIN_1 3000 -#define W83781D_INIT_FAN_MIN_2 3000 -#define W83781D_INIT_FAN_MIN_3 3000 - -#define W83781D_INIT_TEMP_OVER 600 -#define W83781D_INIT_TEMP_HYST 1270 /* must be 127 for ALARM to work */ -#define W83781D_INIT_TEMP2_OVER 600 -#define W83781D_INIT_TEMP2_HYST 500 -#define W83781D_INIT_TEMP3_OVER 600 -#define W83781D_INIT_TEMP3_HYST 500 - /* There are some complications in a module like this. First off, W83781D chips may be both present on the SMBus and the ISA bus, and we have to handle those cases separately at some places. Second, there might be several @@ -968,80 +870,7 @@ static void w83627hf_init_client(struct i2c_client *client) data->pwmenable[2] = 1; if(init) { - w83627hf_write_value(client, W83781D_REG_IN_MIN(0), - IN_TO_REG(W83781D_INIT_IN_MIN_0)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(0), - IN_TO_REG(W83781D_INIT_IN_MAX_0)); if (type != w83697hf) { - w83627hf_write_value(client, W83781D_REG_IN_MIN(1), - IN_TO_REG(W83781D_INIT_IN_MIN_1)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(1), - IN_TO_REG(W83781D_INIT_IN_MAX_1)); - } - - w83627hf_write_value(client, W83781D_REG_IN_MIN(2), - IN_TO_REG(W83781D_INIT_IN_MIN_2)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(2), - IN_TO_REG(W83781D_INIT_IN_MAX_2)); - w83627hf_write_value(client, W83781D_REG_IN_MIN(3), - IN_TO_REG(W83781D_INIT_IN_MIN_3)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(3), - IN_TO_REG(W83781D_INIT_IN_MAX_3)); - w83627hf_write_value(client, W83781D_REG_IN_MIN(4), - IN_TO_REG(W83781D_INIT_IN_MIN_4)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(4), - IN_TO_REG(W83781D_INIT_IN_MAX_4)); - if (type != w83627thf) { - w83627hf_write_value(client, W83781D_REG_IN_MIN(5), - IN_TO_REG(W83782D_INIT_IN_MIN_5)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(5), - IN_TO_REG(W83782D_INIT_IN_MAX_5)); - w83627hf_write_value(client, W83781D_REG_IN_MIN(6), - IN_TO_REG(W83782D_INIT_IN_MIN_6)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(6), - IN_TO_REG(W83782D_INIT_IN_MAX_6)); - } - w83627hf_write_value(client, W83781D_REG_IN_MIN(7), - IN_TO_REG(W83781D_INIT_IN_MIN_7)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(7), - IN_TO_REG(W83781D_INIT_IN_MAX_7)); - w83627hf_write_value(client, W83781D_REG_IN_MIN(8), - IN_TO_REG(W83781D_INIT_IN_MIN_8)); - w83627hf_write_value(client, W83781D_REG_IN_MAX(8), - IN_TO_REG(W83781D_INIT_IN_MAX_8)); - w83627hf_write_value(client, W83781D_REG_VBAT, - (w83627hf_read_value(client, W83781D_REG_VBAT) | 0x01)); - w83627hf_write_value(client, W83781D_REG_FAN_MIN(1), - FAN_TO_REG(W83781D_INIT_FAN_MIN_1, 2)); - w83627hf_write_value(client, W83781D_REG_FAN_MIN(2), - FAN_TO_REG(W83781D_INIT_FAN_MIN_2, 2)); - if (type != w83697hf) { - w83627hf_write_value(client, W83781D_REG_FAN_MIN(3), - FAN_TO_REG(W83781D_INIT_FAN_MIN_3, 2)); - } - - w83627hf_write_value(client, W83781D_REG_TEMP_OVER, - TEMP_TO_REG(W83781D_INIT_TEMP_OVER)); - w83627hf_write_value(client, W83781D_REG_TEMP_HYST, - TEMP_TO_REG(W83781D_INIT_TEMP_HYST)); - - w83627hf_write_value(client, W83781D_REG_TEMP2_OVER, - TEMP_ADD_TO_REG - (W83781D_INIT_TEMP2_OVER)); - w83627hf_write_value(client, W83781D_REG_TEMP2_HYST, - TEMP_ADD_TO_REG - (W83781D_INIT_TEMP2_HYST)); - w83627hf_write_value(client, W83781D_REG_TEMP2_CONFIG, 0x00); - - if (type != w83697hf) { - w83627hf_write_value(client, W83781D_REG_TEMP3_OVER, - TEMP_ADD_TO_REG - (W83781D_INIT_TEMP3_OVER)); - w83627hf_write_value(client, W83781D_REG_TEMP3_HYST, - TEMP_ADD_TO_REG - (W83781D_INIT_TEMP3_HYST)); - w83627hf_write_value(client, W83781D_REG_TEMP3_CONFIG, - 0x00); /* enable PWM2 control (can't hurt since PWM reg should have been reset to 0xff) */ w83627hf_write_value(client, W83781D_REG_PWMCLK12, 0x19);