Message ID | 20220130114535.1570634-1-luca@z3ntu.xyz |
---|---|
State | Accepted |
Commit | 4a8a77abf0e2b6468ba0281e33384cbec5fb476a |
Headers | show |
Series | cpufreq: qcom-cpufreq-nvmem: fix reading of PVS Valid fuse | expand |
On 30-01-22, 12:45, Luca Weiss wrote: > The fuse consists of 64 bits, with this statement we're supposed to get > the upper 32 bits but it actually read out of bounds and got 0 instead > of the desired value which lead to the "PVS bin not set." codepath being > run resetting our pvs value. > > Fixes: a8811ec764f9 ("cpufreq: qcom: Add support for krait based socs") > Signed-off-by: Luca Weiss <luca@z3ntu.xyz> > --- > drivers/cpufreq/qcom-cpufreq-nvmem.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c > index d1744b5d9619..6dfa86971a75 100644 > --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c > +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c > @@ -130,7 +130,7 @@ static void get_krait_bin_format_b(struct device *cpu_dev, > } > > /* Check PVS_BLOW_STATUS */ > - pte_efuse = *(((u32 *)buf) + 4); > + pte_efuse = *(((u32 *)buf) + 1); > pte_efuse &= BIT(21); > if (pte_efuse) { > dev_dbg(cpu_dev, "PVS bin: %d\n", *pvs); Applied. Thanks.
diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c index d1744b5d9619..6dfa86971a75 100644 --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c @@ -130,7 +130,7 @@ static void get_krait_bin_format_b(struct device *cpu_dev, } /* Check PVS_BLOW_STATUS */ - pte_efuse = *(((u32 *)buf) + 4); + pte_efuse = *(((u32 *)buf) + 1); pte_efuse &= BIT(21); if (pte_efuse) { dev_dbg(cpu_dev, "PVS bin: %d\n", *pvs);
The fuse consists of 64 bits, with this statement we're supposed to get the upper 32 bits but it actually read out of bounds and got 0 instead of the desired value which lead to the "PVS bin not set." codepath being run resetting our pvs value. Fixes: a8811ec764f9 ("cpufreq: qcom: Add support for krait based socs") Signed-off-by: Luca Weiss <luca@z3ntu.xyz> --- drivers/cpufreq/qcom-cpufreq-nvmem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)