/Linux-v6.1/drivers/staging/media/atomisp/pci/isp/kernels/csc/csc_1.0/ |
D | ia_css_csc.host.c | 69 const struct sh_css_isp_csc_params *csc, in ia_css_cc_dump() argument 73 if (!csc) return; in ia_css_cc_dump() 77 csc->m_shift); in ia_css_cc_dump() 80 csc->m00); in ia_css_cc_dump() 83 csc->m01); in ia_css_cc_dump() 86 csc->m02); in ia_css_cc_dump() 89 csc->m10); in ia_css_cc_dump() 92 csc->m11); in ia_css_cc_dump() 95 csc->m12); in ia_css_cc_dump() 98 csc->m20); in ia_css_cc_dump() [all …]
|
D | ia_css_csc.host.h | 39 const struct sh_css_isp_csc_params *csc, unsigned int level, 44 const struct sh_css_isp_csc_params *csc,
|
/Linux-v6.1/drivers/media/platform/ti/vpe/ |
D | csc.c | 20 #include "csc.h" 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() [all …]
|
D | Makefile | 5 obj-$(CONFIG_VIDEO_TI_CSC) += ti-csc.o 10 ti-csc-y := csc.o
|
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-v6.1/drivers/gpu/ipu-v3/ |
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 …]
|
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 …]
|
/Linux-v6.1/drivers/gpu/drm/tidss/ |
D | tidss_dispc.c | 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() [all …]
|
/Linux-v6.1/drivers/gpu/drm/msm/disp/mdp4/ |
D | mdp4_plane.c | 182 enum mdp4_pipe pipe, struct csc_cfg *csc) in mdp4_write_csc_config() argument 186 for (i = 0; i < ARRAY_SIZE(csc->matrix); i++) { in mdp4_write_csc_config() 188 csc->matrix[i]); in mdp4_write_csc_config() 191 for (i = 0; i < ARRAY_SIZE(csc->post_bias) ; i++) { in mdp4_write_csc_config() 193 csc->pre_bias[i]); in mdp4_write_csc_config() 196 csc->post_bias[i]); in mdp4_write_csc_config() 199 for (i = 0; i < ARRAY_SIZE(csc->post_clamp) ; i++) { in mdp4_write_csc_config() 201 csc->pre_clamp[i]); in mdp4_write_csc_config() 204 csc->post_clamp[i]); in mdp4_write_csc_config() 337 struct csc_cfg *csc = mdp_get_default_csc_cfg(CSC_YUV2RGB); in mdp4_plane_mode_set() local [all …]
|
/Linux-v6.1/Documentation/userspace-api/media/v4l/ |
D | vidioc-subdev-enum-mbus-code.rst | 100 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 107 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 114 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 121 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set. 128 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
|
D | vidioc-enum-fmt.rst | 201 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set. 208 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set. 215 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set. 222 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set. 229 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
|
/Linux-v6.1/Documentation/devicetree/bindings/media/ |
D | ti,vpe.yaml | 26 - description: Color Space Conversion (CSC) register region 33 - const: csc 59 "csc",
|
/Linux-v6.1/drivers/gpu/drm/nouveau/dispnv50/ |
D | wndw.c | 136 if (clr.csc ) wndw->func-> csc_clr(wndw); in nv50_wndw_flush_clr() 164 if (asyw->set.csc ) wndw->func->csc_set (wndw, asyw); in nv50_wndw_flush_set() 421 if (wndw->func->csc && asyh->state.ctm) { in nv50_wndw_atomic_check_lut() 423 wndw->func->csc(wndw, asyw, ctm); in nv50_wndw_atomic_check_lut() 424 asyw->csc.valid = true; in nv50_wndw_atomic_check_lut() 425 asyw->set.csc = true; in nv50_wndw_atomic_check_lut() 427 asyw->csc.valid = false; in nv50_wndw_atomic_check_lut() 428 asyw->clr.csc = armw->csc.valid; in nv50_wndw_atomic_check_lut() 509 asyw->clr.csc = armw->csc.valid; in nv50_wndw_atomic_check() 608 asyw->csc = armw->csc; in nv50_wndw_atomic_duplicate_state()
|
D | base907c.c | 144 u32 *val = &asyw->csc.matrix[j * 4 + i]; in base907c_csc() 146 * HW CSC does. Skip it. */ 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,
|
/Linux-v6.1/drivers/gpu/drm/sun4i/ |
D | sun8i_csc.c | 51 * DE3 has a bit different CSC units. Factors are in two's complement format. 62 * Please note that above formula is true only for Blender CSC. Other DE3 CSC 138 DRM_WARN("Wrong CSC mode specified.\n"); in sun8i_csc_set_coefficients() 176 DRM_WARN("Wrong CSC mode specified.\n"); in sun8i_de3_ccsc_set_coefficients()
|
/Linux-v6.1/drivers/media/platform/atmel/ |
D | atmel-sama7g5-isc.c | 9 * Sensor-->PFE-->DPC-->WB-->CFA-->CC-->GAM-->VHXS-->CSC-->CBHS-->SUB-->RLP-->DMA-->HIS 20 * CSC: Programmable color space conversion 215 regmap_write(regmap, ISC_CSC_YR_YG + isc->offsets.csc, in isc_sama7g5_config_csc() 217 regmap_write(regmap, ISC_CSC_YB_OY + isc->offsets.csc, in isc_sama7g5_config_csc() 219 regmap_write(regmap, ISC_CSC_CBR_CBG + isc->offsets.csc, in isc_sama7g5_config_csc() 221 regmap_write(regmap, ISC_CSC_CBB_OCB + isc->offsets.csc, in isc_sama7g5_config_csc() 223 regmap_write(regmap, ISC_CSC_CRR_CRG + isc->offsets.csc, in isc_sama7g5_config_csc() 225 regmap_write(regmap, ISC_CSC_CRB_OCR + isc->offsets.csc, in isc_sama7g5_config_csc() 435 isc->offsets.csc = ISC_SAMA7G5_CSC_OFFSET; in microchip_xisc_probe()
|
D | atmel-sama5d2-isc.c | 11 * Sensor-->PFE-->WB-->CFA-->CC-->GAM-->CSC-->CBC-->SUB-->RLP-->DMA 19 * CSC: Programmable color space conversion 202 regmap_write(regmap, ISC_CSC_YR_YG + isc->offsets.csc, in isc_sama5d2_config_csc() 204 regmap_write(regmap, ISC_CSC_YB_OY + isc->offsets.csc, in isc_sama5d2_config_csc() 206 regmap_write(regmap, ISC_CSC_CBR_CBG + isc->offsets.csc, in isc_sama5d2_config_csc() 208 regmap_write(regmap, ISC_CSC_CBB_OCB + isc->offsets.csc, in isc_sama5d2_config_csc() 210 regmap_write(regmap, ISC_CSC_CRR_CRG + isc->offsets.csc, in isc_sama5d2_config_csc() 212 regmap_write(regmap, ISC_CSC_CRB_OCR + isc->offsets.csc, in isc_sama5d2_config_csc() 446 isc->offsets.csc = ISC_SAMA5D2_CSC_OFFSET; in atmel_isc_probe()
|
D | atmel-isc.h | 164 * @csc: Offset for the CSC register 175 u32 csc; member 240 * specific CSC module
|
/Linux-v6.1/Documentation/devicetree/bindings/display/ |
D | brcm,bcm2711-hdmi.yaml | 26 - description: CSC register range 38 - const: csc 132 "csc",
|
/Linux-v6.1/arch/powerpc/boot/ |
D | mvme5100.c | 5 * Author: Stephen Chivers <schivers@csc.com> 7 * Copyright 2013 CSC Australia Pty. Ltd.
|
/Linux-v6.1/drivers/gpu/drm/msm/disp/mdp5/ |
D | mdp5_plane.c | 515 struct csc_cfg *csc) in csc_enable() argument 517 uint32_t i, mode = 0; /* RGB, no CSC */ in csc_enable() 520 if (unlikely(!csc)) in csc_enable() 523 if ((csc->type == CSC_YUV2RGB) || (CSC_YUV2YUV == csc->type)) in csc_enable() 525 if ((csc->type == CSC_RGB2YUV) || (CSC_YUV2YUV == csc->type)) in csc_enable() 530 matrix = csc->matrix; in csc_enable() 546 for (i = 0; i < ARRAY_SIZE(csc->pre_bias); i++) { in csc_enable() 547 uint32_t *pre_clamp = csc->pre_clamp; in csc_enable() 548 uint32_t *post_clamp = csc->post_clamp; in csc_enable() 559 MDP5_PIPE_CSC_1_PRE_BIAS_REG_VALUE(csc->pre_bias[i])); in csc_enable() [all …]
|
/Linux-v6.1/drivers/pcmcia/ |
D | i82092.c | 309 int csc; in i82092aa_interrupt() local 316 csc = indirect_read(i, I365_CSC); in i82092aa_interrupt() 318 if (csc == 0) /* no events on this socket */ in i82092aa_interrupt() 323 if (csc & I365_CSC_DETECT) { in i82092aa_interrupt() 331 if (csc & I365_CSC_STSCHG) in i82092aa_interrupt() 335 if (csc & I365_CSC_BVD1) in i82092aa_interrupt() 337 if (csc & I365_CSC_BVD2) in i82092aa_interrupt() 339 if (csc & I365_CSC_READY) in i82092aa_interrupt()
|
D | yenta_socket.c | 374 /* CSC interrupt: no ISA irq for CSC */ in yenta_set_socket() 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() 595 /* Re-enable CSC interrupts */ in yenta_sock_init() [all …]
|
/Linux-v6.1/drivers/gpu/drm/amd/display/amdgpu_dm/ |
D | amdgpu_dm_color.c | 39 * - Input CSC (normalized) 41 * - Surface CSC (normalized) 43 * - Output CSC (normalized) 53 * input and output CSC blocks are technically available to use as part of 176 * __drm_ctm_to_dc_matrix - converts a DRM CTM to a DC CSC float matrix 178 * @matrix: DC CSC float matrix 554 * The CSC will be done in the wrong space since in amdgpu_dm_update_plane_color_mgmt()
|
/Linux-v6.1/drivers/staging/media/deprecated/vpfe_capture/ |
D | isif.c | 40 .csc = { 169 /* disable CSC */ in isif_disable_all_modules() 486 if (!df_csc->csc.en) { in isif_config_csc() 493 val1 = (df_csc->csc.coeff[i].integer << in isif_config_csc() 495 df_csc->csc.coeff[i].decimal; in isif_config_csc() 499 val2 = (df_csc->csc.coeff[i].integer << in isif_config_csc() 501 df_csc->csc.coeff[i].decimal; in isif_config_csc() 511 * one extra pixel as required for CSC. Actually number of in isif_config_csc() 514 * not do this since csc requires one extra pixel in isif_config_csc() 519 * one extra line as required for CSC. See reason documented for in isif_config_csc() [all …]
|