I am still unable to get my display working. It works fine with windows and linux (ubuntu) desktops. I read the edid with get-edid/parse-edid and came up with the following:
Checksum Correct
Section "Monitor"
Identifier "DVI"
ModelName "DVI"
VendorName "TXD"
# Monitor Manufactured week 0 of 2048
# EDID version 1.3
# Digital Display
# Display Physical Size not given. Normal for projectors.
Gamma 2.20
Option "DPMS" "true"
Modeline "Mode 0" 50.00 1024 1064 1192 1344 600 610 613 635 -hsync -vsync
EndSection
xrandr also gave me the following information:
HDMI-1 connected 1024x600+1920+0 (normal left inverted right x axis y axis) 359mm x 287mm 1024x600 58.59*+
Based off the modeline, I created the following entry in /drivers/gpu/drm/drm_edid.c in the edid_cea_modes array:
/* 108 - 1024x600@59Hz 16:9 */
{ DRM_MODE("1024x600", DRM_MODE_TYPE_DRIVER, 50000, 1024, 1064,
1192, 1344, 0, 600, 610, 613, 635, 0,
DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC),
.vrefresh = 59, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9, },
With this timing added, I dont see any errors in the kernel log, I can see the mode being selected after querying the EDID but the display never comes up. I am wondering if the 50mhz pixel clock and/or the 58.59hz refresh rate are causing the problems. I dont see any errors /drivers/gpu/drm/imx/cdn-mhdp-hdmi-phy.c it seems to accept the pixel clock just fine.
I read the link about adding different graphics support in previous kernel versions, but i'm not sure if its relevant to the version I am running (5.4.24). It seems all of the graphics code has been moved to the DRM system with imx8qm. Any help would be appreciated...