Re: [PATCH v2 1/3] clk: qcom: gcc-msm8998: Drop hmss_dvm and lpass_at
Quoting Bjorn Andersson (2018-12-03 10:33:28) > Disabling gcc_hmss_dvm_bus_clk and gcc_lpass_at_clk causes the board to > lock up, and by that preventing the kernel to boot without > clk_ignore_unused. > > gcc_hmss_dvm_bus_clk is marked always-on downstream, but not referenced, > and gcc_lpass_at_clk isn't mentioned. So let's remove them until they > are needed by some client. > > Signed-off-by: Bjorn Andersson > --- Applied to clk-next
Re: [PATCH v2 1/3] clk: qcom: gcc-msm8998: Drop hmss_dvm and lpass_at
On Tue 04 Dec 06:37 PST 2018, Marc Gonzalez wrote: > On 03/12/2018 19:33, Bjorn Andersson wrote: > > > Disabling gcc_hmss_dvm_bus_clk and gcc_lpass_at_clk causes the board to > > lock up, and by that preventing the kernel to boot without > > clk_ignore_unused. > > > > gcc_hmss_dvm_bus_clk is marked always-on downstream, but not referenced, > > and gcc_lpass_at_clk isn't mentioned. So let's remove them until they > > are needed by some client. > > Hello Bjorn, > > What about gcc_gpu_bimc_gfx_clk? > The ufs clocks was updated because the ufs driver would fail to enable them and by that fail. But I have yet to research what the appropriate solution for this this particular clock is. > AFAICT, it doesn't lock the system up, but the kernel warns: > Right, so it seems to only be an annoyance for now. Let's revisit this. Regards, Bjorn > [2.171148] [ cut here ] > [2.173740] gcc_gpu_bimc_gfx_clk status stuck at 'on' > [2.173996] WARNING: CPU: 3 PID: 1 at drivers/clk/qcom/clk-branch.c:92 > clk_branch_toggle+0x190/0x1b0 > [2.183475] Modules linked in: > [2.192554] CPU: 3 PID: 1 Comm: swapper/0 Tainted: G S > 4.20.0-rc4 #23 > [2.195509] Hardware name: Qualcomm Technologies, Inc. MSM8998 v1 MTP (DT) > [2.203389] pstate: 6085 (nZCv daIf -PAN -UAO) > [2.210016] pc : clk_branch_toggle+0x190/0x1b0 > [2.214781] lr : clk_branch_toggle+0x190/0x1b0 > [2.219213] sp : 0807bcf0 > [2.223609] x29: 0807bcf0 x28: 0008 > [2.227041] x27: 089db070 x26: 08961378 > [2.232425] x25: 088da4b8 x24: > [2.237721] x23: 09138a08 x22: 08414990 > [2.243016] x21: x20: > [2.248312] x19: 090e9000 x18: > [2.253608] x17: x16: > [2.258902] x15: 090e9648 x14: 89193187 > [2.264197] x13: 09193195 x12: 090fb000 > [2.269493] x11: 0807bcf0 x10: 0807bcf0 > [2.274789] x9 : 0807bcf0 x8 : 6e6f27207461206b > [2.280084] x7 : 6375747320737574 x6 : 09192c89 > [2.285380] x5 : x4 : > [2.290676] x3 : x2 : 8000f5251000 > [2.295971] x1 : e0dbf26541ede800 x0 : > [2.301272] Call trace: > [2.306491] clk_branch_toggle+0x190/0x1b0 > [2.308705] clk_branch2_disable+0x18/0x20 > [2.312890] clk_disable_unused_subtree+0xc4/0xe0 > [2.316960] clk_disable_unused+0x3c/0x130 > [2.321736] do_one_initcall+0x5c/0x180 > [2.325745] kernel_init_freeable+0x198/0x244 > [2.329469] kernel_init+0x10/0x110 > [2.333942] ret_from_fork+0x10/0x20 > [2.337257] ---[ end trace 57f62b628c127ef8 ]--- > > > Regards.
Re: [PATCH v2 1/3] clk: qcom: gcc-msm8998: Drop hmss_dvm and lpass_at
On 03/12/2018 19:33, Bjorn Andersson wrote: > Disabling gcc_hmss_dvm_bus_clk and gcc_lpass_at_clk causes the board to > lock up, and by that preventing the kernel to boot without > clk_ignore_unused. > > gcc_hmss_dvm_bus_clk is marked always-on downstream, but not referenced, > and gcc_lpass_at_clk isn't mentioned. So let's remove them until they > are needed by some client. Hello Bjorn, What about gcc_gpu_bimc_gfx_clk? AFAICT, it doesn't lock the system up, but the kernel warns: [2.171148] [ cut here ] [2.173740] gcc_gpu_bimc_gfx_clk status stuck at 'on' [2.173996] WARNING: CPU: 3 PID: 1 at drivers/clk/qcom/clk-branch.c:92 clk_branch_toggle+0x190/0x1b0 [2.183475] Modules linked in: [2.192554] CPU: 3 PID: 1 Comm: swapper/0 Tainted: G S 4.20.0-rc4 #23 [2.195509] Hardware name: Qualcomm Technologies, Inc. MSM8998 v1 MTP (DT) [2.203389] pstate: 6085 (nZCv daIf -PAN -UAO) [2.210016] pc : clk_branch_toggle+0x190/0x1b0 [2.214781] lr : clk_branch_toggle+0x190/0x1b0 [2.219213] sp : 0807bcf0 [2.223609] x29: 0807bcf0 x28: 0008 [2.227041] x27: 089db070 x26: 08961378 [2.232425] x25: 088da4b8 x24: [2.237721] x23: 09138a08 x22: 08414990 [2.243016] x21: x20: [2.248312] x19: 090e9000 x18: [2.253608] x17: x16: [2.258902] x15: 090e9648 x14: 89193187 [2.264197] x13: 09193195 x12: 090fb000 [2.269493] x11: 0807bcf0 x10: 0807bcf0 [2.274789] x9 : 0807bcf0 x8 : 6e6f27207461206b [2.280084] x7 : 6375747320737574 x6 : 09192c89 [2.285380] x5 : x4 : [2.290676] x3 : x2 : 8000f5251000 [2.295971] x1 : e0dbf26541ede800 x0 : [2.301272] Call trace: [2.306491] clk_branch_toggle+0x190/0x1b0 [2.308705] clk_branch2_disable+0x18/0x20 [2.312890] clk_disable_unused_subtree+0xc4/0xe0 [2.316960] clk_disable_unused+0x3c/0x130 [2.321736] do_one_initcall+0x5c/0x180 [2.325745] kernel_init_freeable+0x198/0x244 [2.329469] kernel_init+0x10/0x110 [2.333942] ret_from_fork+0x10/0x20 [2.337257] ---[ end trace 57f62b628c127ef8 ]--- Regards.
[PATCH v2 1/3] clk: qcom: gcc-msm8998: Drop hmss_dvm and lpass_at
Disabling gcc_hmss_dvm_bus_clk and gcc_lpass_at_clk causes the board to lock up, and by that preventing the kernel to boot without clk_ignore_unused. gcc_hmss_dvm_bus_clk is marked always-on downstream, but not referenced, and gcc_lpass_at_clk isn't mentioned. So let's remove them until they are needed by some client. Signed-off-by: Bjorn Andersson --- Changes since v1: - Drop the clocks, rather than marking them critical. drivers/clk/qcom/gcc-msm8998.c | 28 1 file changed, 28 deletions(-) diff --git a/drivers/clk/qcom/gcc-msm8998.c b/drivers/clk/qcom/gcc-msm8998.c index 9f0ae403d5f5..aed7f1f92614 100644 --- a/drivers/clk/qcom/gcc-msm8998.c +++ b/drivers/clk/qcom/gcc-msm8998.c @@ -1964,19 +1964,6 @@ static struct clk_branch gcc_hmss_at_clk = { }, }; -static struct clk_branch gcc_hmss_dvm_bus_clk = { - .halt_reg = 0x4808c, - .halt_check = BRANCH_HALT, - .clkr = { - .enable_reg = 0x4808c, - .enable_mask = BIT(0), - .hw.init = &(struct clk_init_data){ - .name = "gcc_hmss_dvm_bus_clk", - .ops = &clk_branch2_ops, - }, - }, -}; - static struct clk_branch gcc_hmss_rbcpr_clk = { .halt_reg = 0x48008, .halt_check = BRANCH_HALT, @@ -2007,19 +1994,6 @@ static struct clk_branch gcc_hmss_trig_clk = { }, }; -static struct clk_branch gcc_lpass_at_clk = { - .halt_reg = 0x47020, - .halt_check = BRANCH_HALT, - .clkr = { - .enable_reg = 0x47020, - .enable_mask = BIT(0), - .hw.init = &(struct clk_init_data){ - .name = "gcc_lpass_at_clk", - .ops = &clk_branch2_ops, - }, - }, -}; - static struct clk_branch gcc_lpass_trig_clk = { .halt_reg = 0x4701c, .halt_check = BRANCH_HALT, @@ -2653,10 +2627,8 @@ static struct clk_regmap *gcc_msm8998_clocks[] = { [GCC_GPU_SNOC_DVM_GFX_CLK] = &gcc_gpu_snoc_dvm_gfx_clk.clkr, [GCC_HMSS_AHB_CLK] = &gcc_hmss_ahb_clk.clkr, [GCC_HMSS_AT_CLK] = &gcc_hmss_at_clk.clkr, - [GCC_HMSS_DVM_BUS_CLK] = &gcc_hmss_dvm_bus_clk.clkr, [GCC_HMSS_RBCPR_CLK] = &gcc_hmss_rbcpr_clk.clkr, [GCC_HMSS_TRIG_CLK] = &gcc_hmss_trig_clk.clkr, - [GCC_LPASS_AT_CLK] = &gcc_lpass_at_clk.clkr, [GCC_LPASS_TRIG_CLK] = &gcc_lpass_trig_clk.clkr, [GCC_MMSS_NOC_CFG_AHB_CLK] = &gcc_mmss_noc_cfg_ahb_clk.clkr, [GCC_MMSS_QM_AHB_CLK] = &gcc_mmss_qm_ahb_clk.clkr, -- 2.18.0