-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
vc4 custom dsi panel driver problem #151
Comments
I also tried the rpi-4.14y branch with very similar results. [ 4.603155] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok The 'official' raspberry kernel 4.19 does something similar. |
I managed to make it work! For anybody facing similar issues, this line in the overlay did the trick: |
Hi,
I'm trying to implement a driver for a dsi panel, I have it probing but it fails to send the dsi initialization commands. I'm using the rpi-4.9.y branch from here.
Here is what I get with dmesg (it's on a compute 3 with the dev IO board):
[ 4.456874] [drm] Initialized
[ 4.564056] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[ 4.576113] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[ 4.576372] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[ 4.582296] vc4-drm soc:gpu: bound 3f700000.dsi (ops vc4_dsi_ops [vc4])
[ 4.582432] vc4-drm soc:gpu: bound 3f400000.hvs (ops vc4_hvs_ops [vc4])
[ 4.582724] vc4-drm soc:gpu: bound 3f206000.pixelvalve (ops vc4_crtc_ops [vc4])
[ 4.582958] vc4-drm soc:gpu: bound 3f207000.pixelvalve (ops vc4_crtc_ops [vc4])
[ 4.583188] vc4-drm soc:gpu: bound 3f807000.pixelvalve (ops vc4_crtc_ops [vc4])
[ 4.606860] vc4-drm soc:gpu: bound 3fc00000.v3d (ops vc4_v3d_ops [vc4])
[ 4.616407] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 4.616417] [drm] Driver supports precise vblank timestamp query.
[ 4.644142] Console: switching to colour frame buffer device 90x30
[ 4.651413] vc4-drm soc:gpu: fb0: frame buffer device
[ 4.768879] lcd_driver: loading out-of-tree module taints kernel.
[ 4.769955] Probing!
[ 4.979691] ax88179_178a 1-1:1.0 eth0: register 'ax88179_178a' at usb-3f980000.usb-1, ASIX AX88179 USB 3.0 Gigabit Ethernet, 00:50:b6:22:eb:67
[ 4.979823] usbcore: registered new interface driver ax88179_178a
[ 6.022885] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6.236376] NFSD: starting 90-second grace period (net 80c65340)
[ 6.634993] Adding 102396k swap on /var/swap. Priority:-1 extents:1 across:102396k SSFS
[ 9.224129] ax88179_178a 1-1:1.0 eth0: ax88179 - Link status is: 1
[ 9.227376] Preparing!
[ 9.229328] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 9.707383] Sending init sequence!
[ 10.727408] vc4_dsi 3f700000.dsi: transfer interrupt wait timeout
[ 10.727421] vc4_dsi 3f700000.dsi: instat: 0x00000000
[ 10.727523] [drm:vc4_dsi_host_transfer [vc4]] ERROR DSI transfer failed, resetting: -110
[ 10.727566] [drm:send_cmd_data] ERROR MIPI DSI DCS write failed: -110
[ 10.727633] [drm:vc4_dsi_encoder_enable [vc4]] ERROR Panel failed to prepare
[ 10.787386] ------------[ cut here ]------------
[ 10.787524] WARNING: CPU: 1 PID: 478 at drivers/gpu/drm/drm_atomic_helper.c:1140 drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper]
[ 10.787530] [CRTC:54] vblank wait timed out
[ 10.787534] Modules linked in: cfg80211 rfkill lcd_driver(O) ax88179_178a vc4 drm_kms_helper drm snd_soc_core snd_compress snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea i2c_gpio sysfillrect sysimgblt fb_sys_fops i2c_algo_bit i2c_bcm2835 bcm2835_gpiomem fixed uio_pdrv_genirq uio i2c_dev nfsd ip_tables x_tables ipv6
[ 10.787651] CPU: 1 PID: 478 Comm: Xorg Tainted: G O 4.9.61-v7+ #3
[ 10.787655] Hardware name: BCM2835
[ 10.787683] [<8010f744>] (unwind_backtrace) from [<8010bd1c>] (show_stack+0x20/0x24)
[ 10.787701] [<8010bd1c>] (show_stack) from [<804498e0>] (dump_stack+0xc8/0x114)
[ 10.787717] [<804498e0>] (dump_stack) from [<8011cd38>] (__warn+0xe8/0x114)
[ 10.787732] [<8011cd38>] (__warn) from [<8011cdac>] (warn_slowpath_fmt+0x48/0x50)
[ 10.787850] [<8011cdac>] (warn_slowpath_fmt) from [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper])
[ 10.788046] [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks [drm_kms_helper]) from [<7f28798c>] (vc4_atomic_complete_commit+0x64/0x8c [vc4])
[ 10.788179] [<7f28798c>] (vc4_atomic_complete_commit [vc4]) from [<7f287b7c>] (vc4_atomic_commit+0x1c8/0x26c [vc4])
[ 10.788518] [<7f287b7c>] (vc4_atomic_commit [vc4]) from [<7f1e190c>] (drm_atomic_commit+0x5c/0x68 [drm])
[ 10.788882] [<7f1e190c>] (drm_atomic_commit [drm]) from [<7f24ff0c>] (drm_atomic_helper_set_config+0x88/0xac [drm_kms_helper])
[ 10.789238] [<7f24ff0c>] (drm_atomic_helper_set_config [drm_kms_helper]) from [<7f1d43b8>] (drm_mode_set_config_internal+0x68/0xec [drm])
[ 10.789727] [<7f1d43b8>] (drm_mode_set_config_internal [drm]) from [<7f1d5540>] (drm_mode_setcrtc+0xdc/0x47c [drm])
[ 10.790213] [<7f1d5540>] (drm_mode_setcrtc [drm]) from [<7f1ccacc>] (drm_ioctl+0x1dc/0x404 [drm])
[ 10.790469] [<7f1ccacc>] (drm_ioctl [drm]) from [<8027c000>] (do_vfs_ioctl+0x9c/0x814)
[ 10.790489] [<8027c000>] (do_vfs_ioctl) from [<8027c7bc>] (SyS_ioctl+0x44/0x6c)
[ 10.790508] [<8027c7bc>] (SyS_ioctl) from [<80107e40>] (ret_fast_syscall+0x0/0x1c)
[ 10.790515] ---[ end trace c1e6786fc381c640 ]---
[ 13.002427] fuse init (API version 7.26)
[ 13.727381] ------------[ cut here ]------------
[ 13.727462] WARNING: CPU: 2 PID: 478 at drivers/gpu/drm/drm_atomic_helper.c:1140 drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper]
[ 13.727465] [CRTC:54] vblank wait timed out
[ 13.727468] Modules linked in: fuse cfg80211 rfkill lcd_driver(O) ax88179_178a vc4 drm_kms_helper drm snd_soc_core snd_compress snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea i2c_gpio sysfillrect sysimgblt fb_sys_fops i2c_algo_bit i2c_bcm2835 bcm2835_gpiomem fixed uio_pdrv_genirq uio i2c_dev nfsd ip_tables x_tables ipv6
[ 13.727532] CPU: 2 PID: 478 Comm: Xorg Tainted: G W O 4.9.61-v7+ #3
[ 13.727534] Hardware name: BCM2835
[ 13.727552] [<8010f744>] (unwind_backtrace) from [<8010bd1c>] (show_stack+0x20/0x24)
[ 13.727562] [<8010bd1c>] (show_stack) from [<804498e0>] (dump_stack+0xc8/0x114)
[ 13.727571] [<804498e0>] (dump_stack) from [<8011cd38>] (__warn+0xe8/0x114)
[ 13.727578] [<8011cd38>] (__warn) from [<8011cdac>] (warn_slowpath_fmt+0x48/0x50)
[ 13.727638] [<8011cdac>] (warn_slowpath_fmt) from [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper])
[ 13.727733] [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks [drm_kms_helper]) from [<7f28798c>] (vc4_atomic_complete_commit+0x64/0x8c [vc4])
[ 13.727797] [<7f28798c>] (vc4_atomic_complete_commit [vc4]) from [<7f287b7c>] (vc4_atomic_commit+0x1c8/0x26c [vc4])
[ 13.727971] [<7f287b7c>] (vc4_atomic_commit [vc4]) from [<7f1e190c>] (drm_atomic_commit+0x5c/0x68 [drm])
[ 13.728151] [<7f1e190c>] (drm_atomic_commit [drm]) from [<7f24dea0>] (drm_atomic_helper_update_plane+0xf4/0x12c [drm_kms_helper])
[ 13.728252] [<7f24dea0>] (drm_atomic_helper_update_plane [drm_kms_helper]) from [<7f28d5c4>] (vc4_update_plane+0x58/0x154 [vc4])
[ 13.728411] [<7f28d5c4>] (vc4_update_plane [vc4]) from [<7f1e85d8>] (__setplane_internal+0x17c/0x220 [drm])
[ 13.728656] [<7f1e85d8>] (__setplane_internal [drm]) from [<7f1e8794>] (drm_mode_cursor_universal+0x118/0x1b4 [drm])
[ 13.728900] [<7f1e8794>] (drm_mode_cursor_universal [drm]) from [<7f1e88b4>] (drm_mode_cursor_common+0x84/0x194 [drm])
[ 13.729145] [<7f1e88b4>] (drm_mode_cursor_common [drm]) from [<7f1e8f50>] (drm_mode_cursor2_ioctl+0x18/0x1c [drm])
[ 13.729385] [<7f1e8f50>] (drm_mode_cursor2_ioctl [drm]) from [<7f1ccacc>] (drm_ioctl+0x1dc/0x404 [drm])
[ 13.729513] [<7f1ccacc>] (drm_ioctl [drm]) from [<8027c000>] (do_vfs_ioctl+0x9c/0x814)
[ 13.729524] [<8027c000>] (do_vfs_ioctl) from [<8027c7bc>] (SyS_ioctl+0x44/0x6c)
[ 13.729533] [<8027c7bc>] (SyS_ioctl) from [<80107e40>] (ret_fast_syscall+0x0/0x1c)
[ 13.729538] ---[ end trace c1e6786fc381c641 ]---
[ 13.787431] ------------[ cut here ]------------
[ 13.787510] WARNING: CPU: 2 PID: 478 at drivers/gpu/drm/drm_atomic_helper.c:1140 drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper]
[ 13.787512] [CRTC:54] vblank wait timed out
[ 13.787515] Modules linked in: fuse cfg80211 rfkill lcd_driver(O) ax88179_178a vc4 drm_kms_helper drm snd_soc_core snd_compress snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea i2c_gpio sysfillrect sysimgblt fb_sys_fops i2c_algo_bit i2c_bcm2835 bcm2835_gpiomem fixed uio_pdrv_genirq uio i2c_dev nfsd ip_tables x_tables ipv6
[ 13.787579] CPU: 2 PID: 478 Comm: Xorg Tainted: G W O 4.9.61-v7+ #3
[ 13.787581] Hardware name: BCM2835
[ 13.787598] [<8010f744>] (unwind_backtrace) from [<8010bd1c>] (show_stack+0x20/0x24)
[ 13.787608] [<8010bd1c>] (show_stack) from [<804498e0>] (dump_stack+0xc8/0x114)
[ 13.787617] [<804498e0>] (dump_stack) from [<8011cd38>] (__warn+0xe8/0x114)
[ 13.787624] [<8011cd38>] (__warn) from [<8011cdac>] (warn_slowpath_fmt+0x48/0x50)
[ 13.787682] [<8011cdac>] (warn_slowpath_fmt) from [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper])
[ 13.787780] [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks [drm_kms_helper]) from [<7f28798c>] (vc4_atomic_complete_commit+0x64/0x8c [vc4])
[ 13.787844] [<7f28798c>] (vc4_atomic_complete_commit [vc4]) from [<7f287b7c>] (vc4_atomic_commit+0x1c8/0x26c [vc4])
[ 13.788020] [<7f287b7c>] (vc4_atomic_commit [vc4]) from [<7f1e190c>] (drm_atomic_commit+0x5c/0x68 [drm])
[ 13.788198] [<7f1e190c>] (drm_atomic_commit [drm]) from [<7f24fb28>] (drm_atomic_helper_disable_plane+0xc4/0xe8 [drm_kms_helper])
[ 13.788375] [<7f24fb28>] (drm_atomic_helper_disable_plane [drm_kms_helper]) from [<7f1e8638>] (__setplane_internal+0x1dc/0x220 [drm])
[ 13.788619] [<7f1e8638>] (__setplane_internal [drm]) from [<7f1e8794>] (drm_mode_cursor_universal+0x118/0x1b4 [drm])
[ 13.788863] [<7f1e8794>] (drm_mode_cursor_universal [drm]) from [<7f1e88b4>] (drm_mode_cursor_common+0x84/0x194 [drm])
[ 13.789106] [<7f1e88b4>] (drm_mode_cursor_common [drm]) from [<7f1e8f30>] (drm_mode_cursor_ioctl+0x68/0x70 [drm])
[ 13.789348] [<7f1e8f30>] (drm_mode_cursor_ioctl [drm]) from [<7f1ccacc>] (drm_ioctl+0x1dc/0x404 [drm])
[ 13.789475] [<7f1ccacc>] (drm_ioctl [drm]) from [<8027c000>] (do_vfs_ioctl+0x9c/0x814)
[ 13.789485] [<8027c000>] (do_vfs_ioctl) from [<8027c7bc>] (SyS_ioctl+0x44/0x6c)
[ 13.789495] [<8027c7bc>] (SyS_ioctl) from [<80107e40>] (ret_fast_syscall+0x0/0x1c)
[ 13.789499] ---[ end trace c1e6786fc381c642 ]---
[ 13.847373] ------------[ cut here ]------------
[ 13.847448] WARNING: CPU: 2 PID: 478 at drivers/gpu/drm/drm_atomic_helper.c:1140 drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper]
[ 13.847451] [CRTC:54] vblank wait timed out
[ 13.847454] Modules linked in: fuse cfg80211 rfkill lcd_driver(O) ax88179_178a vc4 drm_kms_helper drm snd_soc_core snd_compress snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea i2c_gpio sysfillrect sysimgblt fb_sys_fops i2c_algo_bit i2c_bcm2835 bcm2835_gpiomem fixed uio_pdrv_genirq uio i2c_dev nfsd ip_tables x_tables ipv6
[ 13.847518] CPU: 2 PID: 478 Comm: Xorg Tainted: G W O 4.9.61-v7+ #3
[ 13.847520] Hardware name: BCM2835
[ 13.847537] [<8010f744>] (unwind_backtrace) from [<8010bd1c>] (show_stack+0x20/0x24)
[ 13.847547] [<8010bd1c>] (show_stack) from [<804498e0>] (dump_stack+0xc8/0x114)
[ 13.847556] [<804498e0>] (dump_stack) from [<8011cd38>] (__warn+0xe8/0x114)
[ 13.847563] [<8011cd38>] (__warn) from [<8011cdac>] (warn_slowpath_fmt+0x48/0x50)
[ 13.847622] [<8011cdac>] (warn_slowpath_fmt) from [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks+0x248/0x254 [drm_kms_helper])
[ 13.847717] [<7f24d20c>] (drm_atomic_helper_wait_for_vblanks [drm_kms_helper]) from [<7f28798c>] (vc4_atomic_complete_commit+0x64/0x8c [vc4])
[ 13.847782] [<7f28798c>] (vc4_atomic_complete_commit [vc4]) from [<7f287b7c>] (vc4_atomic_commit+0x1c8/0x26c [vc4])
[ 13.847955] [<7f287b7c>] (vc4_atomic_commit [vc4]) from [<7f1e190c>] (drm_atomic_commit+0x5c/0x68 [drm])
[ 13.848134] [<7f1e190c>] (drm_atomic_commit [drm]) from [<7f24dea0>] (drm_atomic_helper_update_plane+0xf4/0x12c [drm_kms_helper])
[ 13.848222] [<7f24dea0>] (drm_atomic_helper_update_plane [drm_kms_helper]) from [<7f28d5c4>] (vc4_update_plane+0x58/0x154 [vc4])
[ 13.848376] [<7f28d5c4>] (vc4_update_plane [vc4]) from [<7f1e85d8>] (__setplane_internal+0x17c/0x220 [drm])
[ 13.848621] [<7f1e85d8>] (__setplane_internal [drm]) from [<7f1e8794>] (drm_mode_cursor_universal+0x118/0x1b4 [drm])
[ 13.848864] [<7f1e8794>] (drm_mode_cursor_universal [drm]) from [<7f1e88b4>] (drm_mode_cursor_common+0x84/0x194 [drm])
[ 13.849109] [<7f1e88b4>] (drm_mode_cursor_common [drm]) from [<7f1e8f50>] (drm_mode_cursor2_ioctl+0x18/0x1c [drm])
[ 13.849350] [<7f1e8f50>] (drm_mode_cursor2_ioctl [drm]) from [<7f1ccacc>] (drm_ioctl+0x1dc/0x404 [drm])
[ 13.849478] [<7f1ccacc>] (drm_ioctl [drm]) from [<8027c000>] (do_vfs_ioctl+0x9c/0x814)
[ 13.849488] [<8027c000>] (do_vfs_ioctl) from [<8027c7bc>] (SyS_ioctl+0x44/0x6c)
[ 13.849498] [<8027c7bc>] (SyS_ioctl) from [<80107e40>] (ret_fast_syscall+0x0/0x1c)
[ 13.849502] ---[ end trace c1e6786fc381c643 ]---
Is there a better branch to use for such endeavour? What could I be doing wrong?
Thank you!
Adrian
The text was updated successfully, but these errors were encountered: