cancel
Showing results for 
Search instead for 
Did you mean: 

Issue with otm8009a mipi dsi panel configuration on the stm32mp157c-odyssey

hypnotriod
Associate II

Hello. I'm trying to configure the otm8009a 800x480 display panel from the stm32mp157f-dk2 dev kit on the Seeed Studio's stm32mp157c-odyssey board.
The issue is that by probing display with modetest -M stm I'm getting:

failed to open device 'stm': No such file or directory

But with modetest -M simpledrm I'm getting this output:

Encoders:
id      crtc    type    possible crtcs  possible clones
34      0       none    0x00000001      0x00000001

Connectors:
id      encoder status          name            size (mm)       modes   encoders
35      0       connected       Unknown-1       127x211         1       34
  modes:
        index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot
  #0 480x800 60.00 480 480 480 480 800 800 800 800 23040 flags: ; type: preferred, driver
  props:
        1 EDID:
                flags: immutable blob
                blobs:

                value:
        2 DPMS:
                flags: enum
                enums: On=0 Standby=1 Suspend=2 Off=3
                value: 3
        5 link-status:
                flags: enum
                enums: Good=0 Bad=1
                value: 0
        6 non-desktop:
                flags: immutable range
                values: 0 1
                value: 0
        4 TILE:
                flags: immutable blob
                blobs:

                value:

CRTCs:
id      fb      pos     size
33      0       (0,0)   (0x0)
  #0  nan 0 0 0 0 0 0 0 0 0 flags: ; type: 
  props:
        24 VRR_ENABLED:
                flags: range
                values: 0 1
                value: 0

Planes:
id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs
31      0       0       0,0             0,0     0               0x00000001
  formats: RG16 XR24
  props:
        8 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 1
        30 IN_FORMATS:
                flags: immutable blob
                blobs:

                value:
                        01000000000000000200000018000000
                        01000000200000005247313658523234
                        03000000000000000000000000000000
                        0000000000000000
                in_formats blob decoded:
                         RG16:  LINEAR
                         XR24:  LINEAR

Frame buffers:
id      size    pitch

So display is actually working with simpledrm and I am able to launch weston. But with the bad performance.
What am I doing wrong or missing something?
Any help or advice would be appreciated! Thanks!
This is the dts file I have so far: stm32mp157c-odyssey.dts 

1 ACCEPTED SOLUTION

Accepted Solutions
hypnotriod
Associate II

Sorry. My bad. Didn't pay attention to the last logs I got.
It happens that there are several conflicting DSI pins with Bluetooth, Wi-Fi and USB on this board...
So yeah... Didn't expect that coming... I guess it is the hardware issue after all.
And after I disable these functions DSI shows up:

debian@stm32mp157c-odyssey:~$ modetest -M stm
Encoders:
id      crtc    type    possible crtcs  possible clones
31      38      DSI     0x00000001      0x00000001

Connectors:
id      encoder status          name            size (mm)       modes   encoders
32      31      connected       DSI-1           52x86           1       31
  modes:
        index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot
  #0 480x800 50.00 480 578 610 708 800 815 825 839 29700 flags: nhsync, nvsync; type: preferred, driver
  props:
        1 EDID:
                flags: immutable blob
                blobs:

                value:
        2 DPMS:
                flags: enum
                enums: On=0 Standby=1 Suspend=2 Off=3
                value: 0
        5 link-status:
                flags: enum
                enums: Good=0 Bad=1
                value: 0
        6 non-desktop:
                flags: immutable range
                values: 0 1
                value: 0
        4 TILE:
                flags: immutable blob
                blobs:

                value:
        33 dithering:
                flags: enum
                enums: Off=0 On=1
                value: 0

CRTCs:
id      fb      pos     size
38      43      (0,0)   (480x800)
  #0 480x800 50.00 480 578 610 708 800 815 825 839 29700 flags: nhsync, nvsync; type: preferred, driver
  props:
        24 VRR_ENABLED:
                flags: range
                values: 0 1
                value: 0
        28 GAMMA_LUT:
                flags: blob
                blobs:

                value:
        29 GAMMA_LUT_SIZE:
                flags: immutable range
                values: 0 4294967295
                value: 256

Planes:
id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs
34      38      43      0,0             0,0     0               0x00000001
  formats: AR24 XR24 RG24 RG16 AR15 XR15 AR12 XR12 C8
  props:
        8 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 1
        30 IN_FORMATS:
                flags: immutable blob
                blobs:

                value:
                        01000000000000000900000018000000
                        01000000400000004152323458523234
                        52473234524731364152313558523135
                        41523132585231324338202000000000
                        ff010000000000000000000000000000
                        0000000000000000
                in_formats blob decoded:
                         AR24:  LINEAR
                         XR24:  LINEAR
                         RG24:  LINEAR
                         RG16:  LINEAR
                         AR15:  LINEAR
                         XR15:  LINEAR
                         AR12:  LINEAR
                         XR12:  LINEAR
                         C8:  LINEAR
        36 alpha:
                flags: range
                values: 0 65535
                value: 65535
        37 zpos:
                flags: immutable range
                values: 0 0
                value: 0
