Message ID | 20230503072543.4837-1-y.oudjana@protonmail.com |
---|---|
Headers | show |
Series | media: camss: Link CAMSS power domain on MSM8996 | expand |
On 03/05/2023 08:25, Yassine Oudjana wrote: > CAMSS on MSM8996 has been broken since commit > 46cc03175498 (media: camss: Split power domain management, 2022-07-04). Don't forget to run your patches through checkpatch --strict ERROR: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'Commit 46cc03175498 ("media: camss: Split power domain management")'
On 03/05/2023 09:25, Yassine Oudjana wrote: > From: Yassine Oudjana <y.oudjana@protonmail.com> > > Add the CAMSS power domain which is needed for the proper operation of CAMSS, and add > power-domain-names to ease fetching it as well as the other power domains. Please wrap commit message according to Linux coding style / submission process (neither too early nor over the limit): https://elixir.bootlin.com/linux/v5.18-rc4/source/Documentation/process/submitting-patches.rst#L586 Same for all other patches. Subject: you have double media, drop the latter one. Your subject is anyway too long, so shorten it. camss: is also a redundant prefix. Best regards, Krzysztof
From: Yassine Oudjana <y.oudjana@protonmail.com> CAMSS on MSM8996 has been broken since commit 46cc03175498 (media: camss: Split power domain management, 2022-07-04). This would happen when trying to start streaming: [ 199.097810] ------------[ cut here ]------------ [ 199.097893] camss_top_ahb_clk status stuck at 'off' [ 199.097913] WARNING: CPU: 3 PID: 728 at drivers/clk/qcom/clk-branch.c:91 clk_branch_wait+0x140/0x160 ... [ 199.100064] clk_branch_wait+0x140/0x160 [ 199.100112] clk_branch2_enable+0x30/0x40 [ 199.100159] clk_core_enable+0x6c/0xb0 [ 199.100211] clk_enable+0x2c/0x50 [ 199.100257] camss_enable_clocks+0x94/0xe0 [qcom_camss] [ 199.100342] csiphy_set_power+0x154/0x2a0 [qcom_camss] ... [ 199.101594] ---[ end trace 0000000000000000 ]--- [ 199.101736] qcom-camss a34000.camss: clock enable failed: -16 [ 199.101813] qcom-camss a34000.camss: Failed to power up pipeline: -16 Turns out camss_top_ahb_clk needs the CAMSS power domain to be on. Before the change, VFE power domains were enabled before CSIPHY enabled clocks, and since the CAMSS power domain was their parent, it got enabled as well. With the VFE power domains now enabled after CSIPHY is powered on, the CAMSS power domain remains off and things go south when CSIPHY tries to enable camss_top_ahb_clk. Link the CAMSS power domain in camss_configure_pd to make sure it gets enabled before CSIPHY tries to enable clocks. Yassine Oudjana (3): media: dt-bindings: media: camss: qcom,msm8996-camss: Add CAMSS power domain and power-domain-names arm64: dts: qcom: msm8996: Add CAMSS power domain and power-domain-names to CAMSS media: camss: Link CAMSS power domain .../bindings/media/qcom,msm8996-camss.yaml | 13 ++++++++++++- arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 +++- drivers/media/platform/qcom/camss/camss.c | 9 ++++++++- 3 files changed, 23 insertions(+), 3 deletions(-)