From mboxrd@z Thu Jan 1 00:00:00 1970 From: Winiarska, Iwona Date: Mon, 2 Aug 2021 11:37:30 +0000 Subject: [PATCH 13/14] docs: hwmon: Document PECI drivers In-Reply-To: <20210727225808.GU8018@packtop> References: <20210712220447.957418-1-iwona.winiarska@intel.com> <20210712220447.957418-14-iwona.winiarska@intel.com> <20210727225808.GU8018@packtop> Message-ID: List-Id: To: linux-aspeed@lists.ozlabs.org MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On Tue, 2021-07-27 at 22:58 +0000, Zev Weiss wrote: > On Mon, Jul 12, 2021 at 05:04:46PM CDT, Iwona Winiarska wrote: > > From: Jae Hyun Yoo > > > > Add documentation for peci-cputemp driver that provides DTS thermal > > readings for CPU packages and CPU cores and peci-dimmtemp driver that > > provides DTS thermal readings for DIMMs. > > > > Signed-off-by: Jae Hyun Yoo > > Co-developed-by: Iwona Winiarska > > Signed-off-by: Iwona Winiarska > > Reviewed-by: Pierre-Louis Bossart > > --- > > Documentation/hwmon/index.rst???????? |? 2 + > > Documentation/hwmon/peci-cputemp.rst? | 93 +++++++++++++++++++++++++++ > > Documentation/hwmon/peci-dimmtemp.rst | 58 +++++++++++++++++ > > MAINTAINERS?????????????????????????? |? 2 + > > 4 files changed, 155 insertions(+) > > create mode 100644 Documentation/hwmon/peci-cputemp.rst > > create mode 100644 Documentation/hwmon/peci-dimmtemp.rst > > > > diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst > > index bc01601ea81a..cc76b5b3f791 100644 > > --- a/Documentation/hwmon/index.rst > > +++ b/Documentation/hwmon/index.rst > > @@ -154,6 +154,8 @@ Hardware Monitoring Kernel Drivers > > ?? pcf8591 > > ?? pim4328 > > ?? pm6764tr > > +?? peci-cputemp > > +?? peci-dimmtemp > > ?? pmbus > > ?? powr1220 > > ?? pxe1610 > > diff --git a/Documentation/hwmon/peci-cputemp.rst > > b/Documentation/hwmon/peci-cputemp.rst > > new file mode 100644 > > index 000000000000..d3a218ba810a > > --- /dev/null > > +++ b/Documentation/hwmon/peci-cputemp.rst > > @@ -0,0 +1,93 @@ > > +.. SPDX-License-Identifier: GPL-2.0-only > > + > > +Kernel driver peci-cputemp > > +========================== > > + > > +Supported chips: > > +???????One of Intel server CPUs listed below which is connected to a PECI > > bus. > > +???????????????* Intel Xeon E5/E7 v3 server processors > > +???????????????????????Intel Xeon E5-14xx v3 family > > +???????????????????????Intel Xeon E5-24xx v3 family > > +???????????????????????Intel Xeon E5-16xx v3 family > > +???????????????????????Intel Xeon E5-26xx v3 family > > +???????????????????????Intel Xeon E5-46xx v3 family > > +???????????????????????Intel Xeon E7-48xx v3 family > > +???????????????????????Intel Xeon E7-88xx v3 family > > +???????????????* Intel Xeon E5/E7 v4 server processors > > +???????????????????????Intel Xeon E5-16xx v4 family > > +???????????????????????Intel Xeon E5-26xx v4 family > > +???????????????????????Intel Xeon E5-46xx v4 family > > +???????????????????????Intel Xeon E7-48xx v4 family > > +???????????????????????Intel Xeon E7-88xx v4 family > > +???????????????* Intel Xeon Scalable server processors > > +???????????????????????Intel Xeon D family > > +???????????????????????Intel Xeon Bronze family > > +???????????????????????Intel Xeon Silver family > > +???????????????????????Intel Xeon Gold family > > +???????????????????????Intel Xeon Platinum family > > + > > +???????Datasheet: Available from http://www.intel.com/design/literature.htm > > + > > +Author: Jae Hyun Yoo > > + > > +Description > > +----------- > > + > > +This driver implements a generic PECI hwmon feature which provides Digital > > +Thermal Sensor (DTS) thermal readings of the CPU package and CPU cores that > > are > > +accessible via the processor PECI interface. > > + > > +All temperature values are given in millidegree Celsius and will be > > measurable > > +only when the target CPU is powered on. > > + > > +Sysfs interface > > +------------------- > > + > > +======================= > > ======================================================= > > +temp1_label????????????"Die" > > +temp1_input????????????Provides current die temperature of the CPU package. > > +temp1_max??????????????Provides thermal control temperature of the CPU > > package > > +???????????????????????which is also known as Tcontrol. > > +temp1_crit?????????????Provides shutdown temperature of the CPU package > > which > > +???????????????????????is also known as the maximum processor junction > > +???????????????????????temperature, Tjmax or Tprochot. > > +temp1_crit_hyst????????????????Provides the hysteresis value from Tcontrol > > to Tjmax of > > +???????????????????????the CPU package. > > + > > +temp2_label????????????"DTS" > > +temp2_input????????????Provides current DTS temperature of the CPU package. > > Would this be a good place to note the slightly counter-intuitive nature > of DTS readings?? i.e. add something along the lines of "The DTS sensor > produces a delta relative to Tjmax, so negative values are normal and > values approaching zero are hot."? (In my experience people who aren't > already familiar with it tend to think something's wrong when a CPU > temperature reading shows -50C.) I believe that what you're referring to is a result of "GetTemp", and we're using it to calculate "Die" sensor values (temp1). The sensor value is absolute - we don't expose "raw" thermal sensor value (delta) anywhere. DTS sensor is exposing temperature value scaled to fit DTS 2.0 thermal profile: https://www.intel.com/content/www/us/en/processors/xeon/scalable/xeon-scalable-thermal-guide.html (section 5.2.3.2) Similar to "Die" sensor - it's also exposed in absolute form. I'll try to change description to avoid confusion. > > > +temp2_max??????????????Provides thermal control temperature of the CPU > > package > > +???????????????????????which is also known as Tcontrol. > > +temp2_crit?????????????Provides shutdown temperature of the CPU package which > > +???????????????????????is also known as the maximum processor junction > > +???????????????????????temperature, Tjmax or Tprochot. > > +temp2_crit_hyst????????????????Provides the hysteresis value from Tcontrol to > > Tjmax of > > +???????????????????????the CPU package. > > + > > +temp3_label????????????"Tcontrol" > > +temp3_input????????????Provides current Tcontrol temperature of the CPU > > +???????????????????????package which is also known as Fan Temperature target. > > +???????????????????????Indicates the relative value from thermal monitor trip > > +???????????????????????temperature at which fans should be engaged. > > +temp3_crit?????????????Provides Tcontrol critical value of the CPU package > > +???????????????????????which is same to Tjmax. > > + > > +temp4_label????????????"Tthrottle" > > +temp4_input????????????Provides current Tthrottle temperature of the CPU > > +???????????????????????package. Used for throttling temperature. If this > > value > > +???????????????????????is allowed and lower than Tjmax - the throttle will > > +???????????????????????occur and reported at lower than Tjmax. > > + > > +temp5_label????????????"Tjmax" > > +temp5_input????????????Provides the maximum junction temperature, Tjmax of > > the > > +???????????????????????CPU package. > > + > > +temp[6-N]_label????????????????Provides string "Core X", where X is resolved > > core > > +???????????????????????number. > > +temp[6-N]_input????????????????Provides current temperature of each core. > > +temp[6-N]_max??????????Provides thermal control temperature of the core. > > +temp[6-N]_crit?????????Provides shutdown temperature of the core. > > +temp[6-N]_crit_hyst????Provides the hysteresis value from Tcontrol to Tjmax > > of > > +???????????????????????the core. > > I only see *_label and *_input for the per-core temperature sensors, no > *_max, *_crit, or *_crit_hyst. You're right - this should be removed from documentation. > > > + > > +======================= > > ======================================================= > > diff --git a/Documentation/hwmon/peci-dimmtemp.rst b/Documentation/hwmon/peci- > > dimmtemp.rst > > new file mode 100644 > > index 000000000000..1778d9317e43 > > --- /dev/null > > +++ b/Documentation/hwmon/peci-dimmtemp.rst > > @@ -0,0 +1,58 @@ > > +.. SPDX-License-Identifier: GPL-2.0 > > + > > +Kernel driver peci-dimmtemp > > +=========================== > > + > > +Supported chips: > > +???????One of Intel server CPUs listed below which is connected to a PECI > > bus. > > +???????????????* Intel Xeon E5/E7 v3 server processors > > +???????????????????????Intel Xeon E5-14xx v3 family > > +???????????????????????Intel Xeon E5-24xx v3 family > > +???????????????????????Intel Xeon E5-16xx v3 family > > +???????????????????????Intel Xeon E5-26xx v3 family > > +???????????????????????Intel Xeon E5-46xx v3 family > > +???????????????????????Intel Xeon E7-48xx v3 family > > +???????????????????????Intel Xeon E7-88xx v3 family > > +???????????????* Intel Xeon E5/E7 v4 server processors > > +???????????????????????Intel Xeon E5-16xx v4 family > > +???????????????????????Intel Xeon E5-26xx v4 family > > +???????????????????????Intel Xeon E5-46xx v4 family > > +???????????????????????Intel Xeon E7-48xx v4 family > > +???????????????????????Intel Xeon E7-88xx v4 family > > +???????????????* Intel Xeon Scalable server processors > > +???????????????????????Intel Xeon D family > > +???????????????????????Intel Xeon Bronze family > > +???????????????????????Intel Xeon Silver family > > +???????????????????????Intel Xeon Gold family > > +???????????????????????Intel Xeon Platinum family > > + > > +???????Datasheet: Available from http://www.intel.com/design/literature.htm > > + > > +Author: Jae Hyun Yoo > > + > > +Description > > +----------- > > + > > +This driver implements a generic PECI hwmon feature which provides Digital > > +Thermal Sensor (DTS) thermal readings of DIMM components that are accessible > > +via the processor PECI interface. > > I had thought "DTS" referred to a fairly specific sensor in the CPU; is > the same term also used for DIMM temp sensors or is the mention of it > here a copy/paste error? Yeah - it should be "Temperature Sensor on DIMM". Thanks -Iwona > > > + > > +All temperature values are given in millidegree Celsius and will be > > measurable > > +only when the target CPU is powered on. > > + > > +Sysfs interface > > +------------------- > > + > > +======================= > > ======================================================= > > + > > +temp[N]_label??????????Provides string "DIMM CI", where C is DIMM channel and > > +???????????????????????I is DIMM index of the populated DIMM. > > +temp[N]_input??????????Provides current temperature of the populated DIMM. > > +temp[N]_max????????????Provides thermal control temperature of the DIMM. > > +temp[N]_crit???????????Provides shutdown temperature of the DIMM. > > + > > +======================= > > ======================================================= > > + > > +Note: > > +???????DIMM temperature attributes will appear when the client CPU's BIOS > > +???????completes memory training and testing. > > diff --git a/MAINTAINERS b/MAINTAINERS > > index 35ba9e3646bd..d16da127bbdc 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -14509,6 +14509,8 @@ M:??????Iwona Winiarska > > R:??????Jae Hyun Yoo > > L:??????linux-hwmon at vger.kernel.org > > S:??????Supported > > +F:?????Documentation/hwmon/peci-cputemp.rst > > +F:?????Documentation/hwmon/peci-dimmtemp.rst > > F:??????drivers/hwmon/peci/ > > > > PECI SUBSYSTEM > > -- > > 2.31.1