gizmomouse
Posts: 11
Joined: Mon Jun 10, 2019 2:45 am

DSI Panel JDI LT070ME05000 bringup issues

Wed Oct 09, 2019 5:05 pm

Hi,

I'm bringing up a CM3+ board that is attached to a DSI Panel called JDI LT070ME05000 (Link to Ali-Express Source). Electrically it looks like it is connected correctly.

Using previous CM3+ DSI discussions along with the documentation for the panel I have this entry in my overlay file:

Code: Select all

...
[email protected] {
  target = <&dsi1>;
  __overlay__{
    status = "okay";
    #address-cells = <1>;
    #size-cells = <0>;
    power-domains = <&power 18>;
    port {
      dsi_out_port:endpoint {
        remote-endpoint = <&panel_dsi_port>;
      };
    };
    panel_jdilt070:[email protected] {
      compatible    = "jdi,lt070me05000";
      label         = "panel_test";
      status        = "okay";
      reg           = <0>;
      vc4_dsi       = <&dsi1>;
      vddp-supply   = <&dsi_vddp_supply>;
      iovcc-supply  = <&dsi_iovcc_supply>;
      pinctrl-names = "default";
      pinctrl-0     = <&gpex1b_dsi_reset_pin &gpex1b_dsi_enable_pin &gpex1b_dsi_dcdc_pin>;
      reset-gpios   = <&gpex1b 0 GPIO_ACTIVE_HIGH>;    //
      enable-gpios  = <&gpex1b 1 GPIO_ACTIVE_HIGH>;    //
      dcdc-en-gpios = <&gpex1b 2 GPIO_ACTIVE_HIGH>;    //<AND THAT THIS REALLY IS DCDC ENABLE AND NOT BACKLIGHT!>
      port {
         panel_dsi_port: endpoint {
           remote-endpoint = <&dsi_out_port>;
        };
      };
    };
  };
};
...
I've added the following lines to my 'config.txt' file

Code: Select all

...
dtoverlay=vc4-kms-v3d
ignore_lcd=1
...
The screen doesn't turn on. I've captured the relevant part of the /var/log/syslog

Code: Select all

