| /kernel/linux/linux-6.6/Documentation/gpu/amdgpu/display/ |
| D | display-manager.rst | 87 Blend Mode Properties 90 Pixel blend mode is a DRM plane composition property of :c:type:`drm_plane` used to 92 background plane (bg). Here, we present main concepts of DRM blend mode to help 97 Basically, a blend mode sets the alpha blending equation for plane 115 DRM has three blend mode to define the blend formula in the plane composition: 117 * **None**: Blend formula that ignores the pixel alpha. 119 * **Pre-multiplied**: Blend formula that assumes the pixel color values in a 122 * **Coverage**: Blend formula that assumes the pixel color values were not 125 and pre-multiplied is the default pixel blend mode, that means, when no blend 128 provides a set of subtests to verify plane alpha and blend mode properties. [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/xlnx/ |
| D | zynqmp_disp.c | 196 * @blend: Blender (video rendering pipeline) 211 struct zynqmp_disp_blend blend; member 656 static void zynqmp_disp_blend_write(struct zynqmp_disp_blend *blend, in zynqmp_disp_blend_write() argument 659 writel(val, blend->base + reg); in zynqmp_disp_blend_write() 705 * @blend: Blender object 710 static void zynqmp_disp_blend_set_output_format(struct zynqmp_disp_blend *blend, in zynqmp_disp_blend_set_output_format() argument 726 zynqmp_disp_blend_write(blend, ZYNQMP_DISP_V_BLEND_OUTPUT_VID_FMT, fmt); in zynqmp_disp_blend_set_output_format() 736 zynqmp_disp_blend_write(blend, in zynqmp_disp_blend_set_output_format() 741 zynqmp_disp_blend_write(blend, in zynqmp_disp_blend_set_output_format() 748 * @blend: Blender object [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/ |
| D | drm_blend.c | 142 * pixel blend mode: 143 * Pixel blend mode is set up with drm_plane_create_blend_mode_property(). 144 * It adds a blend mode for alpha blending equation selection, describing 151 * Blend formula that ignores the pixel alpha:: 157 * Blend formula that assumes the pixel color values 165 * Blend formula that assumes the pixel color values have not 543 * drm_plane_create_blend_mode_property - create a new blend mode property 550 * This creates a new property describing the blend mode. 553 * drm_property_create_enum()) called "pixel blend mode" and has the 557 * Blend formula that ignores the pixel alpha. [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/ |
| D | drm_blend.c | 142 * pixel blend mode: 143 * Pixel blend mode is set up with drm_plane_create_blend_mode_property(). 144 * It adds a blend mode for alpha blending equation selection, describing 151 * Blend formula that ignores the pixel alpha:: 157 * Blend formula that assumes the pixel color values 165 * Blend formula that assumes the pixel color values have not 537 * drm_plane_create_blend_mode_property - create a new blend mode property 544 * This creates a new property describing the blend mode. 547 * drm_property_create_enum()) called "pixel blend mode" and has the 551 * Blend formula that ignores the pixel alpha. [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/dispnv50/ |
| D | wndw.c | 163 if (asyw->set.blend) wndw->func->blend_set(wndw, asyw); in nv50_wndw_flush_set() 333 asyw->blend.depth = 255 - asyw->state.normalized_zpos; in nv50_wndw_atomic_check_acquire() 334 asyw->blend.k1 = asyw->state.alpha >> 8; in nv50_wndw_atomic_check_acquire() 337 asyw->blend.src_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1; in nv50_wndw_atomic_check_acquire() 338 …asyw->blend.dst_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1_… in nv50_wndw_atomic_check_acquire() 341 …asyw->blend.src_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1_TIME… in nv50_wndw_atomic_check_acquire() 342 …asyw->blend.dst_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1_… in nv50_wndw_atomic_check_acquire() 346 asyw->blend.src_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1; in nv50_wndw_atomic_check_acquire() 347 … asyw->blend.dst_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1; in nv50_wndw_atomic_check_acquire() 350 if (memcmp(&armw->blend, &asyw->blend, sizeof(asyw->blend))) in nv50_wndw_atomic_check_acquire() [all …]
|
| D | wndwc37e.c | 110 NVVAL(NVC37E, SET_COMPOSITION_CONTROL, DEPTH, asyw->blend.depth), in wndwc37e_blend_set() 113 NVVAL(NVC37E, SET_COMPOSITION_CONSTANT_ALPHA, K1, asyw->blend.k1) | in wndwc37e_blend_set() 118 asyw->blend.src_color) | in wndwc37e_blend_set() 120 asyw->blend.src_color) | in wndwc37e_blend_set() 122 asyw->blend.dst_color) | in wndwc37e_blend_set() 124 asyw->blend.dst_color), in wndwc37e_blend_set()
|
| D | atom.h | 251 } blend; member 262 bool blend:1; member
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/dispnv50/ |
| D | wndw.c | 166 if (asyw->set.blend) wndw->func->blend_set(wndw, asyw); in nv50_wndw_flush_set() 336 asyw->blend.depth = 255 - asyw->state.normalized_zpos; in nv50_wndw_atomic_check_acquire() 337 asyw->blend.k1 = asyw->state.alpha >> 8; in nv50_wndw_atomic_check_acquire() 340 asyw->blend.src_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1; in nv50_wndw_atomic_check_acquire() 341 …asyw->blend.dst_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1_… in nv50_wndw_atomic_check_acquire() 344 …asyw->blend.src_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1_TIME… in nv50_wndw_atomic_check_acquire() 345 …asyw->blend.dst_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1_… in nv50_wndw_atomic_check_acquire() 349 asyw->blend.src_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_SRC_COLOR_FACTOR_MATCH_SELECT_K1; in nv50_wndw_atomic_check_acquire() 350 … asyw->blend.dst_color = NVC37E_SET_COMPOSITION_FACTOR_SELECT_DST_COLOR_FACTOR_MATCH_SELECT_NEG_K1; in nv50_wndw_atomic_check_acquire() 353 if (memcmp(&armw->blend, &asyw->blend, sizeof(asyw->blend))) in nv50_wndw_atomic_check_acquire() [all …]
|
| D | wndwc37e.c | 105 NVVAL(NVC37E, SET_COMPOSITION_CONTROL, DEPTH, asyw->blend.depth), in wndwc37e_blend_set() 108 NVVAL(NVC37E, SET_COMPOSITION_CONSTANT_ALPHA, K1, asyw->blend.k1) | in wndwc37e_blend_set() 113 asyw->blend.src_color) | in wndwc37e_blend_set() 115 asyw->blend.src_color) | in wndwc37e_blend_set() 117 asyw->blend.dst_color) | in wndwc37e_blend_set() 119 asyw->blend.dst_color), in wndwc37e_blend_set()
|
| D | atom.h | 251 } blend; member 262 bool blend:1; member
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/vkms/ |
| D | vkms_composer.c | 33 * using premultiplied blend formula. 167 * blend - blend the pixels from all planes and compute crc 171 * @output_buffer: A buffer of a row that will receive the result of the blend(s) 172 * @stage_buffer: The line with the pixels from plane being blend to the output 179 static void blend(struct vkms_writeback_job *wb, in blend() function 283 blend(active_wb, crtc_state, crc32, &stage_buffer, in compose_active_planes()
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/sprd/ |
| D | sprd_dpu.c | 294 u32 blend = 0; in drm_blend_to_dpu() local 299 blend |= BIT_DPU_LAY_COMBO_ALPHA; in drm_blend_to_dpu() 301 blend |= BIT_DPU_LAY_MODE_BLEND_NORMAL; in drm_blend_to_dpu() 305 blend |= BIT_DPU_LAY_COMBO_ALPHA; in drm_blend_to_dpu() 307 blend |= BIT_DPU_LAY_MODE_BLEND_PREMULT; in drm_blend_to_dpu() 313 blend |= BIT_DPU_LAY_LAYER_ALPHA; in drm_blend_to_dpu() 317 return blend; in drm_blend_to_dpu() 325 u32 addr, size, offset, pitch, blend, format, rotation; in sprd_dpu_layer() local 367 blend = drm_blend_to_dpu(state); in sprd_dpu_layer() 372 blend | in sprd_dpu_layer() [all …]
|
| /kernel/linux/linux-6.6/drivers/media/platform/renesas/vsp1/ |
| D | vsp1_brx.c | 3 * vsp1_brx.c -- R-Car VSP1 Blend ROP Unit (BRU and BRS) 330 * Blend/ROP unit B SRC input. Only needed for BRU, the BRS has no ROP in brx_configure_stream() 344 * Configure all Blend/ROP units corresponding to an enabled BRx in brx_configure_stream() 345 * input for alpha blending. Blend/ROP units corresponding to in brx_configure_stream() 360 * Select the virtual RPF as the Blend/ROP unit A DST input to in brx_configure_stream() 367 * Route inputs 0 to 3 as SRC inputs to Blend/ROP units A to D in brx_configure_stream() 368 * in that order. In the BRU the Blend/ROP unit B SRC is in brx_configure_stream()
|
| D | vsp1_brx.h | 3 * vsp1_brx.h -- R-Car VSP1 Blend ROP Unit (BRU and BRS)
|
| /kernel/linux/linux-5.10/drivers/media/platform/vsp1/ |
| D | vsp1_brx.c | 3 * vsp1_brx.c -- R-Car VSP1 Blend ROP Unit (BRU and BRS) 328 * Blend/ROP unit B SRC input. Only needed for BRU, the BRS has no ROP in brx_configure_stream() 342 * Configure all Blend/ROP units corresponding to an enabled BRx in brx_configure_stream() 343 * input for alpha blending. Blend/ROP units corresponding to in brx_configure_stream() 358 * Select the virtual RPF as the Blend/ROP unit A DST input to in brx_configure_stream() 365 * Route inputs 0 to 3 as SRC inputs to Blend/ROP units A to D in brx_configure_stream() 366 * in that order. In the BRU the Blend/ROP unit B SRC is in brx_configure_stream()
|
| D | vsp1_brx.h | 3 * vsp1_brx.h -- R-Car VSP1 Blend ROP Unit (BRU and BRS)
|
| /kernel/linux/linux-6.6/Documentation/userspace-api/media/v4l/ |
| D | vidioc-g-fbuf.rst | 289 - Use the alpha channel of the framebuffer to clip or blend 290 framebuffer pixels with video images. The blend function is: 295 - Use a global alpha value to blend the framebuffer with video 296 images. The blend function is: output = (framebuffer pixel * alpha 305 framebuffer to clip or blend framebuffer pixels with video images, 306 but with an inverted alpha value. The blend function is: output =
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/vkms/ |
| D | vkms_composer.c | 79 * blend - blend value at vaddr_src with value at vaddr_dst 85 * Blend the vaddr_src value with the vaddr_dst value using the pre-multiplied 91 static void blend(void *vaddr_dst, void *vaddr_src, in blend() function 140 blend(vaddr_out, cursor_vkms_obj->vaddr, in compose_cursor()
|
| /kernel/linux/linux-5.10/Documentation/userspace-api/media/v4l/ |
| D | vidioc-g-fbuf.rst | 302 - Use the alpha channel of the framebuffer to clip or blend 303 framebuffer pixels with video images. The blend function is: 308 - Use a global alpha value to blend the framebuffer with video 309 images. The blend function is: output = (framebuffer pixel * alpha 318 framebuffer to clip or blend framebuffer pixels with video images, 319 but with an inverted alpha value. The blend function is: output =
|
| /kernel/linux/linux-5.10/Documentation/gpu/ |
| D | vkms.rst | 16 - Optimize CRC computation ``compute_crc()`` and plane blending ``blend()`` 18 - Use the alpha value to blend vaddr_src with vaddr_dst instead of 19 overwriting it in ``blend()``.
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/inc/hw/ |
| D | mpc.h | 62 * enum mpcc_alpha_blend_mode - define the alpha blend mode regarding pixel 88 * @alpha_mode: alpha blend mode (MPCC_ALPHA_BLND_MODE) 91 * @global_gain: used when blend mode considers both pixel alpha and plane 97 enum mpcc_alpha_blend_mode alpha_mode; /* alpha blend mode */
|
| /kernel/linux/linux-5.10/drivers/media/pci/ttpci/ |
| D | av7110_hw.c | 945 static int OSDSetColor(struct av7110 *av7110, u8 color, u8 r, u8 g, u8 b, u8 blend) in OSDSetColor() argument 952 yuv = blend ? RGB2YUV(r,g,b) : 0; in OSDSetColor() 959 color, ((blend >> 4) & 0x0f)); in OSDSetColor() 972 u32 color, blend, yuv; in OSDSetPalette() local 976 blend = (color & 0xF0000000) >> 4; in OSDSetPalette() 977 yuv = blend ? RGB2YUV(color & 0xFF, (color >> 8) & 0xFF, in OSDSetPalette() 978 (color >> 16) & 0xFF) | blend : 0; in OSDSetPalette() 1088 u8 r, g = 0, b = 0, blend = 0; in av7110_osd_cmd() local 1094 get_user(blend, colors + i * 4 + 3)) { in av7110_osd_cmd() 1098 ret = OSDSetColor(av7110, dc->color + i, r, g, b, blend); in av7110_osd_cmd()
|
| /kernel/linux/linux-6.6/drivers/staging/media/av7110/ |
| D | av7110_hw.c | 945 static int OSDSetColor(struct av7110 *av7110, u8 color, u8 r, u8 g, u8 b, u8 blend) in OSDSetColor() argument 952 yuv = blend ? RGB2YUV(r,g,b) : 0; in OSDSetColor() 959 color, ((blend >> 4) & 0x0f)); in OSDSetColor() 972 u32 color, blend, yuv; in OSDSetPalette() local 976 blend = (color & 0xF0000000) >> 4; in OSDSetPalette() 977 yuv = blend ? RGB2YUV(color & 0xFF, (color >> 8) & 0xFF, in OSDSetPalette() 978 (color >> 16) & 0xFF) | blend : 0; in OSDSetPalette() 1089 u8 r, g = 0, b = 0, blend = 0; in av7110_osd_cmd() local 1095 get_user(blend, colors + i * 4 + 3)) { in av7110_osd_cmd() 1099 ret = OSDSetColor(av7110, dc->color + i, r, g, b, blend); in av7110_osd_cmd()
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/xlnx/ |
| D | xlnx,zynqmp-dpsub.yaml | 56 - const: blend 152 reg-names = "dp", "blend", "av_buf", "aud";
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/msm/disp/dpu1/ |
| D | dpu_hw_ctl.h | 163 * Set all blend stages to disabled 172 * @cfg : blend stage configuration
|