Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: qcom: gcc-ipq806x: add unusued flag for critical clock

Some clocks are used by other devices present on the SoC. For example
the gsbi4_h_clk is used by RPM and is if disabled cause the RPM to
reject any regulator change command. These clock should never be
disabled.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Tested-by: Jonathan McDowell <noodles@earth.li>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220226135235.10051-9-ansuelsmth@gmail.com

authored by

Ansuel Smith and committed by
Bjorn Andersson
28aa450d 512ea2ed

+5 -4
+5 -4
drivers/clk/qcom/gcc-ipq806x.c
··· 798 798 .parent_data = gcc_pxo_pll8, 799 799 .num_parents = ARRAY_SIZE(gcc_pxo_pll8), 800 800 .ops = &clk_rcg_ops, 801 - .flags = CLK_SET_PARENT_GATE, 801 + .flags = CLK_SET_PARENT_GATE | CLK_IGNORE_UNUSED, 802 802 }, 803 803 }, 804 804 }; ··· 816 816 }, 817 817 .num_parents = 1, 818 818 .ops = &clk_branch_ops, 819 - .flags = CLK_SET_RATE_PARENT, 819 + .flags = CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 820 820 }, 821 821 }, 822 822 }; ··· 900 900 .parent_data = gcc_pxo_pll8, 901 901 .num_parents = ARRAY_SIZE(gcc_pxo_pll8), 902 902 .ops = &clk_rcg_ops, 903 - .flags = CLK_SET_PARENT_GATE, 903 + .flags = CLK_SET_PARENT_GATE | CLK_IGNORE_UNUSED, 904 904 }, 905 905 }, 906 906 }; ··· 969 969 }, 970 970 .num_parents = 1, 971 971 .ops = &clk_branch_ops, 972 - .flags = CLK_SET_RATE_PARENT, 972 + .flags = CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 973 973 }, 974 974 }, 975 975 }; ··· 1015 1015 .hw.init = &(struct clk_init_data){ 1016 1016 .name = "gsbi4_h_clk", 1017 1017 .ops = &clk_branch_ops, 1018 + .flags = CLK_IGNORE_UNUSED, 1018 1019 }, 1019 1020 }, 1020 1021 };