/linux/drivers/gpu/ipu-v3/ |
H A D | ipu-ic-csc.c | 355 static int calc_csc_coeffs(struct ipu_ic_csc *csc) in calc_csc_coeffs() argument 360 tbl_idx = (QUANT_MAP(csc->in_cs.quant) << 1) | in calc_csc_coeffs() 361 QUANT_MAP(csc->out_cs.quant); in calc_csc_coeffs() 363 if (csc->in_cs.cs == csc->out_cs.cs) { in calc_csc_coeffs() 364 csc->params = (csc->in_cs.cs == IPUV3_COLORSPACE_YUV) ? in calc_csc_coeffs() 372 switch (csc->out_cs.enc) { in calc_csc_coeffs() 374 params_tbl = (csc->in_cs.cs == IPUV3_COLORSPACE_YUV) ? in calc_csc_coeffs() 378 params_tbl = (csc->in_cs.cs == IPUV3_COLORSPACE_YUV) ? in calc_csc_coeffs() 385 csc->params = *params_tbl[tbl_idx]; in calc_csc_coeffs() 390 int __ipu_ic_calc_csc(struct ipu_ic_csc *csc) in __ipu_ic_calc_csc() argument [all …]
|
H A D | ipu-ic.c | 175 const struct ipu_ic_csc *csc, in init_csc() argument 188 c = (const u16 (*)[3])csc->params.coeff; in init_csc() 189 a = (const u16 *)csc->params.offset; in init_csc() 195 param = ((a[0] & 0x1fe0) >> 5) | (csc->params.scale << 8) | in init_csc() 196 (csc->params.sat << 10); in init_csc() 398 const struct ipu_ic_csc *csc, in ipu_ic_task_init_rsc() argument 432 ic->in_cs = csc->in_cs; in ipu_ic_task_init_rsc() 433 ic->out_cs = csc->out_cs; in ipu_ic_task_init_rsc() 435 ret = init_csc(ic, csc, 0); in ipu_ic_task_init_rsc() 442 const struct ipu_ic_csc *csc, in ipu_ic_task_init() argument [all …]
|
H A D | ipu-dp.c | 273 u32 reg, csc; in ipu_dp_disable_channel() local 283 csc = reg & DP_COM_CONF_CSC_DEF_MASK; in ipu_dp_disable_channel() 285 if (csc == DP_COM_CONF_CSC_DEF_BOTH || csc == DP_COM_CONF_CSC_DEF_BG) in ipu_dp_disable_channel()
|
/linux/drivers/media/platform/ti/vpe/ |
H A D | csc.c | 110 void csc_dump_regs(struct csc_data *csc) in csc_dump_regs() argument 112 struct device *dev = &csc->pdev->dev; in csc_dump_regs() 115 ioread32(csc->base + CSC_##r)) in csc_dump_regs() 117 dev_dbg(dev, "CSC Registers @ %pa:\n", &csc->res->start); in csc_dump_regs() 130 void csc_set_coeff_bypass(struct csc_data *csc, u32 *csc_reg5) in csc_set_coeff_bypass() argument 139 void csc_set_coeff(struct csc_data *csc, u32 *csc_reg0, in csc_set_coeff() argument 249 struct csc_data *csc; in csc_create() local 253 csc = devm_kzalloc(&pdev->dev, sizeof(*csc), GFP_KERNEL); in csc_create() 254 if (!csc) { in csc_create() 259 csc->pdev = pdev; in csc_create() [all …]
|
H A D | Makefile | 5 obj-$(CONFIG_VIDEO_TI_CSC) += ti-csc.o 10 ti-csc-y := csc.o
|
H A D | csc.h | 58 void csc_dump_regs(struct csc_data *csc); 59 void csc_set_coeff_bypass(struct csc_data *csc, u32 *csc_reg5); 60 void csc_set_coeff(struct csc_data *csc, u32 *csc_reg0,
|
/linux/drivers/gpu/drm/i915/display/ |
H A D | intel_color.c | 175 static void intel_csc_clear(struct intel_csc_matrix *csc) in intel_csc_clear() argument 177 memset(csc, 0, sizeof(*csc)); in intel_csc_clear() 213 const struct intel_csc_matrix *csc) in ilk_update_pipe_csc() argument 219 csc->preoff[0]); in ilk_update_pipe_csc() 221 csc->preoff[1]); in ilk_update_pipe_csc() 223 csc->preoff[2]); in ilk_update_pipe_csc() 226 csc->coeff[0] << 16 | csc->coeff[1]); in ilk_update_pipe_csc() 228 csc->coeff[2] << 16); in ilk_update_pipe_csc() 231 csc->coeff[3] << 16 | csc->coeff[4]); in ilk_update_pipe_csc() 233 csc->coeff[5] << 16); in ilk_update_pipe_csc() [all …]
|
H A D | intel_crtc_state_dump.c | 141 const struct intel_csc_matrix *csc) in ilk_dump_csc() argument 146 csc->preoff[0], csc->preoff[1], csc->preoff[2]); in ilk_dump_csc() 150 csc->coeff[3 * i + 0], in ilk_dump_csc() 151 csc->coeff[3 * i + 1], in ilk_dump_csc() 152 csc->coeff[3 * i + 2]); in ilk_dump_csc() 158 csc->postoff[0], csc->postoff[1], csc->postoff[2]); in ilk_dump_csc() 163 const struct intel_csc_matrix *csc) in vlv_dump_csc() argument 169 csc->coeff[3 * i + 0], in vlv_dump_csc() 170 csc->coeff[3 * i + 1], in vlv_dump_csc() 171 csc->coeff[3 * i + 2]); in vlv_dump_csc() [all …]
|
H A D | intel_sprite.c | 97 const s16 *csc = csc_matrix[plane_state->hw.color_encoding]; in chv_sprite_update_csc() local 111 SPCSC_C1(csc[1]) | SPCSC_C0(csc[0])); in chv_sprite_update_csc() 113 SPCSC_C1(csc[3]) | SPCSC_C0(csc[2])); in chv_sprite_update_csc() 115 SPCSC_C1(csc[5]) | SPCSC_C0(csc[4])); in chv_sprite_update_csc() 117 SPCSC_C1(csc[7]) | SPCSC_C0(csc[6])); in chv_sprite_update_csc() 118 intel_de_write_fw(display, SPCSCC8(plane_id), SPCSC_C0(csc[8])); in chv_sprite_update_csc()
|
/linux/drivers/gpu/drm/tidss/ |
H A D | tidss_dispc.c | 1435 void (*to_regval)(const struct dispc_csc_coef *csc, u32 *regval); 1446 void dispc_csc_offset_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_offset_regval() argument 1449 regval[5] = OVAL(csc->preoffset[0], csc->preoffset[1]); in dispc_csc_offset_regval() 1450 regval[6] = OVAL(csc->preoffset[2], csc->postoffset[0]); in dispc_csc_offset_regval() 1451 regval[7] = OVAL(csc->postoffset[1], csc->postoffset[2]); in dispc_csc_offset_regval() 1457 void dispc_csc_yuv2rgb_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_yuv2rgb_regval() argument 1459 regval[0] = CVAL(csc->m[CSC_RY], csc->m[CSC_RCR]); in dispc_csc_yuv2rgb_regval() 1460 regval[1] = CVAL(csc->m[CSC_RCB], csc->m[CSC_GY]); in dispc_csc_yuv2rgb_regval() 1461 regval[2] = CVAL(csc->m[CSC_GCR], csc->m[CSC_GCB]); in dispc_csc_yuv2rgb_regval() 1462 regval[3] = CVAL(csc->m[CSC_BY], csc->m[CSC_BCR]); in dispc_csc_yuv2rgb_regval() [all …]
|
/linux/drivers/gpu/drm/msm/disp/mdp4/ |
H A D | mdp4_plane.c | 166 enum mdp4_pipe pipe, struct csc_cfg *csc) in mdp4_write_csc_config() argument 170 for (i = 0; i < ARRAY_SIZE(csc->matrix); i++) { in mdp4_write_csc_config() 172 csc->matrix[i]); in mdp4_write_csc_config() 175 for (i = 0; i < ARRAY_SIZE(csc->post_bias) ; i++) { in mdp4_write_csc_config() 177 csc->pre_bias[i]); in mdp4_write_csc_config() 180 csc->post_bias[i]); in mdp4_write_csc_config() 183 for (i = 0; i < ARRAY_SIZE(csc->post_clamp) ; i++) { in mdp4_write_csc_config() 185 csc->pre_clamp[i]); in mdp4_write_csc_config() 188 csc->post_clamp[i]); in mdp4_write_csc_config() 322 struct csc_cfg *csc = mdp_get_default_csc_cfg(CSC_YUV2RGB); in mdp4_plane_mode_set() local [all …]
|
/linux/drivers/gpu/drm/vc4/ |
H A D | vc4_hvs.c | 1425 u32 csc[3][5]; member 1431 .csc = { 1438 .csc = { 1445 .csc = { 1454 .csc = { 1461 .csc = { 1468 .csc = { 1495 HVS_WRITE(CFC1_N_MA_CSC_COEFF_C00(i), coeffs->csc[0][0]); in vc6_hvs_hw_init() 1496 HVS_WRITE(CFC1_N_MA_CSC_COEFF_C01(i), coeffs->csc[0][1]); in vc6_hvs_hw_init() 1497 HVS_WRITE(CFC1_N_MA_CSC_COEFF_C02(i), coeffs->csc[0][2]); in vc6_hvs_hw_init() [all …]
|
/linux/drivers/pcmcia/ |
H A D | i82092.c | 310 int csc; in i82092aa_interrupt() local 317 csc = indirect_read(i, I365_CSC); in i82092aa_interrupt() 319 if (csc == 0) /* no events on this socket */ in i82092aa_interrupt() 324 if (csc & I365_CSC_DETECT) { in i82092aa_interrupt() 332 if (csc & I365_CSC_STSCHG) in i82092aa_interrupt() 336 if (csc & I365_CSC_BVD1) in i82092aa_interrupt() 338 if (csc & I365_CSC_BVD2) in i82092aa_interrupt() 340 if (csc & I365_CSC_READY) in i82092aa_interrupt()
|
H A D | pd6729.c | 192 unsigned int csc; in pd6729_interrupt() local 195 csc = indirect_read(&socket[i], I365_CSC); in pd6729_interrupt() 196 if (csc == 0) /* no events on this socket */ in pd6729_interrupt() 202 if (csc & I365_CSC_DETECT) { in pd6729_interrupt() 211 events |= (csc & I365_CSC_STSCHG) in pd6729_interrupt() 215 events |= (csc & I365_CSC_BVD1) in pd6729_interrupt() 217 events |= (csc & I365_CSC_BVD2) in pd6729_interrupt() 219 events |= (csc & I365_CSC_READY) in pd6729_interrupt()
|
H A D | yenta_socket.c | 512 u8 csc; in yenta_interrupt() local 519 csc = exca_readb(socket, I365_CSC); in yenta_interrupt() 521 if (!(cb_event || csc)) in yenta_interrupt() 525 events |= (csc & I365_CSC_DETECT) ? SS_DETECT : 0; in yenta_interrupt() 527 events |= (csc & I365_CSC_STSCHG) ? SS_STSCHG : 0; in yenta_interrupt() 529 events |= (csc & I365_CSC_BVD1) ? SS_BATDEAD : 0; in yenta_interrupt() 530 events |= (csc & I365_CSC_BVD2) ? SS_BATWARN : 0; in yenta_interrupt() 531 events |= (csc & I365_CSC_READY) ? SS_READY : 0; in yenta_interrupt() 969 u8 csc; in yenta_probe_handler() local 975 csc = exca_readb(socket, I365_CSC); in yenta_probe_handler() [all …]
|
/linux/drivers/media/platform/microchip/ |
H A D | microchip-sama5d2-isc.c | 222 regmap_write(regmap, ISC_CSC_YR_YG + isc->offsets.csc, in isc_sama5d2_config_csc() 224 regmap_write(regmap, ISC_CSC_YB_OY + isc->offsets.csc, in isc_sama5d2_config_csc() 226 regmap_write(regmap, ISC_CSC_CBR_CBG + isc->offsets.csc, in isc_sama5d2_config_csc() 228 regmap_write(regmap, ISC_CSC_CBB_OCB + isc->offsets.csc, in isc_sama5d2_config_csc() 230 regmap_write(regmap, ISC_CSC_CRR_CRG + isc->offsets.csc, in isc_sama5d2_config_csc() 232 regmap_write(regmap, ISC_CSC_CRB_OCR + isc->offsets.csc, in isc_sama5d2_config_csc() 459 isc->offsets.csc = ISC_SAMA5D2_CSC_OFFSET; in microchip_isc_probe()
|
H A D | microchip-sama7g5-isc.c | 235 regmap_write(regmap, ISC_CSC_YR_YG + isc->offsets.csc, in isc_sama7g5_config_csc() 237 regmap_write(regmap, ISC_CSC_YB_OY + isc->offsets.csc, in isc_sama7g5_config_csc() 239 regmap_write(regmap, ISC_CSC_CBR_CBG + isc->offsets.csc, in isc_sama7g5_config_csc() 241 regmap_write(regmap, ISC_CSC_CBB_OCB + isc->offsets.csc, in isc_sama7g5_config_csc() 243 regmap_write(regmap, ISC_CSC_CRR_CRG + isc->offsets.csc, in isc_sama7g5_config_csc() 245 regmap_write(regmap, ISC_CSC_CRB_OCR + isc->offsets.csc, in isc_sama7g5_config_csc() 448 isc->offsets.csc = ISC_SAMA7G5_CSC_OFFSET; in microchip_xisc_probe()
|
/linux/drivers/gpu/drm/nouveau/dispnv50/ |
H A D | base907c.c | 144 u32 *val = &asyw->csc.matrix[j * 4 + i]; in base907c_csc() 181 NVVAL(NV907C, SET_CSC_RED2RED, COEFF, asyw->csc.matrix[0]), in base907c_csc_set() 183 SET_CSC_GRN2RED, &asyw->csc.matrix[1], 11); in base907c_csc_set() 198 .csc = base907c_csc,
|
H A D | atom.h | 212 } csc; member 258 bool csc:1; member
|
/linux/drivers/gpu/drm/msm/disp/mdp5/ |
H A D | mdp5_plane.c | 501 struct csc_cfg *csc) in csc_enable() argument 506 if (unlikely(!csc)) in csc_enable() 509 if ((csc->type == CSC_YUV2RGB) || (CSC_YUV2YUV == csc->type)) in csc_enable() 511 if ((csc->type == CSC_RGB2YUV) || (CSC_YUV2YUV == csc->type)) in csc_enable() 516 matrix = csc->matrix; in csc_enable() 532 for (i = 0; i < ARRAY_SIZE(csc->pre_bias); i++) { in csc_enable() 533 uint32_t *pre_clamp = csc->pre_clamp; in csc_enable() 534 uint32_t *post_clamp = csc->post_clamp; in csc_enable() 545 MDP5_PIPE_CSC_1_PRE_BIAS_REG_VALUE(csc->pre_bias[i])); in csc_enable() 548 MDP5_PIPE_CSC_1_POST_BIAS_REG_VALUE(csc->post_bias[i])); in csc_enable()
|
/linux/Documentation/userspace-api/media/v4l/ |
H A D | vidioc-subdev-enum-mbus-code.rst | 118 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 125 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 132 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 139 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 146 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
|
/linux/drivers/media/platform/ti/omap3isp/ |
H A D | isppreview.c | 400 const struct omap3isp_prev_csc *csc = ¶ms->csc; in preview_config_csc() local 403 val = (csc->matrix[0][0] & 0x3ff) << ISPPRV_CSC0_RY_SHIFT; in preview_config_csc() 404 val |= (csc->matrix[0][1] & 0x3ff) << ISPPRV_CSC0_GY_SHIFT; in preview_config_csc() 405 val |= (csc->matrix[0][2] & 0x3ff) << ISPPRV_CSC0_BY_SHIFT; in preview_config_csc() 408 val = (csc->matrix[1][0] & 0x3ff) << ISPPRV_CSC1_RCB_SHIFT; in preview_config_csc() 409 val |= (csc->matrix[1][1] & 0x3ff) << ISPPRV_CSC1_GCB_SHIFT; in preview_config_csc() 410 val |= (csc->matrix[1][2] & 0x3ff) << ISPPRV_CSC1_BCB_SHIFT; in preview_config_csc() 413 val = (csc->matrix[2][0] & 0x3ff) << ISPPRV_CSC2_RCR_SHIFT; in preview_config_csc() 414 val |= (csc->matrix[2][1] & 0x3ff) << ISPPRV_CSC2_GCR_SHIFT; in preview_config_csc() 415 val |= (csc->matrix[2][2] & 0x3ff) << ISPPRV_CSC2_BCR_SHIFT; in preview_config_csc() [all …]
|
/linux/arch/alpha/kernel/ |
H A D | core_tsunami.c | 396 printk("%s: CSR_CSC 0x%lx\n", __func__, TSUNAMI_cchip->csc.csr); in tsunami_init_arch() 417 if (TSUNAMI_cchip->csc.csr & 1L<<14) in tsunami_init_arch() 448 if (TSUNAMI_cchip->csc.csr & 1L<<14) in tsunami_kill_arch() 467 if (TSUNAMI_cchip->csc.csr & 1L<<14) in tsunami_pci_clr_err()
|
/linux/drivers/gpu/drm/atmel-hlcdc/ |
H A D | atmel_hlcdc_dc.c | 120 .csc = 14, 237 .csc = 14, 356 .csc = 14, 452 .csc = 14, 544 .csc = 16,
|
/linux/include/video/ |
H A D | imx-ipu-v3.h | 431 int __ipu_ic_calc_csc(struct ipu_ic_csc *csc); 432 int ipu_ic_calc_csc(struct ipu_ic_csc *csc, 440 const struct ipu_ic_csc *csc, 444 const struct ipu_ic_csc *csc,
|