...
[    5.305556] input: user buttons keyboard as /devices/platform/[email protected]/input/input3
[    5.310702] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[    5.330010] i2c i2c-1: Added multiplexed i2c bus 3
[    5.330602] i2c i2c-1: Added multiplexed i2c bus 4
[    5.333785] i2c i2c-1: Added multiplexed i2c bus 5
[    5.339177] i2c i2c-1: Added multiplexed i2c bus 6
[    5.339195] i2c-mux-gpio i2c1-mux: 4 port mux on bcm2835 I2C adapter adapter
[    5.341752] bcm2835_audio soc:audio: card created with 8 channels
[    5.586586] usbcore: registered new interface driver uas
[    5.672887] vc4_hdmi 3f902000.hdmi: ASoC: Failed to create component debugfs directory
[    5.677409] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[    5.686526] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    5.686920] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[    5.701823] vc4-drm soc:gpu: failed to bind 3f700000.dsi (ops vc4_dsi_ops [vc4]): -517
[    5.703540] vc4-drm soc:gpu: master bind failed: -517
[    5.779840] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    5.915186] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    6.147086] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_probe: 478
[    6.147107] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_add: 417
[    6.147207] panel-jdi-lt070me05000 3f700000.dsi.0: 3f700000.dsi.0 supply vddp not found, using dummy regulator
[    6.147299] panel-jdi-lt070me05000 3f700000.dsi.0: Linked as a consumer to regulator.0
[    6.147339] panel-jdi-lt070me05000 3f700000.dsi.0: 3f700000.dsi.0 supply iovcc not found, using dummy regulator
[    6.164867] vc4_hdmi 3f902000.hdmi: ASoC: Failed to create component debugfs directory
[    6.167464] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[    6.168391] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    6.168601] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[    6.183276] vc4-drm soc:gpu: bound 3f700000.dsi (ops vc4_dsi_ops [vc4])
[    6.183513] vc4-drm soc:gpu: bound 3f004000.txp (ops vc4_txp_ops [vc4])
[    6.183626] vc4-drm soc:gpu: bound 3f400000.hvs (ops vc4_hvs_ops [vc4])
[    6.184080] vc4-drm soc:gpu: bound 3f206000.pixelvalve (ops vc4_crtc_ops [vc4])
[    6.184538] vc4-drm soc:gpu: bound 3f207000.pixelvalve (ops vc4_crtc_ops [vc4])
[    6.184969] vc4-drm soc:gpu: bound 3f807000.pixelvalve (ops vc4_crtc_ops [vc4])
[    6.212193] vc4-drm soc:gpu: bound 3fc00000.v3d (ops vc4_v3d_ops [vc4])
[    6.212219] checking generic (3ea2a000 1c2000) vs hw (0 ffffffff)
[    6.212228] fb: switching to vc4drmfb from simple
[    6.212521] Console: switching to colour dummy device 80x30
[    6.215281] [drm] Initialized vc4 0.0.0 20140616 for soc:gpu on minor 0
[    6.215298] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    6.215304] [drm] Driver supports precise vblank timestamp query.
[    6.235534] vc4-drm soc:gpu: HDMI-A-1: EDID is invalid:
[    6.235558] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235565] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235571] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235577] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235584] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235590] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235597] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235603] 	[00] ZERO 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[    6.235765] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 323
[    6.253270] Console: switching to colour frame buffer device 150x45
[    6.253335] vc4-drm soc:gpu: fb0: DRM emulated frame buffer device
[    6.395930] inv-mpu6050-i2c 4-0068: mounting matrix not found: using identity...
[    6.566825] usbcore: registered new interface driver rtl8192cu
[    6.610460] i2c i2c-4: Added multiplexed i2c bus 7
[    7.027441] panel-jdi-lt070me05000 3f700000.dsi.0: dsi_dcs_bl_update_status: 365
[    7.372603] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 323
[    7.374655] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_prepare: 237
[    7.411997] ------------[ cut here ]------------
[    7.412037] WARNING: CPU: 3 PID: 59 at /home/cospan/Projects/rpi/source/linux/drivers/gpio/gpiolib.c:3172 gpiod_set_value+0x5c/0x68
[    7.412044] Modules linked in: inv_mpu6050_i2c inv_mpu6050 industrialio_triggered_buffer kfifo_buf industrialio 8192cu panel_jdi_lt070me05000 joydev evdev sha256_generic cfg80211 rfkill vc4 uas drm_kms_helper drm drm_panel_orientation_quirks snd_soc_core snd_compress snd_bcm2835(C) snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea raspberrypi_hwmon sysfillrect sysimgblt fb_sys_fops hwmon i2c_bcm2835 bcm2835_codec(C) bcm2835_v4l2(C) v4l2_mem2mem bcm2835_mmal_vchiq(C) v4l2_common videobuf2_dma_contig videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev media vc_sm_cma(C) hid_asus i2c_mux_gpio i2c_mux gpio_keys uio_pdrv_genirq uio fixed sg i2c_dev ip_tables x_tables ipv6
[    7.412362] CPU: 3 PID: 59 Comm: kworker/3:1 Tainted: G         C        4.19.66-v7+ #20
[    7.412367] Hardware name: BCM2835
[    7.412513] Workqueue: events output_poll_execute [drm_kms_helper]
[    7.412556] [<801110c8>] (unwind_backtrace) from [<8010caa4>] (show_stack+0x20/0x24)
[    7.412575] [<8010caa4>] (show_stack) from [<807ce470>] (dump_stack+0xc8/0x114)
[    7.412601] [<807ce470>] (dump_stack) from [<8011f500>] (__warn+0xf4/0x120)
[    7.412619] [<8011f500>] (__warn) from [<8011f618>] (warn_slowpath_null+0x4c/0x58)
[    7.412636] [<8011f618>] (warn_slowpath_null) from [<804f8100>] (gpiod_set_value+0x5c/0x68)
[    7.412663] [<804f8100>] (gpiod_set_value) from [<7f5f3130>] (jdi_panel_prepare+0x7c/0x480 [panel_jdi_lt070me05000])
[    7.412830] [<7f5f3130>] (jdi_panel_prepare [panel_jdi_lt070me05000]) from [<7f4895e4>] (panel_bridge_pre_enable+0x3c/0x40 [drm_kms_helper])
[    7.413276] [<7f4895e4>] (panel_bridge_pre_enable [drm_kms_helper]) from [<7f4028ec>] (drm_bridge_pre_enable+0x3c/0x40 [drm])
[    7.413678] [<7f4028ec>] (drm_bridge_pre_enable [drm]) from [<7f4cccf8>] (vc4_dsi_encoder_enable+0x10f4/0x18c8 [vc4])
[    7.413887] [<7f4cccf8>] (vc4_dsi_encoder_enable [vc4]) from [<7f484520>] (drm_atomic_helper_commit_modeset_enables+0x134/0x248 [drm_kms_helper])
[    7.414089] [<7f484520>] (drm_atomic_helper_commit_modeset_enables [drm_kms_helper]) from [<7f4d1030>] (vc4_atomic_complete_commit+0x6c/0x35c [vc4])
[    7.414263] [<7f4d1030>] (vc4_atomic_complete_commit [vc4]) from [<7f4d1470>] (vc4_atomic_commit+0x150/0x180 [vc4])
[    7.414636] [<7f4d1470>] (vc4_atomic_commit [vc4]) from [<7f400360>] (drm_atomic_commit+0x58/0x60 [drm])
[    7.415042] [<7f400360>] (drm_atomic_commit [drm]) from [<7f48a1bc>] (restore_fbdev_mode_atomic+0x168/0x1c4 [drm_kms_helper])
[    7.415301] [<7f48a1bc>] (restore_fbdev_mode_atomic [drm_kms_helper]) from [<7f48bfd8>] (restore_fbdev_mode+0x54/0x184 [drm_kms_helper])
[    7.415540] [<7f48bfd8>] (restore_fbdev_mode [drm_kms_helper]) from [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x58/0xa0 [drm_kms_helper])
[    7.415803] [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked [drm_kms_helper]) from [<7f48dc44>] (drm_fb_helper_set_par+0x3c/0x64 [drm_kms_helper])
[    7.416043] [<7f48dc44>] (drm_fb_helper_set_par [drm_kms_helper]) from [<7f48db08>] (drm_fb_helper_hotplug_event.part.9+0x9c/0xb8 [drm_kms_helper])
[    7.416304] [<7f48db08>] (drm_fb_helper_hotplug_event.part.9 [drm_kms_helper]) from [<7f48db54>] (drm_fb_helper_hotplug_event+0x30/0x44 [drm_kms_helper])
[    7.416546] [<7f48db54>] (drm_fb_helper_hotplug_event [drm_kms_helper]) from [<7f48dcd0>] (drm_fb_helper_output_poll_changed+0x1c/0x20 [drm_kms_helper])
[    7.416804] [<7f48dcd0>] (drm_fb_helper_output_poll_changed [drm_kms_helper]) from [<7f47cde0>] (drm_kms_helper_hotplug_event+0x34/0x40 [drm_kms_helper])
[    7.417039] [<7f47cde0>] (drm_kms_helper_hotplug_event [drm_kms_helper]) from [<7f47d848>] (output_poll_execute+0x78/0x170 [drm_kms_helper])
[    7.417173] [<7f47d848>] (output_poll_execute [drm_kms_helper]) from [<8013929c>] (process_one_work+0x158/0x438)
[    7.417194] [<8013929c>] (process_one_work) from [<801395b4>] (worker_thread+0x38/0x554)
[    7.417211] [<801395b4>] (worker_thread) from [<8013f4a4>] (kthread+0x12c/0x168)
[    7.417246] [<8013f4a4>] (kthread) from [<801010ac>] (ret_from_fork+0x14/0x28)
[    7.417256] Exception stack(0xb9c87fb0 to 0xb9c87ff8)
[    7.417265] 7fa0:                                     00000000 00000000 00000000 00000000
[    7.417277] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    7.417287] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    7.417298] ---[ end trace 3ca49feee7d43805 ]---
[    7.419747] ------------[ cut here ]------------
[    7.419772] WARNING: CPU: 3 PID: 59 at /home/cospan/Projects/rpi/source/linux/drivers/gpio/gpiolib.c:3172 gpiod_set_value+0x5c/0x68
[    7.419778] Modules linked in: inv_mpu6050_i2c inv_mpu6050 industrialio_triggered_buffer kfifo_buf industrialio 8192cu panel_jdi_lt070me05000 joydev evdev sha256_generic cfg80211 rfkill vc4 uas drm_kms_helper drm drm_panel_orientation_quirks snd_soc_core snd_compress snd_bcm2835(C) snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea raspberrypi_hwmon sysfillrect sysimgblt fb_sys_fops hwmon i2c_bcm2835 bcm2835_codec(C) bcm2835_v4l2(C) v4l2_mem2mem bcm2835_mmal_vchiq(C) v4l2_common videobuf2_dma_contig videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev media vc_sm_cma(C) hid_asus i2c_mux_gpio i2c_mux gpio_keys uio_pdrv_genirq uio fixed sg i2c_dev ip_tables x_tables ipv6
[    7.420085] CPU: 3 PID: 59 Comm: kworker/3:1 Tainted: G        WC        4.19.66-v7+ #20
[    7.420089] Hardware name: BCM2835
[    7.420214] Workqueue: events output_poll_execute [drm_kms_helper]
[    7.420241] [<801110c8>] (unwind_backtrace) from [<8010caa4>] (show_stack+0x20/0x24)
[    7.420259] [<8010caa4>] (show_stack) from [<807ce470>] (dump_stack+0xc8/0x114)
[    7.420279] [<807ce470>] (dump_stack) from [<8011f500>] (__warn+0xf4/0x120)
[    7.420295] [<8011f500>] (__warn) from [<8011f618>] (warn_slowpath_null+0x4c/0x58)
[    7.420314] [<8011f618>] (warn_slowpath_null) from [<804f8100>] (gpiod_set_value+0x5c/0x68)
[    7.420341] [<804f8100>] (gpiod_set_value) from [<7f5f3148>] (jdi_panel_prepare+0x94/0x480 [panel_jdi_lt070me05000])
[    7.420483] [<7f5f3148>] (jdi_panel_prepare [panel_jdi_lt070me05000]) from [<7f4895e4>] (panel_bridge_pre_enable+0x3c/0x40 [drm_kms_helper])
[    7.420916] [<7f4895e4>] (panel_bridge_pre_enable [drm_kms_helper]) from [<7f4028ec>] (drm_bridge_pre_enable+0x3c/0x40 [drm])
[    7.421307] [<7f4028ec>] (drm_bridge_pre_enable [drm]) from [<7f4cccf8>] (vc4_dsi_encoder_enable+0x10f4/0x18c8 [vc4])
[    7.421526] [<7f4cccf8>] (vc4_dsi_encoder_enable [vc4]) from [<7f484520>] (drm_atomic_helper_commit_modeset_enables+0x134/0x248 [drm_kms_helper])
[    7.421722] [<7f484520>] (drm_atomic_helper_commit_modeset_enables [drm_kms_helper]) from [<7f4d1030>] (vc4_atomic_complete_commit+0x6c/0x35c [vc4])
[    7.421875] [<7f4d1030>] (vc4_atomic_complete_commit [vc4]) from [<7f4d1470>] (vc4_atomic_commit+0x150/0x180 [vc4])
[    7.422276] [<7f4d1470>] (vc4_atomic_commit [vc4]) from [<7f400360>] (drm_atomic_commit+0x58/0x60 [drm])
[    7.422678] [<7f400360>] (drm_atomic_commit [drm]) from [<7f48a1bc>] (restore_fbdev_mode_atomic+0x168/0x1c4 [drm_kms_helper])
[    7.422928] [<7f48a1bc>] (restore_fbdev_mode_atomic [drm_kms_helper]) from [<7f48bfd8>] (restore_fbdev_mode+0x54/0x184 [drm_kms_helper])
[    7.423174] [<7f48bfd8>] (restore_fbdev_mode [drm_kms_helper]) from [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x58/0xa0 [drm_kms_helper])
[    7.423416] [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked [drm_kms_helper]) from [<7f48dc44>] (drm_fb_helper_set_par+0x3c/0x64 [drm_kms_helper])
[    7.423681] [<7f48dc44>] (drm_fb_helper_set_par [drm_kms_helper]) from [<7f48db08>] (drm_fb_helper_hotplug_event.part.9+0x9c/0xb8 [drm_kms_helper])
[    7.423923] [<7f48db08>] (drm_fb_helper_hotplug_event.part.9 [drm_kms_helper]) from [<7f48db54>] (drm_fb_helper_hotplug_event+0x30/0x44 [drm_kms_helper])
[    7.424180] [<7f48db54>] (drm_fb_helper_hotplug_event [drm_kms_helper]) from [<7f48dcd0>] (drm_fb_helper_output_poll_changed+0x1c/0x20 [drm_kms_helper])
[    7.424418] [<7f48dcd0>] (drm_fb_helper_output_poll_changed [drm_kms_helper]) from [<7f47cde0>] (drm_kms_helper_hotplug_event+0x34/0x40 [drm_kms_helper])
[    7.424657] [<7f47cde0>] (drm_kms_helper_hotplug_event [drm_kms_helper]) from [<7f47d848>] (output_poll_execute+0x78/0x170 [drm_kms_helper])
[    7.424795] [<7f47d848>] (output_poll_execute [drm_kms_helper]) from [<8013929c>] (process_one_work+0x158/0x438)
[    7.424815] [<8013929c>] (process_one_work) from [<801395b4>] (worker_thread+0x38/0x554)
[    7.424833] [<801395b4>] (worker_thread) from [<8013f4a4>] (kthread+0x12c/0x168)
[    7.424851] [<8013f4a4>] (kthread) from [<801010ac>] (ret_from_fork+0x14/0x28)
[    7.424859] Exception stack(0xb9c87fb0 to 0xb9c87ff8)
[    7.424868] 7fa0:                                     00000000 00000000 00000000 00000000
[    7.424880] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    7.424890] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    7.424967] ---[ end trace 3ca49feee7d43806 ]---
[    7.443028] ------------[ cut here ]------------
[    7.443058] WARNING: CPU: 3 PID: 59 at /home/cospan/Projects/rpi/source/linux/drivers/gpio/gpiolib.c:3172 gpiod_set_value+0x5c/0x68
[    7.443066] Modules linked in: inv_mpu6050_i2c inv_mpu6050 industrialio_triggered_buffer kfifo_buf industrialio 8192cu panel_jdi_lt070me05000 joydev evdev sha256_generic cfg80211 rfkill vc4 uas drm_kms_helper drm drm_panel_orientation_quirks snd_soc_core snd_compress snd_bcm2835(C) snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea raspberrypi_hwmon sysfillrect sysimgblt fb_sys_fops hwmon i2c_bcm2835 bcm2835_codec(C) bcm2835_v4l2(C) v4l2_mem2mem bcm2835_mmal_vchiq(C) v4l2_common videobuf2_dma_contig videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev media vc_sm_cma(C) hid_asus i2c_mux_gpio i2c_mux gpio_keys uio_pdrv_genirq uio fixed sg i2c_dev ip_tables x_tables ipv6
[    7.443376] CPU: 3 PID: 59 Comm: kworker/3:1 Tainted: G        WC        4.19.66-v7+ #20
[    7.443381] Hardware name: BCM2835
[    7.443522] Workqueue: events output_poll_execute [drm_kms_helper]
[    7.443556] [<801110c8>] (unwind_backtrace) from [<8010caa4>] (show_stack+0x20/0x24)
[    7.443582] [<8010caa4>] (show_stack) from [<807ce470>] (dump_stack+0xc8/0x114)
[    7.443601] [<807ce470>] (dump_stack) from [<8011f500>] (__warn+0xf4/0x120)
[    7.443617] [<8011f500>] (__warn) from [<8011f618>] (warn_slowpath_null+0x4c/0x58)
[    7.443634] [<8011f618>] (warn_slowpath_null) from [<804f8100>] (gpiod_set_value+0x5c/0x68)
[    7.443658] [<804f8100>] (gpiod_set_value) from [<7f5f3160>] (jdi_panel_prepare+0xac/0x480 [panel_jdi_lt070me05000])
[    7.443793] [<7f5f3160>] (jdi_panel_prepare [panel_jdi_lt070me05000]) from [<7f4895e4>] (panel_bridge_pre_enable+0x3c/0x40 [drm_kms_helper])
[    7.444223] [<7f4895e4>] (panel_bridge_pre_enable [drm_kms_helper]) from [<7f4028ec>] (drm_bridge_pre_enable+0x3c/0x40 [drm])
[    7.444592] [<7f4028ec>] (drm_bridge_pre_enable [drm]) from [<7f4cccf8>] (vc4_dsi_encoder_enable+0x10f4/0x18c8 [vc4])
[    7.444795] [<7f4cccf8>] (vc4_dsi_encoder_enable [vc4]) from [<7f484520>] (drm_atomic_helper_commit_modeset_enables+0x134/0x248 [drm_kms_helper])
[    7.444990] [<7f484520>] (drm_atomic_helper_commit_modeset_enables [drm_kms_helper]) from [<7f4d1030>] (vc4_atomic_complete_commit+0x6c/0x35c [vc4])
[    7.445145] [<7f4d1030>] (vc4_atomic_complete_commit [vc4]) from [<7f4d1470>] (vc4_atomic_commit+0x150/0x180 [vc4])
[    7.445513] [<7f4d1470>] (vc4_atomic_commit [vc4]) from [<7f400360>] (drm_atomic_commit+0x58/0x60 [drm])
[    7.445913] [<7f400360>] (drm_atomic_commit [drm]) from [<7f48a1bc>] (restore_fbdev_mode_atomic+0x168/0x1c4 [drm_kms_helper])
[    7.446165] [<7f48a1bc>] (restore_fbdev_mode_atomic [drm_kms_helper]) from [<7f48bfd8>] (restore_fbdev_mode+0x54/0x184 [drm_kms_helper])
[    7.446405] [<7f48bfd8>] (restore_fbdev_mode [drm_kms_helper]) from [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x58/0xa0 [drm_kms_helper])
[    7.446644] [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked [drm_kms_helper]) from [<7f48dc44>] (drm_fb_helper_set_par+0x3c/0x64 [drm_kms_helper])
[    7.446889] [<7f48dc44>] (drm_fb_helper_set_par [drm_kms_helper]) from [<7f48db08>] (drm_fb_helper_hotplug_event.part.9+0x9c/0xb8 [drm_kms_helper])
[    7.447130] [<7f48db08>] (drm_fb_helper_hotplug_event.part.9 [drm_kms_helper]) from [<7f48db54>] (drm_fb_helper_hotplug_event+0x30/0x44 [drm_kms_helper])
[    7.447366] [<7f48db54>] (drm_fb_helper_hotplug_event [drm_kms_helper]) from [<7f48dcd0>] (drm_fb_helper_output_poll_changed+0x1c/0x20 [drm_kms_helper])
[    7.447611] [<7f48dcd0>] (drm_fb_helper_output_poll_changed [drm_kms_helper]) from [<7f47cde0>] (drm_kms_helper_hotplug_event+0x34/0x40 [drm_kms_helper])
[    7.447848] [<7f47cde0>] (drm_kms_helper_hotplug_event [drm_kms_helper]) from [<7f47d848>] (output_poll_execute+0x78/0x170 [drm_kms_helper])
[    7.447979] [<7f47d848>] (output_poll_execute [drm_kms_helper]) from [<8013929c>] (process_one_work+0x158/0x438)
[    7.448004] [<8013929c>] (process_one_work) from [<801395b4>] (worker_thread+0x38/0x554)
[    7.448022] [<801395b4>] (worker_thread) from [<8013f4a4>] (kthread+0x12c/0x168)
[    7.448041] [<8013f4a4>] (kthread) from [<801010ac>] (ret_from_fork+0x14/0x28)
[    7.448049] Exception stack(0xb9c87fb0 to 0xb9c87ff8)
[    7.448058] 7fa0:                                     00000000 00000000 00000000 00000000
[    7.448071] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    7.448081] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    7.448091] ---[ end trace 3ca49feee7d43807 ]---
[    7.450550] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_init: 69
[    7.450766] [drm:vc4_dsi_irq_handler [vc4]] *ERROR* DSI1: LP0 contention error
[    7.588599] random: crng init done
[    7.588617] random: 7 urandom warning(s) missed due to ratelimiting
[    8.471955] vc4_dsi 3f700000.dsi: transfer interrupt wait timeout
[    8.471977] vc4_dsi 3f700000.dsi: instat: 0x00000000
[    8.472091] [drm:vc4_dsi_host_transfer [vc4]] *ERROR* DSI transfer failed, resetting: -110
[    8.472144] panel-jdi-lt070me05000 3f700000.dsi.0: failed to init panel: -110
[    8.472151] ------------[ cut here ]------------
[    8.472174] WARNING: CPU: 3 PID: 59 at /home/cospan/Projects/rpi/source/linux/drivers/gpio/gpiolib.c:3172 gpiod_set_value+0x5c/0x68
[    8.472181] Modules linked in: inv_mpu6050_i2c inv_mpu6050 industrialio_triggered_buffer kfifo_buf industrialio 8192cu panel_jdi_lt070me05000 joydev evdev sha256_generic cfg80211 rfkill vc4 uas drm_kms_helper drm drm_panel_orientation_quirks snd_soc_core snd_compress snd_bcm2835(C) snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea raspberrypi_hwmon sysfillrect sysimgblt fb_sys_fops hwmon i2c_bcm2835 bcm2835_codec(C) bcm2835_v4l2(C) v4l2_mem2mem bcm2835_mmal_vchiq(C) v4l2_common videobuf2_dma_contig videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev media vc_sm_cma(C) hid_asus i2c_mux_gpio i2c_mux gpio_keys uio_pdrv_genirq uio fixed sg i2c_dev ip_tables x_tables ipv6
[    8.472484] CPU: 3 PID: 59 Comm: kworker/3:1 Tainted: G        WC        4.19.66-v7+ #20
[    8.472489] Hardware name: BCM2835
[    8.472624] Workqueue: events output_poll_execute [drm_kms_helper]
[    8.472657] [<801110c8>] (unwind_backtrace) from [<8010caa4>] (show_stack+0x20/0x24)
[    8.472676] [<8010caa4>] (show_stack) from [<807ce470>] (dump_stack+0xc8/0x114)
[    8.472696] [<807ce470>] (dump_stack) from [<8011f500>] (__warn+0xf4/0x120)
[    8.472712] [<8011f500>] (__warn) from [<8011f618>] (warn_slowpath_null+0x4c/0x58)
[    8.472729] [<8011f618>] (warn_slowpath_null) from [<804f8100>] (gpiod_set_value+0x5c/0x68)
[    8.472754] [<804f8100>] (gpiod_set_value) from [<7f5f3394>] (jdi_panel_prepare+0x2e0/0x480 [panel_jdi_lt070me05000])
[    8.472888] [<7f5f3394>] (jdi_panel_prepare [panel_jdi_lt070me05000]) from [<7f4895e4>] (panel_bridge_pre_enable+0x3c/0x40 [drm_kms_helper])
[    8.473320] [<7f4895e4>] (panel_bridge_pre_enable [drm_kms_helper]) from [<7f4028ec>] (drm_bridge_pre_enable+0x3c/0x40 [drm])
[    8.473680] [<7f4028ec>] (drm_bridge_pre_enable [drm]) from [<7f4cccf8>] (vc4_dsi_encoder_enable+0x10f4/0x18c8 [vc4])
[    8.473874] [<7f4cccf8>] (vc4_dsi_encoder_enable [vc4]) from [<7f484520>] (drm_atomic_helper_commit_modeset_enables+0x134/0x248 [drm_kms_helper])
[    8.474070] [<7f484520>] (drm_atomic_helper_commit_modeset_enables [drm_kms_helper]) from [<7f4d1030>] (vc4_atomic_complete_commit+0x6c/0x35c [vc4])
[    8.474224] [<7f4d1030>] (vc4_atomic_complete_commit [vc4]) from [<7f4d1470>] (vc4_atomic_commit+0x150/0x180 [vc4])
[    8.474575] [<7f4d1470>] (vc4_atomic_commit [vc4]) from [<7f400360>] (drm_atomic_commit+0x58/0x60 [drm])
[    8.474968] [<7f400360>] (drm_atomic_commit [drm]) from [<7f48a1bc>] (restore_fbdev_mode_atomic+0x168/0x1c4 [drm_kms_helper])
[    8.475208] [<7f48a1bc>] (restore_fbdev_mode_atomic [drm_kms_helper]) from [<7f48bfd8>] (restore_fbdev_mode+0x54/0x184 [drm_kms_helper])
[    8.475448] [<7f48bfd8>] (restore_fbdev_mode [drm_kms_helper]) from [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x58/0xa0 [drm_kms_helper])
[    8.475688] [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked [drm_kms_helper]) from [<7f48dc44>] (drm_fb_helper_set_par+0x3c/0x64 [drm_kms_helper])
[    8.475927] [<7f48dc44>] (drm_fb_helper_set_par [drm_kms_helper]) from [<7f48db08>] (drm_fb_helper_hotplug_event.part.9+0x9c/0xb8 [drm_kms_helper])
[    8.476167] [<7f48db08>] (drm_fb_helper_hotplug_event.part.9 [drm_kms_helper]) from [<7f48db54>] (drm_fb_helper_hotplug_event+0x30/0x44 [drm_kms_helper])
[    8.476405] [<7f48db54>] (drm_fb_helper_hotplug_event [drm_kms_helper]) from [<7f48dcd0>] (drm_fb_helper_output_poll_changed+0x1c/0x20 [drm_kms_helper])
[    8.476641] [<7f48dcd0>] (drm_fb_helper_output_poll_changed [drm_kms_helper]) from [<7f47cde0>] (drm_kms_helper_hotplug_event+0x34/0x40 [drm_kms_helper])
[    8.476876] [<7f47cde0>] (drm_kms_helper_hotplug_event [drm_kms_helper]) from [<7f47d848>] (output_poll_execute+0x78/0x170 [drm_kms_helper])
[    8.477006] [<7f47d848>] (output_poll_execute [drm_kms_helper]) from [<8013929c>] (process_one_work+0x158/0x438)
[    8.477024] [<8013929c>] (process_one_work) from [<801395b4>] (worker_thread+0x38/0x554)
[    8.477041] [<801395b4>] (worker_thread) from [<8013f4a4>] (kthread+0x12c/0x168)
[    8.477058] [<8013f4a4>] (kthread) from [<801010ac>] (ret_from_fork+0x14/0x28)
[    8.477065] Exception stack(0xb9c87fb0 to 0xb9c87ff8)
[    8.477075] 7fa0:                                     00000000 00000000 00000000 00000000
[    8.477086] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    8.477096] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    8.477106] ---[ end trace 3ca49feee7d43808 ]---
[    8.479472] ------------[ cut here ]------------
[    8.479491] WARNING: CPU: 3 PID: 59 at /home/cospan/Projects/rpi/source/linux/drivers/gpio/gpiolib.c:3172 gpiod_set_value+0x5c/0x68
[    8.479497] Modules linked in: inv_mpu6050_i2c inv_mpu6050 industrialio_triggered_buffer kfifo_buf industrialio 8192cu panel_jdi_lt070me05000 joydev evdev sha256_generic cfg80211 rfkill vc4 uas drm_kms_helper drm drm_panel_orientation_quirks snd_soc_core snd_compress snd_bcm2835(C) snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea raspberrypi_hwmon sysfillrect sysimgblt fb_sys_fops hwmon i2c_bcm2835 bcm2835_codec(C) bcm2835_v4l2(C) v4l2_mem2mem bcm2835_mmal_vchiq(C) v4l2_common videobuf2_dma_contig videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev media vc_sm_cma(C) hid_asus i2c_mux_gpio i2c_mux gpio_keys uio_pdrv_genirq uio fixed sg i2c_dev ip_tables x_tables ipv6
[    8.479783] CPU: 3 PID: 59 Comm: kworker/3:1 Tainted: G        WC        4.19.66-v7+ #20
[    8.479787] Hardware name: BCM2835
[    8.479905] Workqueue: events output_poll_execute [drm_kms_helper]
[    8.479928] [<801110c8>] (unwind_backtrace) from [<8010caa4>] (show_stack+0x20/0x24)
[    8.479944] [<8010caa4>] (show_stack) from [<807ce470>] (dump_stack+0xc8/0x114)
[    8.479961] [<807ce470>] (dump_stack) from [<8011f500>] (__warn+0xf4/0x120)
[    8.479976] [<8011f500>] (__warn) from [<8011f618>] (warn_slowpath_null+0x4c/0x58)
[    8.479992] [<8011f618>] (warn_slowpath_null) from [<804f8100>] (gpiod_set_value+0x5c/0x68)
[    8.480014] [<804f8100>] (gpiod_set_value) from [<7f5f33a0>] (jdi_panel_prepare+0x2ec/0x480 [panel_jdi_lt070me05000])
[    8.480145] [<7f5f33a0>] (jdi_panel_prepare [panel_jdi_lt070me05000]) from [<7f4895e4>] (panel_bridge_pre_enable+0x3c/0x40 [drm_kms_helper])
[    8.480538] [<7f4895e4>] (panel_bridge_pre_enable [drm_kms_helper]) from [<7f4028ec>] (drm_bridge_pre_enable+0x3c/0x40 [drm])
[    8.480889] [<7f4028ec>] (drm_bridge_pre_enable [drm]) from [<7f4cccf8>] (vc4_dsi_encoder_enable+0x10f4/0x18c8 [vc4])
[    8.481081] [<7f4cccf8>] (vc4_dsi_encoder_enable [vc4]) from [<7f484520>] (drm_atomic_helper_commit_modeset_enables+0x134/0x248 [drm_kms_helper])
[    8.481276] [<7f484520>] (drm_atomic_helper_commit_modeset_enables [drm_kms_helper]) from [<7f4d1030>] (vc4_atomic_complete_commit+0x6c/0x35c [vc4])
[    8.481428] [<7f4d1030>] (vc4_atomic_complete_commit [vc4]) from [<7f4d1470>] (vc4_atomic_commit+0x150/0x180 [vc4])
[    8.481778] [<7f4d1470>] (vc4_atomic_commit [vc4]) from [<7f400360>] (drm_atomic_commit+0x58/0x60 [drm])
[    8.482170] [<7f400360>] (drm_atomic_commit [drm]) from [<7f48a1bc>] (restore_fbdev_mode_atomic+0x168/0x1c4 [drm_kms_helper])
[    8.482410] [<7f48a1bc>] (restore_fbdev_mode_atomic [drm_kms_helper]) from [<7f48bfd8>] (restore_fbdev_mode+0x54/0x184 [drm_kms_helper])
[    8.482649] [<7f48bfd8>] (restore_fbdev_mode [drm_kms_helper]) from [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x58/0xa0 [drm_kms_helper])
[    8.482890] [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked [drm_kms_helper]) from [<7f48dc44>] (drm_fb_helper_set_par+0x3c/0x64 [drm_kms_helper])
[    8.483131] [<7f48dc44>] (drm_fb_helper_set_par [drm_kms_helper]) from [<7f48db08>] (drm_fb_helper_hotplug_event.part.9+0x9c/0xb8 [drm_kms_helper])
[    8.483371] [<7f48db08>] (drm_fb_helper_hotplug_event.part.9 [drm_kms_helper]) from [<7f48db54>] (drm_fb_helper_hotplug_event+0x30/0x44 [drm_kms_helper])
[    8.483610] [<7f48db54>] (drm_fb_helper_hotplug_event [drm_kms_helper]) from [<7f48dcd0>] (drm_fb_helper_output_poll_changed+0x1c/0x20 [drm_kms_helper])
[    8.483847] [<7f48dcd0>] (drm_fb_helper_output_poll_changed [drm_kms_helper]) from [<7f47cde0>] (drm_kms_helper_hotplug_event+0x34/0x40 [drm_kms_helper])
[    8.484081] [<7f47cde0>] (drm_kms_helper_hotplug_event [drm_kms_helper]) from [<7f47d848>] (output_poll_execute+0x78/0x170 [drm_kms_helper])
[    8.484206] [<7f47d848>] (output_poll_execute [drm_kms_helper]) from [<8013929c>] (process_one_work+0x158/0x438)
[    8.484222] [<8013929c>] (process_one_work) from [<801395b4>] (worker_thread+0x38/0x554)
[    8.484238] [<801395b4>] (worker_thread) from [<8013f4a4>] (kthread+0x12c/0x168)
[    8.484254] [<8013f4a4>] (kthread) from [<801010ac>] (ret_from_fork+0x14/0x28)
[    8.484261] Exception stack(0xb9c87fb0 to 0xb9c87ff8)
[    8.484271] 7fa0:                                     00000000 00000000 00000000 00000000
[    8.484283] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    8.484293] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    8.484345] ---[ end trace 3ca49feee7d43809 ]---
[    8.486712] ------------[ cut here ]------------
[    8.486735] WARNING: CPU: 3 PID: 59 at /home/cospan/Projects/rpi/source/linux/drivers/gpio/gpiolib.c:3172 gpiod_set_value+0x5c/0x68
[    8.486741] Modules linked in: inv_mpu6050_i2c inv_mpu6050 industrialio_triggered_buffer kfifo_buf industrialio 8192cu panel_jdi_lt070me05000 joydev evdev sha256_generic cfg80211 rfkill vc4 uas drm_kms_helper drm drm_panel_orientation_quirks snd_soc_core snd_compress snd_bcm2835(C) snd_pcm_dmaengine snd_pcm snd_timer snd syscopyarea raspberrypi_hwmon sysfillrect sysimgblt fb_sys_fops hwmon i2c_bcm2835 bcm2835_codec(C) bcm2835_v4l2(C) v4l2_mem2mem bcm2835_mmal_vchiq(C) v4l2_common videobuf2_dma_contig videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev media vc_sm_cma(C) hid_asus i2c_mux_gpio i2c_mux gpio_keys uio_pdrv_genirq uio fixed sg i2c_dev ip_tables x_tables ipv6
[    8.487034] CPU: 3 PID: 59 Comm: kworker/3:1 Tainted: G        WC        4.19.66-v7+ #20
[    8.487039] Hardware name: BCM2835
[    8.487171] Workqueue: events output_poll_execute [drm_kms_helper]
[    8.487200] [<801110c8>] (unwind_backtrace) from [<8010caa4>] (show_stack+0x20/0x24)
[    8.487217] [<8010caa4>] (show_stack) from [<807ce470>] (dump_stack+0xc8/0x114)
[    8.487236] [<807ce470>] (dump_stack) from [<8011f500>] (__warn+0xf4/0x120)
[    8.487251] [<8011f500>] (__warn) from [<8011f618>] (warn_slowpath_null+0x4c/0x58)
[    8.487268] [<8011f618>] (warn_slowpath_null) from [<804f8100>] (gpiod_set_value+0x5c/0x68)
[    8.487292] [<804f8100>] (gpiod_set_value) from [<7f5f33ac>] (jdi_panel_prepare+0x2f8/0x480 [panel_jdi_lt070me05000])
[    8.487425] [<7f5f33ac>] (jdi_panel_prepare [panel_jdi_lt070me05000]) from [<7f4895e4>] (panel_bridge_pre_enable+0x3c/0x40 [drm_kms_helper])
[    8.487845] [<7f4895e4>] (panel_bridge_pre_enable [drm_kms_helper]) from [<7f4028ec>] (drm_bridge_pre_enable+0x3c/0x40 [drm])
[    8.488218] [<7f4028ec>] (drm_bridge_pre_enable [drm]) from [<7f4cccf8>] (vc4_dsi_encoder_enable+0x10f4/0x18c8 [vc4])
[    8.488413] [<7f4cccf8>] (vc4_dsi_encoder_enable [vc4]) from [<7f484520>] (drm_atomic_helper_commit_modeset_enables+0x134/0x248 [drm_kms_helper])
[    8.488615] [<7f484520>] (drm_atomic_helper_commit_modeset_enables [drm_kms_helper]) from [<7f4d1030>] (vc4_atomic_complete_commit+0x6c/0x35c [vc4])
[    8.488767] [<7f4d1030>] (vc4_atomic_complete_commit [vc4]) from [<7f4d1470>] (vc4_atomic_commit+0x150/0x180 [vc4])
[    8.489122] [<7f4d1470>] (vc4_atomic_commit [vc4]) from [<7f400360>] (drm_atomic_commit+0x58/0x60 [drm])
[    8.489524] [<7f400360>] (drm_atomic_commit [drm]) from [<7f48a1bc>] (restore_fbdev_mode_atomic+0x168/0x1c4 [drm_kms_helper])
[    8.489765] [<7f48a1bc>] (restore_fbdev_mode_atomic [drm_kms_helper]) from [<7f48bfd8>] (restore_fbdev_mode+0x54/0x184 [drm_kms_helper])
[    8.490009] [<7f48bfd8>] (restore_fbdev_mode [drm_kms_helper]) from [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked+0x58/0xa0 [drm_kms_helper])
[    8.490250] [<7f48dbc0>] (drm_fb_helper_restore_fbdev_mode_unlocked [drm_kms_helper]) from [<7f48dc44>] (drm_fb_helper_set_par+0x3c/0x64 [drm_kms_helper])
[    8.490491] [<7f48dc44>] (drm_fb_helper_set_par [drm_kms_helper]) from [<7f48db08>] (drm_fb_helper_hotplug_event.part.9+0x9c/0xb8 [drm_kms_helper])
[    8.490732] [<7f48db08>] (drm_fb_helper_hotplug_event.part.9 [drm_kms_helper]) from [<7f48db54>] (drm_fb_helper_hotplug_event+0x30/0x44 [drm_kms_helper])
[    8.490972] [<7f48db54>] (drm_fb_helper_hotplug_event [drm_kms_helper]) from [<7f48dcd0>] (drm_fb_helper_output_poll_changed+0x1c/0x20 [drm_kms_helper])
[    8.491209] [<7f48dcd0>] (drm_fb_helper_output_poll_changed [drm_kms_helper]) from [<7f47cde0>] (drm_kms_helper_hotplug_event+0x34/0x40 [drm_kms_helper])
[    8.491449] [<7f47cde0>] (drm_kms_helper_hotplug_event [drm_kms_helper]) from [<7f47d848>] (output_poll_execute+0x78/0x170 [drm_kms_helper])
[    8.491578] [<7f47d848>] (output_poll_execute [drm_kms_helper]) from [<8013929c>] (process_one_work+0x158/0x438)
[    8.491596] [<8013929c>] (process_one_work) from [<801395b4>] (worker_thread+0x38/0x554)
[    8.491613] [<801395b4>] (worker_thread) from [<8013f4a4>] (kthread+0x12c/0x168)
[    8.491638] [<8013f4a4>] (kthread) from [<801010ac>] (ret_from_fork+0x14/0x28)
[    8.491646] Exception stack(0xb9c87fb0 to 0xb9c87ff8)
[    8.491655] 7fa0:                                     00000000 00000000 00000000 00000000
[    8.491667] 7fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    8.491676] 7fe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    8.491686] ---[ end trace 3ca49feee7d4380a ]---
[    8.494116] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_enable: 292
[    8.494132] panel-jdi-lt070me05000 3f700000.dsi.0: dsi_dcs_bl_update_status: 365
[    8.585172] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 323
[    9.506067] 8021q: 802.1Q VLAN Support v1.8
[    9.764481] Adding 102396k swap on /var/swap.  Priority:-2 extents:1 across:102396k SSFS
[   10.480259] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   12.214766] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   12.563340] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 323
[   12.588018] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 323
[   16.495874] fuse init (API version 7.27)
...
I think, the relevant portions are the Warnings and the ERROR at 7.450550 (Also note, I've added 'dev_err(dev, "%s: %d\n", __func__, __LINE__);' messages when entering a function of the panel)

I'm pretty sure the warnings are because the GPIOs are not allowed to 'sleep'

the panel driver is using the function 'gpiod_set_value' as apposed to 'gpiod_set_value_cansleep'

I have a lot of peripherals on this board so I needed to use 3 x 16-bit GPIO Expanders, of those 48 signals 3 are dedicated to this panel, 'reset', 'enable' and 'DCDC enable (backlight)'

I was reading up on 'sleep' as it relates to gpios and sleep allows the thread to sleep while something like a GPIO Expander is being accessed over I2C. I got this from here GPIO Documentation (Search for 'can_sleep')

So it seems as though it is possible for those pins to not be set before the init function attempts to communicate over the DSI lanes. I believe 'sleep' would put the thread to sleep until the GPIO has been set.

I'm going to try this out later on today but I wanted to put this out there to see if anyone has any other ideas.

Thanks for any help,

Dave

PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2374
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: DSI Panel JDI LT070ME05000 bringup issues

Wed Oct 09, 2019 8:26 pm

I think your diagnosis is correct, but I believe the fix is simpler than you think. The panel driver code that calls gpiod_set_value also calls functions that sleep, so I can't think of a reason not to replace them all with gpiod_set_value_cansleep instead.

gizmomouse
Posts: 11
Joined: Mon Jun 10, 2019 2:45 am

Re: DSI Panel JDI LT070ME05000 bringup issues

Thu Oct 10, 2019 11:43 am

The gpiod_set_value_cansleep cleared up the warnings but the error persisted.

Code: Select all

[    5.298462] vc4-drm soc:gpu: failed to bind 3f700000.dsi (ops vc4_dsi_ops [vc4]): -517
[    5.302172] vc4-drm soc:gpu: master bind failed: -517
[    5.306901] asus 0003:04F2:1125.0002: input,hiddev96,hidraw2: USB HID v1.11 Device [CHICONY Asus Keyboard] on usb-3f980000.usb-1.3/input1
[    5.309559] vc4_hdmi 3f902000.hdmi: ASoC: Failed to create component debugfs directory
[    5.310974] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[    5.311851] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    5.312179] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[    5.329824] vc4-drm soc:gpu: failed to bind 3f700000.dsi (ops vc4_dsi_ops [vc4]): -517
[    5.331050] vc4-drm soc:gpu: master bind failed: -517
[    5.373317] sd 0:0:0:0: Attached scsi generic sg0 type 0
[    5.373562] sd 0:0:0:1: Attached scsi generic sg1 type 0
[    5.388159] r8152 1-1.1:1.0 eth0: v1.09.9
[    5.390923] vc4_hdmi 3f902000.hdmi: ASoC: Failed to create component debugfs directory
[    5.392298] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[    5.398686] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    5.398908] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[    5.406270] vc4-drm soc:gpu: failed to bind 3f700000.dsi (ops vc4_dsi_ops [vc4]): -517
[    5.407390] vc4-drm soc:gpu: master bind failed: -517
[    6.017744] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    6.203060] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    6.211306] inv-mpu6050-i2c 4-0068: mounting matrix not found: using identity...
[    6.365575] i2c i2c-4: Added multiplexed i2c bus 7
[    6.368807] vc4_hdmi 3f902000.hdmi: ASoC: Failed to create component debugfs directory
[    6.378158] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[    6.379125] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    6.379388] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[    6.388565] vc4-drm soc:gpu: failed to bind 3f700000.dsi (ops vc4_dsi_ops [vc4]): -517
[    6.389886] vc4-drm soc:gpu: master bind failed: -517
[    6.550715] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_probe: 481
[    6.550779] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_add: 420
[    6.550937] panel-jdi-lt070me05000 3f700000.dsi.0: 3f700000.dsi.0 supply vddp not found, using dummy regulator
[    6.551135] panel-jdi-lt070me05000 3f700000.dsi.0: Linked as a consumer to regulator.0
[    6.551247] panel-jdi-lt070me05000 3f700000.dsi.0: 3f700000.dsi.0 supply iovcc not found, using dummy regulator
[    6.580471] vc4_hdmi 3f902000.hdmi: ASoC: Failed to create component debugfs directory
[    6.587487] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi mapping ok
[    6.589476] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    6.589718] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[    6.598779] vc4-drm soc:gpu: bound 3f700000.dsi (ops vc4_dsi_ops [vc4])
[    6.599030] vc4-drm soc:gpu: bound 3f004000.txp (ops vc4_txp_ops [vc4])
[    6.599150] vc4-drm soc:gpu: bound 3f400000.hvs (ops vc4_hvs_ops [vc4])
[    6.599685] vc4-drm soc:gpu: bound 3f206000.pixelvalve (ops vc4_crtc_ops [vc4])
[    6.600108] vc4-drm soc:gpu: bound 3f207000.pixelvalve (ops vc4_crtc_ops [vc4])
[    6.600516] vc4-drm soc:gpu: bound 3f807000.pixelvalve (ops vc4_crtc_ops [vc4])
[    6.637264] vc4-drm soc:gpu: bound 3fc00000.v3d (ops vc4_v3d_ops [vc4])
[    6.637291] checking generic (3ea2a000 1c2000) vs hw (0 ffffffff)
[    6.637298] fb: switching to vc4drmfb from simple
[    6.637609] Console: switching to colour dummy device 80x30
[    6.639286] [drm] Initialized vc4 0.0.0 20140616 for soc:gpu on minor 0
[    6.639304] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    6.639310] [drm] Driver supports precise vblank timestamp query.
[    6.642352] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 326
[    6.683199] Console: switching to colour frame buffer device 150x120
[    6.683256] vc4-drm soc:gpu: fb0: DRM emulated frame buffer device
[    6.735297] usbcore: registered new interface driver rtl8192cu
[    7.339935] panel-jdi-lt070me05000 3f700000.dsi.0: dsi_dcs_bl_update_status: 368
[    7.411431] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 326
[    7.413747] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_prepare: 239
[    7.496993] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_init: 69
[    7.497195] [drm:vc4_dsi_irq_handler [vc4]] *ERROR* DSI1: LP0 contention error
[    7.953835] random: crng init done
[    7.953850] random: 7 urandom warning(s) missed due to ratelimiting
[    8.551966] vc4_dsi 3f700000.dsi: transfer interrupt wait timeout
[    8.551981] vc4_dsi 3f700000.dsi: instat: 0x00000000
[    8.552093] [drm:vc4_dsi_host_transfer [vc4]] *ERROR* DSI transfer failed, resetting: -110
[    8.552146] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_init: 75
[    8.552156] panel-jdi-lt070me05000 3f700000.dsi.0: failed to init panel: -110
[    8.559249] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_enable: 295
[    8.559261] panel-jdi-lt070me05000 3f700000.dsi.0: dsi_dcs_bl_update_status: 368
[    8.577546] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 326
[    9.235438] 8021q: 802.1Q VLAN Support v1.8
[    9.501679] Adding 102396k swap on /var/swap.  Priority:-2 extents:1 across:102396k SSFS
[   10.287388] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   10.585944] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   10.606149] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   10.607433] r8152 1-1.1:1.0 eth0: carrier on
[   12.085092] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   12.378844] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 326
[   12.384941] panel-jdi-lt070me05000 3f700000.dsi.0: jdi_panel_get_modes: 326
[   16.083470] fuse init (API version 7.27)
I see a bunch of "vc4-drm soc:gpu: failed to bind... -517" but, I think, this is due to the 'deferred probe' which is related to the fact that the LCD GPIOs are not ready because the GPIO Expander they are not setup yet.

