]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
clk: qoriq: Don't allow CPU clocks higher than starting value
authorScott Wood <oss@buserror.net>
Mon, 17 Oct 2016 18:42:23 +0000 (13:42 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 18 Nov 2016 09:51:47 +0000 (10:51 +0100)
commitc480880cd12c498c2b0fe859ca0a5b0b6f4f6ff1
tree4eed4fd51829acf30deea5532f6a8363c8257ab2
parentee27fd32c49940d4a36c4e42cb2132432f5af833
clk: qoriq: Don't allow CPU clocks higher than starting value

commit 7c1c5413a7bdf1c9adc8d979521f1b8286366aef upstream.

The boot-time frequency of a CPU is considered its rated maximum, as we
have no other source of such information.  However, this was previously
only used for chips with 80% restrictions on secondary PLLs.  This
usually wasn't a problem because most chips/configs boot with a divider
of /1, with other dividers being used only for dynamic frequency
reduction.  However, at least one config (LS1021A at less than 1 GHz)
uses a different divider for top speed.  This was causing cpufreq to set
a frequency beyond the chip's rated speed.

This is fixed by applying a 100%-of-initial-speed limit to all CPU PLLs,
similar to the existing 80% limit that only applied to some.

Signed-off-by: Scott Wood <oss@buserror.net>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/clk/clk-qoriq.c