39      0       0       0,0             0,0     0               0x00000001
  formats: AR24 RG24 RG16 AR15 AR12 C8
  props:
        8 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 0
        30 IN_FORMATS:
                flags: immutable blob
                blobs:

                value:
                        01000000000000000600000018000000
                        01000000300000004152323452473234
                        52473136415231354152313243382020
                        3f000000000000000000000000000000
                        0000000000000000
                in_formats blob decoded:
                         AR24:  LINEAR
                         RG24:  LINEAR
                         RG16:  LINEAR
                         AR15:  LINEAR
                         AR12:  LINEAR
                         C8:  LINEAR
        41 alpha:
                flags: range
                values: 0 65535
                value: 65535
        42 zpos:
                flags: immutable range
                values: 1 1
                value: 1

Frame buffers:
id      size    pitch



View solution in original post

1 REPLY 1
hypnotriod
Associate II

Sorry. My bad. Didn't pay attention to the last logs I got.
It happens that there are several conflicting DSI pins with Bluetooth, Wi-Fi and USB on this board...
So yeah... Didn't expect that coming... I guess it is the hardware issue after all.
And after I disable these functions DSI shows up:

debian@stm32mp157c-odyssey:~$ modetest -M stm
Encoders:
id      crtc    type    possible crtcs  possible clones
31      38      DSI     0x00000001      0x00000001

Connectors:
id      encoder status          name            size (mm)       modes   encoders
32      31      connected       DSI-1           52x86           1       31
  modes:
        index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot
  #0 480x800 50.00 480 578 610 708 800 815 825 839 29700 flags: nhsync, nvsync; type: preferred, driver
  props:
        1 EDID:
                flags: immutable blob
                blobs:

                value:
        2 DPMS:
                flags: enum
                enums: On=0 Standby=1 Suspend=2 Off=3
                value: 0
        5 link-status:
                flags: enum
                enums: Good=0 Bad=1
                value: 0
        6 non-desktop:
                flags: immutable range
                values: 0 1
                value: 0
        4 TILE:
                flags: immutable blob
                blobs:

                value:
        33 dithering:
                flags: enum
                enums: Off=0 On=1
                value: 0

CRTCs:
id      fb      pos     size
38      43      (0,0)   (480x800)
  #0 480x800 50.00 480 578 610 708 800 815 825 839 29700 flags: nhsync, nvsync; type: preferred, driver
  props:
        24 VRR_ENABLED:
                flags: range
                values: 0 1
                value: 0
        28 GAMMA_LUT:
                flags: blob
                blobs:

                value:
        29 GAMMA_LUT_SIZE:
                flags: immutable range
                values: 0 4294967295
                value: 256

Planes:
id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs
34      38      43      0,0             0,0     0               0x00000001
  formats: AR24 XR24 RG24 RG16 AR15 XR15 AR12 XR12 C8
  props:
        8 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 1
        30 IN_FORMATS:
                flags: immutable blob
                blobs:

                value:
                        01000000000000000900000018000000
                        01000000400000004152323458523234
                        52473234524731364152313558523135
                        41523132585231324338202000000000
                        ff010000000000000000000000000000
                        0000000000000000
                in_formats blob decoded:
                         AR24:  LINEAR
                         XR24:  LINEAR
                         RG24:  LINEAR
                         RG16:  LINEAR
                         AR15:  LINEAR
                         XR15:  LINEAR
                         AR12:  LINEAR
                         XR12:  LINEAR
                         C8:  LINEAR
        36 alpha:
                flags: range
                values: 0 65535
                value: 65535
        37 zpos:
                flags: immutable range
                values: 0 0
                value: 0
39      0       0       0,0             0,0     0               0x00000001
  formats: AR24 RG24 RG16 AR15 AR12 C8
  props:
        8 type:
                flags: immutable enum
                enums: Overlay=0 Primary=1 Cursor=2
                value: 0
        30 IN_FORMATS:
                flags: immutable blob
                blobs:

                value:
                        01000000000000000600000018000000
                        01000000300000004152323452473234
                        52473136415231354152313243382020
                        3f000000000000000000000000000000
                        0000000000000000
                in_formats blob decoded:
                         AR24:  LINEAR
                         RG24:  LINEAR
                         RG16:  LINEAR
                         AR15:  LINEAR
                         AR12:  LINEAR
                         C8:  LINEAR
        41 alpha:
                flags: range
                values: 0 65535
                value: 65535
        42 zpos:
                flags: immutable range
                values: 1 1
                value: 1

Frame buffers:
id      size    pitch