Lines Matching full:csc
1308 /* CSC */
1328 void (*to_regval)(const struct dispc_csc_coef *csc, u32 *regval);
1339 void dispc_csc_offset_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_offset_regval() argument
1342 regval[5] = OVAL(csc->preoffset[0], csc->preoffset[1]); in dispc_csc_offset_regval()
1343 regval[6] = OVAL(csc->preoffset[2], csc->postoffset[0]); in dispc_csc_offset_regval()
1344 regval[7] = OVAL(csc->postoffset[1], csc->postoffset[2]); in dispc_csc_offset_regval()
1350 void dispc_csc_yuv2rgb_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_yuv2rgb_regval() argument
1352 regval[0] = CVAL(csc->m[CSC_RY], csc->m[CSC_RCR]); in dispc_csc_yuv2rgb_regval()
1353 regval[1] = CVAL(csc->m[CSC_RCB], csc->m[CSC_GY]); in dispc_csc_yuv2rgb_regval()
1354 regval[2] = CVAL(csc->m[CSC_GCR], csc->m[CSC_GCB]); in dispc_csc_yuv2rgb_regval()
1355 regval[3] = CVAL(csc->m[CSC_BY], csc->m[CSC_BCR]); in dispc_csc_yuv2rgb_regval()
1356 regval[4] = CVAL(csc->m[CSC_BCB], 0); in dispc_csc_yuv2rgb_regval()
1358 dispc_csc_offset_regval(csc, regval); in dispc_csc_yuv2rgb_regval()
1362 void dispc_csc_rgb2yuv_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_rgb2yuv_regval() argument
1364 regval[0] = CVAL(csc->m[CSC_YR], csc->m[CSC_YG]); in dispc_csc_rgb2yuv_regval()
1365 regval[1] = CVAL(csc->m[CSC_YB], csc->m[CSC_CRR]); in dispc_csc_rgb2yuv_regval()
1366 regval[2] = CVAL(csc->m[CSC_CRG], csc->m[CSC_CRB]); in dispc_csc_rgb2yuv_regval()
1367 regval[3] = CVAL(csc->m[CSC_CBR], csc->m[CSC_CBG]); in dispc_csc_rgb2yuv_regval()
1368 regval[4] = CVAL(csc->m[CSC_CBB], 0); in dispc_csc_rgb2yuv_regval()
1370 dispc_csc_offset_regval(csc, regval); in dispc_csc_rgb2yuv_regval()
1373 static void dispc_csc_cpr_regval(const struct dispc_csc_coef *csc, in dispc_csc_cpr_regval() argument
1376 regval[0] = CVAL(csc->m[CSC_RR], csc->m[CSC_RG]); in dispc_csc_cpr_regval()
1377 regval[1] = CVAL(csc->m[CSC_RB], csc->m[CSC_GR]); in dispc_csc_cpr_regval()
1378 regval[2] = CVAL(csc->m[CSC_GG], csc->m[CSC_GB]); in dispc_csc_cpr_regval()
1379 regval[3] = CVAL(csc->m[CSC_BR], csc->m[CSC_BG]); in dispc_csc_cpr_regval()
1380 regval[4] = CVAL(csc->m[CSC_BB], 0); in dispc_csc_cpr_regval()
1382 dispc_csc_offset_regval(csc, regval); in dispc_csc_cpr_regval()
1388 const struct dispc_csc_coef *csc) in dispc_k2g_vid_write_csc() argument
1399 csc->to_regval(csc, regval); in dispc_k2g_vid_write_csc()
1403 __func__, csc->name); in dispc_k2g_vid_write_csc()
1411 const struct dispc_csc_coef *csc) in dispc_k3_vid_write_csc() argument
1422 csc->to_regval(csc, regval); in dispc_k3_vid_write_csc()
1480 const struct dispc_csc_coef *csc; member
1501 return dispc_csc_table[i].csc; in dispc_find_csc()
1514 dev_err(dispc->dev, "%s: CSC (%u,%u) not found\n", in dispc_vid_csc_setup()
1932 "%s: Unsupported CSC (%u,%u) for HW plane %u\n", in dispc_plane_check()
2413 static void dispc_k2g_vp_csc_cpr_regval(const struct dispc_csc_coef *csc, in dispc_k2g_vp_csc_cpr_regval() argument
2416 regval[0] = CVAL(csc->m[CSC_BB], csc->m[CSC_BG], csc->m[CSC_BR]); in dispc_k2g_vp_csc_cpr_regval()
2417 regval[1] = CVAL(csc->m[CSC_GB], csc->m[CSC_GG], csc->m[CSC_GR]); in dispc_k2g_vp_csc_cpr_regval()
2418 regval[2] = CVAL(csc->m[CSC_RB], csc->m[CSC_RG], csc->m[CSC_RR]); in dispc_k2g_vp_csc_cpr_regval()
2424 const struct dispc_csc_coef *csc) in dispc_k2g_vp_write_csc() argument
2433 dispc_k2g_vp_csc_cpr_regval(csc, regval); in dispc_k2g_vp_write_csc()
2489 const struct dispc_csc_coef *csc) in dispc_k3_vp_write_csc() argument
2499 csc->to_regval(csc, regval); in dispc_k3_vp_write_csc()
2512 struct dispc_csc_coef csc; in dispc_k3_vp_set_ctm() local
2514 dispc_csc_from_ctm(ctm, &csc); in dispc_k3_vp_set_ctm()
2515 dispc_k3_vp_write_csc(dispc, hw_videoport, &csc); in dispc_k3_vp_set_ctm()