All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs
@ 2009-12-24  7:31 Yong Wang
  2010-01-06 15:08   ` [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare
  0 siblings, 1 reply; 25+ messages in thread
From: Yong Wang @ 2009-12-24  7:31 UTC (permalink / raw)
  To: Rudolf Marek, Huaxu Wan, Jean Delvare; +Cc: lm-sensors, linux-kernel

The max junction temperature of Atom N450/D410/D510 CPUs is 100 degrees Celsius.
Since these CPUs are always coupled with Intel NM10 chipset in one package, the
best way to verify whether an Atom CPU is N450/D410/D510 is to check the host
bridge device.

Signed-off-by: Yong Wang <yong.y.wang@intel.com>
Acked-by: Huaxu Wan <huaxu.wan@intel.com>
---
 drivers/hwmon/coretemp.c |   16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/drivers/hwmon/coretemp.c b/drivers/hwmon/coretemp.c
index caef39c..65a33ec 100644
--- a/drivers/hwmon/coretemp.c
+++ b/drivers/hwmon/coretemp.c
@@ -33,6 +33,7 @@
 #include <linux/list.h>
 #include <linux/platform_device.h>
 #include <linux/cpu.h>
+#include <linux/pci.h>
 #include <asm/msr.h>
 #include <asm/processor.h>
 
@@ -161,6 +162,7 @@ static int __devinit adjust_tjmax(struct cpuinfo_x86 *c, u32 id, struct device *
 	int usemsr_ee = 1;
 	int err;
 	u32 eax, edx;
+	struct pci_dev *host_bridge;
 
 	/* Early chips have no MSR for TjMax */
 
@@ -168,11 +170,21 @@ static int __devinit adjust_tjmax(struct cpuinfo_x86 *c, u32 id, struct device *
 		usemsr_ee = 0;
 	}
 
-	/* Atoms seems to have TjMax at 90C */
+	/* Atoms CPUs */
 
 	if (c->x86_model == 0x1c) {
 		usemsr_ee = 0;
-		tjmax = 90000;
+
+		host_bridge = pci_get_bus_and_slot(0, PCI_DEVFN(0, 0));
+
+		if (host_bridge && host_bridge->vendor == PCI_VENDOR_ID_INTEL
+		    && (host_bridge->device == 0xa000	/* NM10 based nettop */
+		    || host_bridge->device == 0xa010))	/* NM10 based netbook */
+			tjmax = 100000;
+		else
+			tjmax = 90000;
+
+		pci_dev_put(host_bridge);
 	}
 
 	if ((c->x86_model > 0xe) && (usemsr_ee)) {

^ permalink raw reply related	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2010-01-18  8:33 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-24  7:31 [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Yong Wang
2010-01-06 15:08 ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Jean Delvare
2010-01-06 15:08   ` [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare
2010-01-10 19:06   ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Jean Delvare
2010-01-10 19:06     ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare
2010-01-11  6:20     ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Yong Wang
2010-01-11  6:20       ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Yong Wang
2010-01-16  2:02       ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Yuhong Bao
2010-01-16  2:02         ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Yuhong Bao
2010-01-17 15:15         ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Jean Delvare
2010-01-17 15:15           ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare
2010-01-17 19:29           ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Robert Hancock
2010-01-17 19:29             ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Robert Hancock
2010-01-17 20:05             ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Jean Delvare
2010-01-17 20:05               ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare
2010-01-18  6:58               ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Yong Wang
2010-01-18  6:58                 ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Yong Wang
2010-01-18  8:14                 ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Jean Delvare
2010-01-18  8:14                   ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare
2010-01-18  8:27                   ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Yong Wang
2010-01-18  8:27                     ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Yong Wang
2010-01-18  7:21               ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Huaxu Wan
2010-01-18  7:21                 ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Huaxu Wan
2010-01-18  8:07                 ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom Jean Delvare
2010-01-18  8:07                   ` [lm-sensors] [PATCH] hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs Jean Delvare

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.