diff options
author | David Müller <dave.mueller@gmx.ch> | 2019-04-08 15:33:54 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-05-08 07:20:53 +0200 |
commit | 502a97abc4ee6adf5884d61006201860fc7c2ace (patch) | |
tree | 2b337a90c120a9d293f5fe4229d8c654eefe988d /include | |
parent | 5323688fc3ed7064a3a4a70f2aa6be8dcddfe330 (diff) | |
download | linux-stable-502a97abc4ee6adf5884d61006201860fc7c2ace.tar.gz linux-stable-502a97abc4ee6adf5884d61006201860fc7c2ace.tar.bz2 linux-stable-502a97abc4ee6adf5884d61006201860fc7c2ace.zip |
clk: x86: Add system specific quirk to mark clocks as critical
commit 7c2e07130090ae001a97a6b65597830d6815e93e upstream.
Since commit 648e921888ad ("clk: x86: Stop marking clocks as
CLK_IS_CRITICAL"), the pmc_plt_clocks of the Bay Trail SoC are
unconditionally gated off. Unfortunately this will break systems where these
clocks are used for external purposes beyond the kernel's knowledge. Fix it
by implementing a system specific quirk to mark the necessary pmc_plt_clks as
critical.
Fixes: 648e921888ad ("clk: x86: Stop marking clocks as CLK_IS_CRITICAL")
Signed-off-by: David Müller <dave.mueller@gmx.ch>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/platform_data/x86/clk-pmc-atom.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/platform_data/x86/clk-pmc-atom.h b/include/linux/platform_data/x86/clk-pmc-atom.h index 3ab892208343..7a37ac27d0fb 100644 --- a/include/linux/platform_data/x86/clk-pmc-atom.h +++ b/include/linux/platform_data/x86/clk-pmc-atom.h @@ -35,10 +35,13 @@ struct pmc_clk { * * @base: PMC clock register base offset * @clks: pointer to set of registered clocks, typically 0..5 + * @critical: flag to indicate if firmware enabled pmc_plt_clks + * should be marked as critial or not */ struct pmc_clk_data { void __iomem *base; const struct pmc_clk *clks; + bool critical; }; #endif /* __PLATFORM_DATA_X86_CLK_PMC_ATOM_H */ |