[ Sasha's backport helper bot ]
Hi,
✅ All tests passed successfully. No issues detected. No action required from the submitter.
The upstream commit SHA1 provided is correct: 96fadf7e8ff49fdb74754801228942b67c3eeebd
WARNING: Author mismatch between patch and upstream commit: Backport author: Feng LiuFeng.Liu3@windriver.com Commit author: Dmitry Baryshkovdmitry.baryshkov@linaro.org
Status in newer kernel trees: 6.14.y | Present (exact SHA1) 6.12.y | Present (exact SHA1) 6.6.y | Present (exact SHA1) 6.1.y | Present (exact SHA1) 5.15.y | Present (exact SHA1)
Note: The patch differs from the upstream commit: --- 1: 96fadf7e8ff49 ! 1: d9d9536eb5aa4 ASoC: q6afe-clocks: fix reprobing of the driver @@ Metadata ## Commit message ## ASoC: q6afe-clocks: fix reprobing of the driver
+ [ Upstream commit 96fadf7e8ff49fdb74754801228942b67c3eeebd ] + Q6afe-clocks driver can get reprobed. For example if the APR services are restarted after the firmware crash. However currently Q6afe-clocks driver will oops because hw.init will get cleared during first _probe @@ Commit message Fixes: 520a1c396d19 ("ASoC: q6afe-clocks: add q6afe clock controller") Link: https://lore.kernel.org/r/20210327092857.3073879-1-dmitry.baryshkov@linaro.o... Signed-off-by: Mark Brown broonie@kernel.org + [Minor context change fixed] + Signed-off-by: Feng Liu Feng.Liu3@windriver.com + Signed-off-by: He Zhe Zhe.He@windriver.com
## sound/soc/qcom/qdsp6/q6afe-clocks.c ## @@ @@ sound/soc/qcom/qdsp6/q6afe-clocks.c: static const struct clk_ops clk_vote_q6afe_ .unprepare = clk_unvote_q6afe_block, };
--static struct q6afe_clk *q6afe_clks[Q6AFE_MAX_CLK_ID] = { +-struct q6afe_clk *q6afe_clks[Q6AFE_MAX_CLK_ID] = { - [LPASS_CLK_ID_PRI_MI2S_IBIT] = Q6AFE_CLK(LPASS_CLK_ID_PRI_MI2S_IBIT), - [LPASS_CLK_ID_PRI_MI2S_EBIT] = Q6AFE_CLK(LPASS_CLK_ID_PRI_MI2S_EBIT), - [LPASS_CLK_ID_SEC_MI2S_IBIT] = Q6AFE_CLK(LPASS_CLK_ID_SEC_MI2S_IBIT), @@ sound/soc/qcom/qdsp6/q6afe.c: int q6afe_unvote_lpass_core_hw(struct device *dev,
## sound/soc/qcom/qdsp6/q6afe.h ## @@ sound/soc/qcom/qdsp6/q6afe.h: int q6afe_port_set_sysclk(struct q6afe_port *port, int clk_id, - int q6afe_set_lpass_clock(struct device *dev, int clk_id, int attri, + int q6afe_set_lpass_clock(struct device *dev, int clk_id, int clk_src, int clk_root, unsigned int freq); int q6afe_vote_lpass_core_hw(struct device *dev, uint32_t hw_block_id, - char *client_name, uint32_t *client_handle); ---
Results of testing on various branches:
| Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-5.10.y | Success | Success |