I went through each signal with a multimeter and the sharpest probes I could find and didn't find any shorts.

I was concerned that the voltage divider from 3.3V to 1.8V that controls the reset signal was out of spec, but looking at the datasheet it looks fine.

I've started going through the turn on timing sequence and the driver has some incorrect delays between the startup steps, after that I'm going to hook up the scope to the HDMI DSI converter I got when I purchased the board to see their starting sequence.

If anyone has any other ideas let me know.

Dave

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 7273
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: DSI Panel JDI LT070ME05000 bringup issues

Thu Oct 10, 2019 12:23 pm

Code: Select all

[    7.497195] [drm:vc4_dsi_irq_handler [vc4]] *ERROR* DSI1: LP0 contention error
looks suspicious.
Checking the datasheet for the meaning of that error, it says "lane module detected a contention situation on a line while trying to drive the line low". That would imply a wiring issue on lane 0.

DSI supports bidirectional comms on lane 0 (low speed only from display->host). I suspect that the line state is such that the transmitter thinks that the display is trying to talk back to the host (think a bit like clock stretching on I2C).
If you can, then do a test with the display disconnected as I'd expect the lines to float in a manner that isn't interpreted as display->host comms. If that works then look at the electrical connections from the screen.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

gizmomouse
Posts: 11
Joined: Mon Jun 10, 2019 2:45 am

Re: DSI Panel JDI LT070ME05000 bringup issues

Sun Oct 13, 2019 6:59 pm

Thanks for the suggestion!

I removed the screen, did the capture and received the same error.

During all this debugging I got careless and and left a small screw driver on the board and shorted something out. I think it damaged one of the GPIO multiplexers. I'm going to have to bring up another board.

That did give me time to think and, I hesitate to say this cause it's so obvious, but I did have HDMI plugged in all those times I tested it <doh!>. This is probably the issue.

I wonder if this is similar behavior as if the raspberry pi DSI LCD and the HDMI was plugged in at the same time. I do have a pi3 and a RPI DSI, when I get a moment I'll try this out.

My next step is some rework and get back to where I was before.

Thanks again for the suggestions, when I get things going again I'll post my results.

Dave

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 7273
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: DSI Panel JDI LT070ME05000 bringup issues

Sun Oct 13, 2019 7:59 pm

When using vc4-kms-v3d it shouldn't matter if the hdmi is connected or not as it has supported multiple displays almost since the beginning.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Return to “Compute Module”