[Skiboot] [RFC V3] sensors: occ: Add support for OCC inband sensors
Shilpasri G Bhat
shilpa.bhat at linux.vnet.ibm.com
Thu Mar 30 23:45:55 AEDT 2017
Hi,
On 03/30/2017 05:57 PM, Shilpasri G Bhat wrote:
>
>
> On 03/30/2017 05:54 PM, Cédric Le Goater wrote:
>> On 03/30/2017 02:13 PM, Shilpasri G Bhat wrote:
>>> Add support to parse and export OCC inband sensors which are copied
>>> by OCC to main memory in P9. Each OCC writes three buffers which
>>> includes one names buffer for sensor meta data and two buffers for
>>> sensor readings. While OCC writes to one buffer the sensor values
>>> can be read from the other buffer. The sensors are updated every
>>> 100ms.
>>>
>>> This patch adds power, temperature, current and voltage sensors to
>>> /ibm,opal/sensors device-tree node which can be exported by the
>>> ibmpowernv-hwmon driver in Linux.
>>>
>>> Signed-off-by: Shilpasri G Bhat <shilpa.bhat at linux.vnet.ibm.com>
>>> ---
>>> Changes from V2:
>>> - Added current and voltage sensors
>>> - Removed 'struct occ_sensor_info' which was used to store sensor
>>> offset address values
>>> - Added sensor attributes like MIN and MAX
>>> - Moved the header sanity checks to a separate routine
>>> 'occ_sensor_sanity()'
>>> - Added a mapping for OCC sensor name to userspace label. If the
>>> mapping is not found we fall back to OCC name.
>>
>> Could you give us a sample output of the command 'sensors' ?
>>
>> and also the result of :
>>
>> lsprop /proc/device-tree/ibm,opal/sensors/
>>
>> Thanks,
>>
>> C.
>>
The sensor values are all *dummy values* created to test the patch imitating the
possible known OCC sensor layout so far. These numbers do not match any readings
and should not be inferred as is.
Thanks and Regards,
Shilpa
>
> # sensors
> ibmpowernv-isa-0000
> Adapter: ISA adapter
> Chip 0 Vdd Remote Sense: +5.40 V (lowest = +0.02 V, highest = +0.03 V)
> Chip 0 Vdd: +5.40 V (lowest = +0.02 V, highest = +0.03 V)
> Core 0: +46.0°C
> Core 8: +47.0°C
> Core 16: +53.0°C
> Core 24: +50.0°C
> Chip 0 Core 0 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Core 1 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Core 2 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Core 3 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Core 4 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 GPU 2 : +46.0°C (low = +32.0°C, high = +54.0°C)
> Chip 0 GPU 2 DRAM0: +46.0°C (low = +32.0°C, high = +54.0°C)
> Chip 0 GPU 1 DRAM2: +46.0°C (low = +32.0°C, high = +54.0°C)
> Chip 0 DIMM 6 : +34.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 DIMM 0 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 DIMM 3 : +46.0°C (low = +32.0°C, high = +54.0°C)
> Centaur 1: +30.0°C
> Chip 0 Nest: +34.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Quad 0 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Quad 1 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 Quad 2 : +30.0°C (low = +25.0°C, high = +80.0°C)
> Chip 0 GPU: 340.00 W (lowest = 250.00 W, highest = 800.00 W)
> Chip 0 : 540.00 W (lowest = 23.00 W, highest = 34.00 W)
> Chip 0 Vdd: 540.00 W (lowest = 23.00 W, highest = 34.00 W)
> Chip 0 Memory: 540.00 W (lowest = 23.00 W, highest = 34.00 W)
> System: 940.00 W (lowest = 250.00 W, highest = 800.00 W)
> Fan: 370.00 W (lowest = 250.00 W, highest = 800.00 W)
> IO: 360.00 W (lowest = 250.00 W, highest = 800.00 W)
> Storage: 380.00 W (lowest = 250.00 W, highest = 800.00 W)
> APSS 12 : 540.00 W (lowest = 23.00 W, highest = 34.00 W)
> Chip 0 Vdd: +0.05 A (lowest = +0.03 A, highest = +0.05 A)
>
> /proc/device-tree/ibm,opal/sensors# lsprop
> compatible "ibm,opal-sensor"
> phandle 1000011b (268435739)
> name "sensors"
>
> vrm-curr at c00010:
> sensor-data 00c00010 (12582928)
> compatible "ibm,opal-sensor"
> occ_label "CURVDD"
> label "Chip 0 Vdd"
> phandle 10000148 (268435784)
> sensor-type "curr"
> sensor-data-min 02c00010 (46137360)
> sensor-data-max 01c00010 (29360144)
> name "vrm-curr"
>
> gpu-power at c00004:
> sensor-data 00c00004 (12582916)
> compatible "ibm,opal-sensor"
> occ_label "PWRGPU"
> label "Chip 0 GPU"
> phandle 1000013d (268435773)
> sensor-type "power"
> sensor-data-min 02c00004 (46137348)
> sensor-data-max 01c00004 (29360132)
> name "gpu-power"
>
> quad-temp at c0000e:
> sensor-data 00c0000e (12582926)
> compatible "ibm,opal-sensor"
> occ_label "TEMPQ1"
> label "Chip 0 Quad 1 "
> phandle 10000146 (268435782)
> sensor-type "temp"
> sensor-data-min 02c0000e (46137358)
> sensor-data-max 01c0000e (29360142)
> name "quad-temp"
>
> proc-power at c00016:
> sensor-data 00c00016 (12582934)
> compatible "ibm,opal-sensor"
> occ_label "PWRMEM"
> label "Chip 0 Memory"
> phandle 1000014e (268435790)
> sensor-type "power"
> sensor-data-min 02c00016 (46137366)
> sensor-data-max 01c00016 (29360150)
> name "proc-power"
>
> proc-power at c00014:
> sensor-data 00c00014 (12582932)
> compatible "ibm,opal-sensor"
> occ_label "PWRVDD"
> label "Chip 0 Vdd"
> phandle 1000014c (268435788)
> sensor-type "power"
> sensor-data-min 02c00014 (46137364)
> sensor-data-max 01c00014 (29360148)
> name "proc-power"
>
> core-temp at c0000b:
> sensor-data 00c0000b (12582923)
> compatible "ibm,opal-sensor"
> occ_label "TEMPC3"
> label "Chip 0 Core 3 "
> phandle 10000143 (268435779)
> sensor-type "temp"
> sensor-data-min 02c0000b (46137355)
> sensor-data-max 01c0000b (29360139)
> name "core-temp"
>
> mem-temp at c00017:
> sensor-data 00c00017 (12582935)
> compatible "ibm,opal-sensor"
> occ_label "TEMPDIMM0"
> label "Chip 0 DIMM 0 "
> phandle 1000014f (268435791)
> sensor-type "temp"
> sensor-data-min 02c00017 (46137367)
> sensor-data-max 01c00017 (29360151)
> name "mem-temp"
>
> gpu-temp at c0001a:
> sensor-data 00c0001a (12582938)
> compatible "ibm,opal-sensor"
> occ_label "TEMPGPU2DRAM0"
> label "Chip 0 GPU 2 DRAM0"
> phandle 10000152 (268435794)
> sensor-type "temp"
> sensor-data-min 02c0001a (46137370)
> sensor-data-max 01c0001a (29360154)
> name "gpu-temp"
>
> sys-power at c00012:
> sensor-data 00c00012 (12582930)
> compatible "ibm,opal-sensor"
> occ_label "PWRAPSSCH12"
> label "APSS 12 "
> phandle 1000014a (268435786)
> sensor-type "power"
> sensor-data-min 02c00012 (46137362)
> sensor-data-max 01c00012 (29360146)
> name "sys-power"
>
> core-temp at 68:
> sensor-data 00e00068 (14680168)
> compatible "ibm,opal-sensor"
> ibm,pir 00000068 (104)
> label "Core"
> phandle 1000011e (268435742)
> sensor-type "temp"
> sensor-status 01e00068 (31457384)
> name "core-temp"
>
> proc-in at c00015:
> sensor-data 00c00015 (12582933)
> compatible "ibm,opal-sensor"
> occ_label "VOLTVDDSENSE"
> label "Chip 0 Vdd Remote Sense"
> phandle 1000014d (268435789)
> sensor-type "in"
> sensor-data-min 02c00015 (46137365)
> sensor-data-max 01c00015 (29360149)
> name "proc-in"
>
> sys-power at c00002:
> sensor-data 00c00002 (12582914)
> compatible "ibm,opal-sensor"
> occ_label "PWRIO"
> label "IO"
> phandle 1000013b (268435771)
> sensor-type "power"
> sensor-data-min 02c00002 (46137346)
> sensor-data-max 01c00002 (29360130)
> name "sys-power"
>
> core-temp at c00009:
> sensor-data 00c00009 (12582921)
> compatible "ibm,opal-sensor"
> occ_label "TEMPC1"
> label "Chip 0 Core 1 "
> phandle 10000141 (268435777)
> sensor-type "temp"
> sensor-data-min 02c00009 (46137353)
> sensor-data-max 01c00009 (29360137)
> name "core-temp"
>
> core-temp at 28:
> sensor-data 00e00028 (14680104)
> compatible "ibm,opal-sensor"
> ibm,pir 00000028 (40)
> label "Core"
> phandle 1000011d (268435741)
> sensor-type "temp"
> sensor-status 01e00028 (31457320)
> name "core-temp"
>
> sys-power at c00000:
> sensor-data 00c00000 (12582912)
> compatible "ibm,opal-sensor"
> occ_label "PWRSYS"
> label "System"
> phandle 10000139 (268435769)
> sensor-type "power"
> sensor-data-min 02c00000 (46137344)
> sensor-data-max 01c00000 (29360128)
> name "sys-power"
>
> proc-temp at c00005:
> sensor-data 00c00005 (12582917)
> compatible "ibm,opal-sensor"
> occ_label "TEMPNEST"
> label "Chip 0 Nest"
> phandle 1000013e (268435774)
> sensor-type "temp"
> sensor-data-min 02c00005 (46137349)
> sensor-data-max 01c00005 (29360133)
> name "proc-temp"
>
> quad-temp at c0000f:
> sensor-data 00c0000f (12582927)
> compatible "ibm,opal-sensor"
> occ_label "TEMPQ2"
> label "Chip 0 Quad 2 "
> phandle 10000147 (268435783)
> sensor-type "temp"
> sensor-data-min 02c0000f (46137359)
> sensor-data-max 01c0000f (29360143)
> name "quad-temp"
>
> quad-temp at c0000d:
> sensor-data 00c0000d (12582925)
> compatible "ibm,opal-sensor"
> occ_label "TEMPQ0"
> label "Chip 0 Quad 0 "
> phandle 10000145 (268435781)
> sensor-type "temp"
> sensor-data-min 02c0000d (46137357)
> sensor-data-max 01c0000d (29360141)
> name "quad-temp"
>
> core-temp at c0000c:
> sensor-data 00c0000c (12582924)
> compatible "ibm,opal-sensor"
> occ_label "TEMPC4"
> label "Chip 0 Core 4 "
> phandle 10000144 (268435780)
> sensor-type "temp"
> sensor-data-min 02c0000c (46137356)
> sensor-data-max 01c0000c (29360140)
> name "core-temp"
>
> mem-temp at c00018:
> sensor-data 00c00018 (12582936)
> compatible "ibm,opal-sensor"
> occ_label "TEMPDIMM3"
> label "Chip 0 DIMM 3 "
> phandle 10000150 (268435792)
> sensor-type "temp"
> sensor-data-min 02c00018 (46137368)
> sensor-data-max 01c00018 (29360152)
> name "mem-temp"
>
> core-temp at 70:
> sensor-data 00e00070 (14680176)
> compatible "ibm,opal-sensor"
> ibm,pir 00000070 (112)
> label "Core"
> phandle 1000011f (268435743)
> sensor-type "temp"
> sensor-status 01e00070 (31457392)
> name "core-temp"
>
> gpu-temp at c0001b:
> sensor-data 00c0001b (12582939)
> compatible "ibm,opal-sensor"
> occ_label "TEMPGPU1DRAM2"
> label "Chip 0 GPU 1 DRAM2"
> phandle 10000153 (268435795)
> sensor-type "temp"
> sensor-data-min 02c0001b (46137371)
> sensor-data-max 01c0001b (29360155)
> name "gpu-temp"
>
> proc-power at c00013:
> sensor-data 00c00013 (12582931)
> compatible "ibm,opal-sensor"
> occ_label "PWRPROC"
> label "Chip 0 "
> phandle 1000014b (268435787)
> sensor-type "power"
> sensor-data-min 02c00013 (46137363)
> sensor-data-max 01c00013 (29360147)
> name "proc-power"
>
> core-temp at c0000a:
> sensor-data 00c0000a (12582922)
> compatible "ibm,opal-sensor"
> occ_label "TEMPC2"
> label "Chip 0 Core 2 "
> phandle 10000142 (268435778)
> sensor-type "temp"
> sensor-data-min 02c0000a (46137354)
> sensor-data-max 01c0000a (29360138)
> name "core-temp"
>
> vrm-in at c00011:
> sensor-data 00c00011 (12582929)
> compatible "ibm,opal-sensor"
> occ_label "VOLTVDD"
> label "Chip 0 Vdd"
> phandle 10000149 (268435785)
> sensor-type "in"
> sensor-data-min 02c00011 (46137361)
> sensor-data-max 01c00011 (29360145)
> name "vrm-in"
>
> mem-temp at c00006:
> sensor-data 00c00006 (12582918)
> compatible "ibm,opal-sensor"
> occ_label "TEMPDIMM6"
> label "Chip 0 DIMM 6 "
> phandle 1000013f (268435775)
> sensor-type "temp"
> sensor-data-min 02c00006 (46137350)
> sensor-data-max 01c00006 (29360134)
> name "mem-temp"
>
> sys-power at c00003:
> sensor-data 00c00003 (12582915)
> compatible "ibm,opal-sensor"
> occ_label "PWRSTORE"
> label "Storage"
> phandle 1000013c (268435772)
> sensor-type "power"
> sensor-data-min 02c00003 (46137347)
> sensor-data-max 01c00003 (29360131)
> name "sys-power"
>
> mem-temp at 80000001:
> sensor-data 00e10001 (14745601)
> compatible "ibm,opal-sensor"
> label "Centaur"
> ibm,chip-id 80000001
> phandle 10000120 (268435744)
> sensor-type "temp"
> sensor-status 01e10001 (31522817)
> name "mem-temp"
>
> core-temp at 10:
> sensor-data 00e00010 (14680080)
> compatible "ibm,opal-sensor"
> ibm,pir 00000010 (16)
> label "Core"
> phandle 1000011c (268435740)
> sensor-type "temp"
> sensor-status 01e00010 (31457296)
> name "core-temp"
>
> sys-power at c00001:
> sensor-data 00c00001 (12582913)
> compatible "ibm,opal-sensor"
> occ_label "PWRFAN"
> label "Fan"
> phandle 1000013a (268435770)
> sensor-type "power"
> sensor-data-min 02c00001 (46137345)
> sensor-data-max 01c00001 (29360129)
> name "sys-power"
>
> gpu-temp at c00019:
> sensor-data 00c00019 (12582937)
> compatible "ibm,opal-sensor"
> occ_label "TEMPGPU2"
> label "Chip 0 GPU 2 "
> phandle 10000151 (268435793)
> sensor-type "temp"
> sensor-data-min 02c00019 (46137369)
> sensor-data-max 01c00019 (29360153)
> name "gpu-temp"
>
> core-temp at c00008:
> sensor-data 00c00008 (12582920)
> compatible "ibm,opal-sensor"
> occ_label "TEMPC0"
> label "Chip 0 Core 0 "
> phandle 10000140 (268435776)
> sensor-type "temp"
> sensor-data-min 02c00008 (46137352)
> sensor-data-max 01c00008 (29360136)
> name "core-temp"
>
> _______________________________________________
> Skiboot mailing list
> Skiboot at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/skiboot
>
More information about the Skiboot
mailing list