SC7180: Color Transform Matrix breaks after suspend
on sc7180, Color Transform Matrix support breaks after suspending and resuming the device. Before and after suspend, drm_info shows that the CTM is correctly set (non-null CTM blob). Even when changing the CTM settings after resume, they no longer take any effect. Completely disabling the display This issue can be reproduced with both stable kernel 6.0.12 and the latest v6.1 branch.
One trick to get the CTM to be applied again is to disable the display (close laptop screen) while an external monitor is connected, then re-enable the display (open the laptop screen again) and disconnect the external monitor.
│ ├───CRTC 0
│ │ ├───Object ID: 65
│ │ ├───Legacy info
│ │ │ ├───Mode: 1920x1080@60.00 preferred driver phsync nvsync
│ │ │ └───Gamma size: 0
│ │ └───Properties
│ │ ├───"ACTIVE" (atomic): range [0, 1] = 1
│ │ ├───"MODE_ID" (atomic): blob = 70
│ │ │ └───1920x1080@60.00 preferred driver phsync nvsync
│ │ ├───"OUT_FENCE_PTR" (atomic): range [0, UINT64_MAX] = 0
│ │ ├───"VRR_ENABLED": range [0, 1] = 0
│ │ └───"CTM": blob = 69
Not sure if it helps, but attached is a full dmesg log with DRM debug enabled. System suspends at 167.267821. Color Transform Matrix works before the suspend but no longer after resume: dmesg-ctm-bug.txt