Message ID | 1522305403-21009-1-git-send-email-davidwang@zhaoxin.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
On 03/28/2018 11:36 PM, David Wang wrote: > Newer centaur CPUs(Family == 7) also support this cpu temperature sensor. > > Signed-off-by: David Wang <davidwang@zhaoxin.com> > --- FWIW, this would be v2, not v1, and a changelog would be appreciated. > drivers/hwmon/via-cputemp.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/hwmon/via-cputemp.c b/drivers/hwmon/via-cputemp.c > index 07a0cb0..2f5bd50 100644 > --- a/drivers/hwmon/via-cputemp.c > +++ b/drivers/hwmon/via-cputemp.c > @@ -136,6 +136,11 @@ static int via_cputemp_probe(struct platform_device *pdev) > data->id = pdev->id; > data->name = "via_cputemp"; > > + if (c->x86 == 7) { > + data->msr_temp = 0x1423; > + goto test_access; > + } Please rework to not require a goto. Something like if (c->x86 == 7) { data->msr_temp = 0x1423; } else switch (c->x86_model) { ... } should do. Thanks, Guenter > + > switch (c->x86_model) { > case 0xA: > /* C7 A */ > @@ -152,6 +157,7 @@ static int via_cputemp_probe(struct platform_device *pdev) > return -ENODEV; > } > > +test_access: > /* test if we can access the TEMPERATURE MSR */ > err = rdmsr_safe_on_cpu(data->id, data->msr_temp, &eax, &edx); > if (err) { > @@ -283,6 +289,7 @@ static int via_cputemp_down_prep(unsigned int cpu) > { X86_VENDOR_CENTAUR, 6, 0xa, }, /* C7 A */ > { X86_VENDOR_CENTAUR, 6, 0xd, }, /* C7 D */ > { X86_VENDOR_CENTAUR, 6, 0xf, }, /* Nano */ > + { X86_VENDOR_CENTAUR, 7, X86_MODEL_ANY, }, > {} > }; > MODULE_DEVICE_TABLE(x86cpu, cputemp_ids); > -- To unsubscribe from this list: send the line "unsubscribe linux-hwmon" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/hwmon/via-cputemp.c b/drivers/hwmon/via-cputemp.c index 07a0cb0..2f5bd50 100644 --- a/drivers/hwmon/via-cputemp.c +++ b/drivers/hwmon/via-cputemp.c @@ -136,6 +136,11 @@ static int via_cputemp_probe(struct platform_device *pdev) data->id = pdev->id; data->name = "via_cputemp"; + if (c->x86 == 7) { + data->msr_temp = 0x1423; + goto test_access; + } + switch (c->x86_model) { case 0xA: /* C7 A */ @@ -152,6 +157,7 @@ static int via_cputemp_probe(struct platform_device *pdev) return -ENODEV; } +test_access: /* test if we can access the TEMPERATURE MSR */ err = rdmsr_safe_on_cpu(data->id, data->msr_temp, &eax, &edx); if (err) { @@ -283,6 +289,7 @@ static int via_cputemp_down_prep(unsigned int cpu) { X86_VENDOR_CENTAUR, 6, 0xa, }, /* C7 A */ { X86_VENDOR_CENTAUR, 6, 0xd, }, /* C7 D */ { X86_VENDOR_CENTAUR, 6, 0xf, }, /* Nano */ + { X86_VENDOR_CENTAUR, 7, X86_MODEL_ANY, }, {} }; MODULE_DEVICE_TABLE(x86cpu, cputemp_ids);
Newer centaur CPUs(Family == 7) also support this cpu temperature sensor. Signed-off-by: David Wang <davidwang@zhaoxin.com> --- drivers/hwmon/via-cputemp.c | 7 +++++++ 1 file changed, 7 insertions(+)