Commit df9cb033 authored by Darrick J. Wong's avatar Darrick J. Wong Committed by Linus Torvalds
Browse files

ibmpex: correct power use multipliers for QS2x blade



The QS2x blades ships with v2.54 of the firmware, which use the same
multiplier for all power meters.

Signed-off-by: default avatarDarrick J. Wong <djwong@us.ibm.com>
Cc: Mark M. Hoffman <mhoffman@lightlink.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 87cb055b
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -327,10 +327,14 @@ static int is_temp_sensor(const char *sensor_id, int len)
	return 0;
}

static int power_sensor_multiplier(const char *sensor_id, int len)
static int power_sensor_multiplier(struct ibmpex_bmc_data *data,
				   const char *sensor_id, int len)
{
	int i;

	if (data->sensor_major == 2)
		return 1000000;

	for (i = PEX_SENSOR_TYPE_LEN; i < len - 1; i++)
		if (!memcmp(&sensor_id[i], watt_sensor_sig, PEX_MULT_LEN))
			return 1000000;
@@ -398,7 +402,8 @@ static int ibmpex_find_sensors(struct ibmpex_bmc_data *data)
			num_power++;
			sensor_counter = num_power;
			data->sensors[i].multiplier =
				power_sensor_multiplier(data->rx_msg_data,
				power_sensor_multiplier(data,
							data->rx_msg_data,
							data->rx_msg_len);
		} else if (is_temp_sensor(data->rx_msg_data,
					  data->rx_msg_len)) {