Messages in this thread | | | Subject | Re: [PATCH] thermal: intel_pch_thermal: Add PCI ids for Lewisburg PCH. | From | Srinivas Pandruvada <> | Date | Thu, 16 Jan 2020 05:53:13 -0800 |
| |
On Wed, 2020-01-15 at 10:44 -0800, Andres Freund wrote: > I noticed that I couldn't read the PCH temperature on my workstation > (C620 series chipset, w/ 2x Xeon Gold 5215 CPUs) directly, but had to > go > through IPMI. Looking at the data sheet, it looks to me like the > existing intel PCH thermal driver should work without changes for > Lewisburg. Does the temperature reading match with what you read via IPMI?
The patch looks fine to me otherwise.
Thanks, Srinivas
> > I suspect there's some other PCI id's missing. But I hope somebody at > Intel would have an easier time figuring that out than I... > > Signed-off-by: Andres Freund <andres@anarazel.de> > --- > drivers/thermal/intel/intel_pch_thermal.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/thermal/intel/intel_pch_thermal.c > b/drivers/thermal/intel/intel_pch_thermal.c > index 4f0bb8f502e1..1f3ff0d489ef 100644 > --- a/drivers/thermal/intel/intel_pch_thermal.c > +++ b/drivers/thermal/intel/intel_pch_thermal.c > @@ -23,6 +23,7 @@ > #define PCH_THERMAL_DID_SKL_H 0xA131 /* Skylake PCH 100 > series */ > #define PCH_THERMAL_DID_CNL 0x9Df9 /* CNL PCH */ > #define PCH_THERMAL_DID_CNL_H 0xA379 /* CNL-H PCH */ > +#define PCH_THERMAL_DID_LWB 0xA1B1 /* Lewisburg PCH */ > > /* Wildcat Point-LP PCH Thermal registers */ > #define WPT_TEMP 0x0000 /* Temperature */ > @@ -272,6 +273,7 @@ enum board_ids { > board_wpt, > board_skl, > board_cnl, > + board_lwb, > }; > > static const struct board_info { > @@ -294,6 +296,10 @@ static const struct board_info { > .name = "pch_cannonlake", > .ops = &pch_dev_ops_wpt, > }, > + [board_lwb] = { > + .name = "pch_lewisburg", > + .ops = &pch_dev_ops_wpt, > + }, > }; > > static int intel_pch_thermal_probe(struct pci_dev *pdev, > @@ -398,6 +404,8 @@ static const struct pci_device_id > intel_pch_thermal_id[] = { > .driver_data = board_cnl, }, > { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCH_THERMAL_DID_CNL_H), > .driver_data = board_cnl, }, > + { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCH_THERMAL_DID_LWB), > + .driver_data = board_lwb, }, > { 0, }, > }; > MODULE_DEVICE_TABLE(pci, intel_pch_thermal_id);
| |