Home
last modified time | relevance | path

Searched full:csc (Results 1 – 25 of 161) sorted by relevance

1234567

/Linux-v5.10/drivers/staging/media/atomisp/pci/isp/kernels/csc/csc_1.0/
Dia_css_csc.host.c69 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 …]
Dia_css_csc.host.h39 const struct sh_css_isp_csc_params *csc, unsigned int level,
44 const struct sh_css_isp_csc_params *csc,
/Linux-v5.10/drivers/media/platform/ti-vpe/
Dcsc.c20 #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 …]
DMakefile5 obj-$(CONFIG_VIDEO_TI_CSC) += ti-csc.o
10 ti-csc-y := csc.o
Dcsc.h58 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-v5.10/drivers/gpu/ipu-v3/
Dipu-ic-csc.c355 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 …]
Dipu-ic.c175 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-v5.10/drivers/gpu/drm/tidss/
Dtidss_dispc.c1305 /* CSC */
1325 void (*to_regval)(const struct dispc_csc_coef *csc, u32 *regval);
1336 void dispc_csc_offset_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_offset_regval() argument
1339 regval[5] = OVAL(csc->preoffset[0], csc->preoffset[1]); in dispc_csc_offset_regval()
1340 regval[6] = OVAL(csc->preoffset[2], csc->postoffset[0]); in dispc_csc_offset_regval()
1341 regval[7] = OVAL(csc->postoffset[1], csc->postoffset[2]); in dispc_csc_offset_regval()
1347 void dispc_csc_yuv2rgb_regval(const struct dispc_csc_coef *csc, u32 *regval) in dispc_csc_yuv2rgb_regval() argument
1349 regval[0] = CVAL(csc->m[CSC_RY], csc->m[CSC_RCR]); in dispc_csc_yuv2rgb_regval()
1350 regval[1] = CVAL(csc->m[CSC_RCB], csc->m[CSC_GY]); in dispc_csc_yuv2rgb_regval()
1351 regval[2] = CVAL(csc->m[CSC_GCR], csc->m[CSC_GCB]); in dispc_csc_yuv2rgb_regval()
[all …]
/Linux-v5.10/drivers/gpu/drm/msm/disp/mdp4/
Dmdp4_plane.c164 enum mdp4_pipe pipe, struct csc_cfg *csc) in mdp4_write_csc_config() argument
168 for (i = 0; i < ARRAY_SIZE(csc->matrix); i++) { in mdp4_write_csc_config()
170 csc->matrix[i]); in mdp4_write_csc_config()
173 for (i = 0; i < ARRAY_SIZE(csc->post_bias) ; i++) { in mdp4_write_csc_config()
175 csc->pre_bias[i]); in mdp4_write_csc_config()
178 csc->post_bias[i]); in mdp4_write_csc_config()
181 for (i = 0; i < ARRAY_SIZE(csc->post_clamp) ; i++) { in mdp4_write_csc_config()
183 csc->pre_clamp[i]); in mdp4_write_csc_config()
186 csc->post_clamp[i]); in mdp4_write_csc_config()
319 struct csc_cfg *csc = mdp_get_default_csc_cfg(CSC_YUV2RGB); in mdp4_plane_mode_set() local
[all …]
/Linux-v5.10/Documentation/userspace-api/media/v4l/
Dvidioc-subdev-enum-mbus-code.rst96 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
103 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
110 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
117 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
124 ioctl with :ref:`V4L2_MBUS_FRAMEFMT_SET_CSC <mbus-framefmt-set-csc>` set.
Dvidioc-enum-fmt.rst197 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
204 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
211 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
218 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
225 :ref:`V4L2_PIX_FMT_FLAG_SET_CSC <v4l2-pix-fmt-flag-set-csc>` set.
/Linux-v5.10/Documentation/devicetree/bindings/media/
Dti,vpe.yaml26 - description: Color Space Conversion (CSC) register region
33 - const: csc
59 "csc",
/Linux-v5.10/drivers/gpu/drm/nouveau/dispnv50/
Dbase907c.c148 u32 *val = &asyw->csc.matrix[j * 4 + i]; in base907c_csc()
150 * HW CSC does. Skip it. */ in base907c_csc()
185 NVVAL(NV907C, SET_CSC_RED2RED, COEFF, asyw->csc.matrix[0]), in base907c_csc_set()
187 SET_CSC_GRN2RED, &asyw->csc.matrix[1], 11); in base907c_csc_set()
202 .csc = base907c_csc,
Dwndw.c133 if (clr.csc ) wndw->func-> csc_clr(wndw); in nv50_wndw_flush_clr()
161 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()
506 asyw->clr.csc = armw->csc.valid; in nv50_wndw_atomic_check()
602 asyw->csc = armw->csc; in nv50_wndw_atomic_duplicate_state()
/Linux-v5.10/Documentation/devicetree/bindings/display/
Dbrcm,bcm2711-hdmi.yaml26 - description: CSC register range
38 - const: csc
114 "csc",
/Linux-v5.10/drivers/gpu/drm/sun4i/
Dsun8i_csc.c77 * DE3 has a bit different CSC units. Factors are in two's complement format.
88 * Please note that above formula is true only for Blender CSC. Other DE3 CSC
169 DRM_WARN("Wrong CSC mode specified.\n"); in sun8i_csc_set_coefficients()
193 DRM_WARN("Wrong CSC mode specified.\n"); in sun8i_de3_ccsc_set_coefficients()
/Linux-v5.10/arch/powerpc/boot/
Dmvme5100.c5 * Author: Stephen Chivers <schivers@csc.com>
7 * Copyright 2013 CSC Australia Pty. Ltd.
/Linux-v5.10/drivers/gpu/drm/msm/disp/mdp5/
Dmdp5_plane.c569 struct csc_cfg *csc) in csc_enable() argument
571 uint32_t i, mode = 0; /* RGB, no CSC */ in csc_enable()
574 if (unlikely(!csc)) in csc_enable()
577 if ((csc->type == CSC_YUV2RGB) || (CSC_YUV2YUV == csc->type)) in csc_enable()
579 if ((csc->type == CSC_RGB2YUV) || (CSC_YUV2YUV == csc->type)) in csc_enable()
584 matrix = csc->matrix; in csc_enable()
600 for (i = 0; i < ARRAY_SIZE(csc->pre_bias); i++) { in csc_enable()
601 uint32_t *pre_clamp = csc->pre_clamp; in csc_enable()
602 uint32_t *post_clamp = csc->post_clamp; in csc_enable()
613 MDP5_PIPE_CSC_1_PRE_BIAS_REG_VALUE(csc->pre_bias[i])); in csc_enable()
[all …]
/Linux-v5.10/drivers/pcmcia/
Di82092.c308 int csc; in i82092aa_interrupt() local
315 csc = indirect_read(i, I365_CSC); in i82092aa_interrupt()
317 if (csc == 0) /* no events on this socket */ in i82092aa_interrupt()
322 if (csc & I365_CSC_DETECT) { in i82092aa_interrupt()
330 if (csc & I365_CSC_STSCHG) in i82092aa_interrupt()
334 if (csc & I365_CSC_BVD1) in i82092aa_interrupt()
336 if (csc & I365_CSC_BVD2) in i82092aa_interrupt()
338 if (csc & I365_CSC_READY) in i82092aa_interrupt()
Dyenta_socket.c372 /* CSC interrupt: no ISA irq for CSC */ in yenta_set_socket()
510 u8 csc; in yenta_interrupt() local
517 csc = exca_readb(socket, I365_CSC); in yenta_interrupt()
519 if (!(cb_event || csc)) in yenta_interrupt()
523 events |= (csc & I365_CSC_DETECT) ? SS_DETECT : 0; in yenta_interrupt()
525 events |= (csc & I365_CSC_STSCHG) ? SS_STSCHG : 0; in yenta_interrupt()
527 events |= (csc & I365_CSC_BVD1) ? SS_BATDEAD : 0; in yenta_interrupt()
528 events |= (csc & I365_CSC_BVD2) ? SS_BATWARN : 0; in yenta_interrupt()
529 events |= (csc & I365_CSC_READY) ? SS_READY : 0; in yenta_interrupt()
593 /* Re-enable CSC interrupts */ in yenta_sock_init()
[all …]
Dpd6729.c192 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()
/Linux-v5.10/drivers/gpu/drm/zte/
Dzx_plane.c356 void __iomem *csc = zplane->csc; in zx_gl_plane_atomic_update() local
412 /* Setup CSC for the GL */ in zx_gl_plane_atomic_update()
414 zx_writel_mask(csc + CSC_CTRL0, CSC_COV_MODE_MASK, in zx_gl_plane_atomic_update()
417 zx_writel_mask(csc + CSC_CTRL0, CSC_COV_MODE_MASK, in zx_gl_plane_atomic_update()
419 zx_writel_mask(csc + CSC_CTRL0, CSC_WORK_ENABLE, CSC_WORK_ENABLE); in zx_gl_plane_atomic_update()
/Linux-v5.10/drivers/media/platform/davinci/
Disif.c40 .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 …]
/Linux-v5.10/drivers/gpu/drm/amd/display/amdgpu_dm/
Damdgpu_dm_color.c37 * - Input CSC (normalized)
39 * - Surface CSC (normalized)
41 * - Output CSC (normalized)
51 * input and output CSC blocks are technically available to use as part of
158 * Converts a DRM CTM to a DC CSC float matrix.
468 * The CSC will be done in the wrong space since in amdgpu_dm_update_plane_color_mgmt()
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/dcn20/
Ddcn20_mpc.c152 /* determine which CSC coefficients (A or B) we are using in mpc2_set_output_csc()
154 * the CSC update so CSC is updated on frame boundary in mpc2_set_output_csc()
210 /* determine which CSC coefficients (A or B) we are using in mpc2_set_ocsc_default()
212 * the CSC update so CSC is updated on frame boundary in mpc2_set_ocsc_default()

1234567