Skip to content

Commit

Permalink
thermal: mediatek: fix register index error
Browse files Browse the repository at this point in the history
The index of msr and adcpnp should match the sensor
which belongs to the selected bank in the for loop.

Fixes: b7cf005 ("thermal: Add Mediatek thermal driver for mt2701.")
Signed-off-by: Michael Kao <michael.kao@mediatek.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
  • Loading branch information
Michael Kao authored and Eduardo Valentin committed Feb 6, 2019
1 parent 7797ff4 commit eb9aecd
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions drivers/thermal/mtk_thermal.c
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,8 @@ static int mtk_thermal_bank_temperature(struct mtk_thermal_bank *bank)
u32 raw;

for (i = 0; i < conf->bank_data[bank->id].num_sensors; i++) {
raw = readl(mt->thermal_base + conf->msr[i]);
raw = readl(mt->thermal_base +
conf->msr[conf->bank_data[bank->id].sensors[i]]);

temp = raw_to_mcelsius(mt,
conf->bank_data[bank->id].sensors[i],
Expand Down Expand Up @@ -568,7 +569,8 @@ static void mtk_thermal_init_bank(struct mtk_thermal *mt, int num,

for (i = 0; i < conf->bank_data[num].num_sensors; i++)
writel(conf->sensor_mux_values[conf->bank_data[num].sensors[i]],
mt->thermal_base + conf->adcpnp[i]);
mt->thermal_base +
conf->adcpnp[conf->bank_data[num].sensors[i]]);

writel((1 << conf->bank_data[num].num_sensors) - 1,
mt->thermal_base + TEMP_MONCTL0);
Expand Down

0 comments on commit eb9aecd

Please sign in to comment.