Re: [PATCH v2] hwmon: (coretemp) Fix TjMax detection for older CPUs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Guenter Roeck [mailto:guenter.roeck@xxxxxxxxxxxx]
> Sent: Wednesday, June 01, 2011 8:51 AM
> To: lm-sensors@xxxxxxxxxxxxxx; Jean Delvare
> Cc: Guenter Roeck; Huaxu Wan; Carsten Emde; Valdis Kletnieks; Henrique
> de Moraes Holschuh; Yong Wang; Rudolf Marek; Yu, Fenghua
> Subject: [PATCH v2] hwmon: (coretemp) Fix TjMax detection for older
> CPUs
> 
> Commit a321cedb12904114e2ba5041a3673ca24deb09c9 excludes CPU models
> 0xe, 0xf,
> 0x16, and 0x1a from TjMax temperature adjustment, even though several
> of those
> CPUs are known to have TiMax other than 100 degrees C, and even though
> the code
> in adjust_tjmax() explicitly handles those CPUs and points to a Web
> document
> listing several of the affected CPU IDs.
> 
> Reinstate original TjMax adjustment if TjMax can not be determined
> using the
> IA32_TEMPERATURE_TARGET register.
> 
> Signed-off-by: Guenter Roeck <guenter.roeck@xxxxxxxxxxxx>
> Cc: Huaxu Wan <huaxu.wan@xxxxxxxxxxxxxxx>
> Cc: Carsten Emde <C.Emde@xxxxxxxxx>
> Cc: Valdis Kletnieks <valdis.kletnieks@xxxxxx>
> Cc: Henrique de Moraes Holschuh <hmh@xxxxxxxxxx>
> Cc: Yong Wang <yong.y.wang@xxxxxxxxxxxxxxx>
> Cc: Rudolf Marek <r.marek@xxxxxxxxxxxx>
> Cc: Fenghua Yu <fenghua.yu@xxxxxxxxx>
> ---
> v2: Call adjust_tjmax() unconditionally if reading
> IA32_TEMPERATURE_TARGET
>     failed or did not return a reasonable value for TjMax.
> 
> Note: This patch is a candidate for -stable [ .35 to .39]
> 
>  drivers/hwmon/coretemp.c |   19 ++-----------------
>  1 files changed, 2 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/hwmon/coretemp.c b/drivers/hwmon/coretemp.c
> index 0eeff46..1680977 100644
> --- a/drivers/hwmon/coretemp.c
> +++ b/drivers/hwmon/coretemp.c
> @@ -304,24 +304,9 @@ static int get_tjmax(struct cpuinfo_x86 *c, u32
> id, struct device *dev)
> 
>  	/*
>  	 * An assumption is made for early CPUs and unreadable MSR.
> -	 * NOTE: the given value may not be correct.
> +	 * NOTE: the calculated value may not be correct.
>  	 */
> -
> -	switch (c->x86_model) {
> -	case 0xe:
> -	case 0xf:
> -	case 0x16:
> -	case 0x1a:
> -		dev_warn(dev, "TjMax is assumed as 100 C!\n");
> -		return 100000;
> -	case 0x17:
> -	case 0x1c:		/* Atom CPUs */
> -		return adjust_tjmax(c, id, dev);
> -	default:
> -		dev_warn(dev, "CPU (model=0x%x) is not supported yet,"
> -			" using default TjMax of 100C.\n", c->x86_model);
> -		return 100000;
> -	}
> +	return adjust_tjmax(c, id, dev);
>  }
> 
>  static void __devinit get_ucode_rev_on_cpu(void *edx)
> --
> 1.7.3.1

Acked-by: Fenghua Yu <fenghua.yu@xxxxxxxxx>


_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors


[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux