[Skiboot] [PATCH 03/11] dts: add device tree nodes for the core temperatures

Stewart Smith stewart at linux.vnet.ibm.com
Fri Feb 13 15:28:13 AEDT 2015


Cédric Le Goater <clg at fr.ibm.com> writes:

> This patch simply adds sensors nodes for the core temperatures. It
> uses the core PIR as a resource identifier to fit in the sensor model.
>
> The device tree nodes use the new layout.
>
> Signed-off-by: Cédric Le Goater <clg at fr.ibm.com>
> ---
>
> Changes since RFC:
>
>  - "/ibm,opal/sensors" needs to be created on open power platform
>
>  core/sensor.c |    3 +++
>  hw/dts.c      |   42 ++++++++++++++++++++++++++++++++++++++++++
>  include/dts.h |    1 +
>  3 files changed, 46 insertions(+)
>
> diff --git a/core/sensor.c b/core/sensor.c
> index 5db072e0e501..83ef2d98cd94 100644
> --- a/core/sensor.c
> +++ b/core/sensor.c
> @@ -18,6 +18,7 @@
>  #include <sensor.h>
>  #include <skiboot.h>
>  #include <opal.h>
> +#include <dts.h>
>
>  static int64_t opal_sensor_read(uint32_t sensor_hndl, int token,
>  		uint32_t *sensor_data)
> @@ -32,4 +33,6 @@ void sensor_init(void)
>  {
>  	/* Register OPAL interface */
>  	opal_register(OPAL_SENSOR_READ, opal_sensor_read, 3);
> +
> +	dts_sensor_create_nodes();
>  }
> diff --git a/hw/dts.c b/hw/dts.c
> index 288793a1c68d..356080e9e756 100644
> --- a/hw/dts.c
> +++ b/hw/dts.c
> @@ -162,3 +162,45 @@ int64_t dts_sensor_read(uint32_t sensor_hndl, uint32_t *sensor_data)
>
>  	return 0;
>  }
> +
> +bool dts_sensor_create_nodes(void)
> +{
> +	uint8_t sensor_class = SENSOR_DTS_CORE_TEMP|SENSOR_DTS;
> +
> +	struct proc_chip *chip;
> +	struct dt_node *sensors;
> +	char name[64];
> +
> +	sensors = dt_find_by_path(dt_root, "/ibm,opal/sensors");
> +	if (!sensors) {
> +		prlog(PR_WARNING, "DTS: creating node /ibm,opal/sensors\n");
> +		sensors = dt_new(opal_node, "sensors");
> +	}

We're expected to get these from HB? Is it really a warning that it
doesn't exist? Would we get anything on an openpower system?



More information about the Skiboot mailing list