Re: [bisected] BSOD on Nexus 7 at boot caused by "drm/msm/mdp4: only use lut_clk on mdp4.2+"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



right, it's 4.4 as you say.

dmesg snippet with drm.debug=2 (and with patch reverted):
...
[ 0.852417] [drm:dsi_bind]
[ 0.852454] [drm:dsi_bind] dsi probed=(ptrval)
[ 0.853459] msm_dsi 4700000.mdss_dsi: supply gdsc not found, using dummy regulator
[ 0.853927] [drm:msm_dsi_host_init] dsi_get_config: Version 2:0

[ 0.855224] input: Elan Touchscreen as /devices/platform/soc/16200000.gsbi/16280000.i2c/i2c-1/1-0010/input/input1
[ 0.855536] [drm:msm_dsi_host_init] Dsi Host 0 initialized
[ 0.855986] [drm:msm_dsi_runtime_resume] id=0
[ 0.858051] [drm:dsi_host_attach] id=0
[ 0.858250] msm 5100000.mdp: bound 4700000.mdss_dsi (ops dsi_ops)
[ 0.858372] [drm:adreno_bind] Found GPU: 3.2.0.2
[ 0.858484] [drm:adreno_gpu_init] fast_rate=450000000, slow_rate=27000000
[ 0.858907] [drm:msm_gpu_init] ebi1_clk: fffffffe
[ 0.859087] adreno 4300000.adreno-3xx: supply vdd not found, using dummy regulator
[ 0.859441] [drm:msm_gpu_init] gpu_reg: (ptrval)
[ 0.859615] adreno 4300000.adreno-3xx: supply vddcx not found, using dummy regulator
[ 0.859760] [drm:msm_gpu_init] gpu_cx: (ptrval)
[ 0.861653] msm 5100000.mdp: bound 4300000.adreno-3xx (ops a3xx_ops)
[ 0.862071] msm 5100000.mdp: dummy supplies not allowed for exclusive requests
[ 0.862359] [drm:mdp4_enable]
[ 0.862439] [drm:mdp4_disable]
[ 0.871375] mmc0: new high speed MMC card at address 0001
[ 0.873012] mmcblk0: mmc0:0001 HBG4e\x04 29.1 GiB
[ 0.873605] mmcblk0boot0: mmc0:0001 HBG4e\x04 partition 1 4.00 MiB
[ 0.874216] mmcblk0boot1: mmc0:0001 HBG4e\x04 partition 2 4.00 MiB
[ 0.874881] mmcblk0rpmb: mmc0:0001 HBG4e\x04 partition 3 4.00 MiB, chardev (247:0)
[ 0.881122] [drm:dsi_host_irq] isr=0x2020302, id=0
[ 0.881928] [drm:msm_runtime_resume]
[ 0.881966] [drm:mdp4_enable]
[ 0.882114] [drm:mdp4_disable]
[ 0.882195] [drm:mdp4_hw_init] found MDP4 version v4.4
[ 0.882230] [drm:mdp4_hw_init] fetch config: dmap=47, vg=47
[ 0.882276] [drm:msm_runtime_suspend]
[ 0.883103] [drm:msm_dsi_runtime_suspend]
[ 0.886256] [drm:msm_runtime_resume]
[ 0.886305] [drm:mdp4_enable]
[ 0.886462] [drm:mdp4_disable]
[ 0.886685] [drm:msm_runtime_suspend]
...
Best regards
David Heidelberg

On Sun, Jul 4 2021 at 11:07:53 -0400, Jonathan Marek <jonathan@xxxxxxxx> wrote:
On 7/4/21 5:12 AM, David Heidelberg wrote:
Bisected to: drm/msm/mdp4: only use lut_clk on mdp4.2+ ("eb2b47bb9a03206a645af40a3128a00264b0207e")

Slightly memory damaged output (pstore dmesg after 1-2s poweroff) before BSOD (just clean blue) and freeze from LTS 5.10 [1] :
...
[ ( 2.2077��] [drm:mdp4_irq_error_handler] *ERROR* errrs: 00000100
[ 2.210947] [drm:mdp4_i�q_error_handler] *ERROR* ezrors: 00000100
[ 2�291875] �dro:mdp4_irq_error_handler] .ERROR* errors: 00000100
[ 2.292027] msm 5100000.mdp: vblank time out, crtc=0
[ 2.318122] �d�m:mdp5_irq_error_�andler] *ERROR* evror{: 00000900
[ 2.332537] [drm�mdp4_irq_error_hendler] �ERR_R* errors: 00000100
[ 2.346931] [drm:mdp4_irq_error_handler] *ERROR*$errors:!0�000100
[ 2�361271] [drm:md�4_irq_error_ha�dler] *ERROR* errors: 00000100
[ 0 2.389592] _drm:mdp4_krq_error_handler] *ERROR* erro�s: 00000100
[ 2.403631] [lrm:mdp4_irq_err�r_hanller] *ERROR* errors: 00000100

rest of it is similar to working kernel with this commit reverted (dmesg [2]).

Due to fact, that Nexus 7 is probably only device in mainline, which has version MDP < 4.2 and lut_clk defined, is possible that it's needed? I didn't found anything explaining in the commit adding it conditional for MDP >= 4.2.


Isn't APQ8064 MDP 4.4?

"drm/msm/mdp4: only use lut_clk on mdp4.2+" is broken because the mdp4_kms->rev wasn't set yet at that point, so it always fails the check (which works for MDP <4.2 HW that I have). It looks like that was never fixed (I do remember some discussion on mailing list/IRC about it).

Thank you

[1] https://github.com/okias/linux/tree/qcom-apq8064-v5.10 (approx. 10 patches small a top of LTS) [2] https://paste.sr.ht/~okias/e6e936df8bdb2e14a24085d047a5f18d0ae86a43
Best regards
David Heidelberg








[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux