HWMON: Convert coretemp to x86 cpuid autoprobing
Use the new x86 cpuid autoprobe interface for the Intel coretemp driver. Cc: Fenghua Yu <fenghua.yu@intel.com> Cc: Jean Delvare <khali@linux-fr.org> Cc: Guenter Roeck <guenter.roeck@ericsson.com> Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Thomas Renninger <trenn@suse.de> Acked-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
267fc9788d
commit
9b38096fde
@ -39,6 +39,7 @@
|
|||||||
#include <linux/moduleparam.h>
|
#include <linux/moduleparam.h>
|
||||||
#include <asm/msr.h>
|
#include <asm/msr.h>
|
||||||
#include <asm/processor.h>
|
#include <asm/processor.h>
|
||||||
|
#include <asm/cpu_device_id.h>
|
||||||
|
|
||||||
#define DRVNAME "coretemp"
|
#define DRVNAME "coretemp"
|
||||||
|
|
||||||
@ -759,13 +760,23 @@ static struct notifier_block coretemp_cpu_notifier __refdata = {
|
|||||||
.notifier_call = coretemp_cpu_callback,
|
.notifier_call = coretemp_cpu_callback,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const struct x86_cpu_id coretemp_ids[] = {
|
||||||
|
{ X86_VENDOR_INTEL, X86_FAMILY_ANY, X86_MODEL_ANY, X86_FEATURE_DTS },
|
||||||
|
{}
|
||||||
|
};
|
||||||
|
MODULE_DEVICE_TABLE(x86cpu, coretemp_ids);
|
||||||
|
|
||||||
static int __init coretemp_init(void)
|
static int __init coretemp_init(void)
|
||||||
{
|
{
|
||||||
int i, err = -ENODEV;
|
int i, err = -ENODEV;
|
||||||
|
|
||||||
/* quick check if we run Intel */
|
/*
|
||||||
if (cpu_data(0).x86_vendor != X86_VENDOR_INTEL)
|
* CPUID.06H.EAX[0] indicates whether the CPU has thermal
|
||||||
goto exit;
|
* sensors. We check this bit only, all the early CPUs
|
||||||
|
* without thermal sensors will be filtered out.
|
||||||
|
*/
|
||||||
|
if (!x86_match_cpu(coretemp_ids))
|
||||||
|
return -ENODEV;
|
||||||
|
|
||||||
err = platform_driver_register(&coretemp_driver);
|
err = platform_driver_register(&coretemp_driver);
|
||||||
if (err)
|
if (err)
|
||||||
|
Loading…
Reference in New Issue
Block a user