Lines Matching full:ctm

30 	struct drm_color_ctm *ctm;  member
139 struct drm_color_ctm *ctm = ctm_state->ctm; in vc4_ctm_commit() local
143 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[0]), in vc4_ctm_commit()
145 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[3]), in vc4_ctm_commit()
147 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[6]), in vc4_ctm_commit()
150 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[1]), in vc4_ctm_commit()
152 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[4]), in vc4_ctm_commit()
154 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[7]), in vc4_ctm_commit()
157 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[2]), in vc4_ctm_commit()
159 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[5]), in vc4_ctm_commit()
161 VC4_SET_FIELD(vc4_ctm_s31_32_to_s0_9(ctm->matrix[8]), in vc4_ctm_commit()
500 /* Our CTM has some peculiar limitations: we can only enable it for one CRTC
502 * we don't allow userland to set a CTM that we have no hope of approximating.
511 struct drm_color_ctm *ctm; in vc4_ctm_atomic_check() local
515 /* CTM is being disabled. */ in vc4_ctm_atomic_check()
516 if (!new_crtc_state->ctm && old_crtc_state->ctm) { in vc4_ctm_atomic_check()
525 if (new_crtc_state->ctm == old_crtc_state->ctm) in vc4_ctm_atomic_check()
534 /* CTM is being enabled or the matrix changed. */ in vc4_ctm_atomic_check()
535 if (new_crtc_state->ctm) { in vc4_ctm_atomic_check()
539 /* fifo is 1-based since 0 disables CTM. */ in vc4_ctm_atomic_check()
542 /* Check userland isn't trying to turn on CTM for more in vc4_ctm_atomic_check()
546 DRM_DEBUG_DRIVER("Too many CTM configured\n"); in vc4_ctm_atomic_check()
550 /* Check we can approximate the specified CTM. in vc4_ctm_atomic_check()
554 ctm = new_crtc_state->ctm->data; in vc4_ctm_atomic_check()
555 for (i = 0; i < ARRAY_SIZE(ctm->matrix); i++) { in vc4_ctm_atomic_check()
556 u64 val = ctm->matrix[i]; in vc4_ctm_atomic_check()
564 ctm_state->ctm = ctm; in vc4_ctm_atomic_check()