Hi,
i know this is an old thread but the information i found here helped me to solve the same problem i had on my new laptop (Huawei Matebook X 2020).
I had black screen after sleep but using an external monitor i noticed the same Display0 behavior attaching to the next framebuffer available.
I coudn't use your config.plist because my laptop is 10th gen and differnt connectors BUT i spent some times (actually 2 days
) analyzing and reading all the data you've collected and finally noticed one thing :
Both the working Framebuffer's (0x3EA50004 and 0x3E9B0006) connectors
@NONITS and
@elmacci are using has the same flags on the internal monitor connector [0] busId: 0x00, pipe: 8, type: 0x00000002, flags: 0x00000498 - ConnectorLVDS
while the internal display connector associated with the Framebuffer's usually used and suggested for example on Dortania (0x3E9B0000 and 0x3E9B0007) has [0] busId: 0x00, pipe: 8, type: 0x00000002, flags: 0x00000098 - ConnectorLVDS.
As you can see flags is different. 498 vs 98. Well... i don't know what that 4 stand for BUT i injected in OC device property this framebuffer-con0-alldata -> 00000800 02000000 98040000 and magically now the internal display works after sleep. Works when an external TypeC to HDMI is connected on both my laptop port and works even if you hotplug it not just before waking from sleep.
I hope someone could land here and find this information usefull.
Mattia