/linux/Documentation/gpu/amdgpu/display/ |
H A D | display-manager.rst | 8 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 11 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h 17 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 20 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 26 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c 29 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c 32 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 38 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 41 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 47 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c [all …]
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_mode.h | 40 #include <linux/i2c-algo-bit.h> 128 /* amdgpu gpio-based i2c 150 /* uses multi-media i2c engine */ 317 /* DVI-I properties */ 346 /* Driver-private color mgmt props */ 350 * blending. 354 * size of degamma LUT as supported by the driver (read-only). 358 * @plane_degamma_tf_property: Plane pre-defined transfer function to 369 * @shaper_lut_property: Plane property to set pre-blending shaper LUT 372 * combine the user LUT values with pre-defined TF into the LUT [all …]
|
/linux/drivers/gpu/drm/amd/display/amdgpu_dm/ |
H A D | amdgpu_dm_color.c | 38 * - Input gamma LUT (de-normalized) 39 * - Input CSC (normalized) 40 * - Surface degamma LUT (normalized) 41 * - Surface CSC (normalized) 42 * - Surface regamma LUT (normalized) 43 * - Output CSC (normalized) 49 * Plane CTM -> Plane degamma -> Plane CTM -> Plane regamma -> Plane CTM 58 * The pipe blending also happens after these blocks so we don't actually 59 * support any CRTC props with correct blending with multiple planes - but we 70 * Plane DGM Bypass -> Plane CTM Bypass -> Plane RGM Bypass -> ... [all …]
|
H A D | amdgpu_dm.h | 2 * Copyright (C) 2015-2020 Advanced Micro Devices, Inc. All rights reserved. 98 * struct dm_compressor_info - Buffer info used by frame buffer compression 112 * struct dmub_hpd_work - Handle time consuming work in low priority outbox IRQ 125 * struct vblank_control_work - Work data for vblank control 141 * struct idle_workqueue - Work data for periodic action in idle 155 * struct amdgpu_dm_backlight_caps - Information about backlight 175 * @min_input_signal: minimum possible input in range 0-255. 179 * @max_input_signal: maximum possible input in range 0-255. 201 * struct dal_allocation - Tracks mapped FB memory for SMU communication 215 * struct hpd_rx_irq_offload_work_queue - Work queue to handle hpd_rx_irq [all …]
|
H A D | amdgpu_dm_plane.c | 1 // SPDX-License-Identifier: MIT 96 return amdgpu_lookup_format_info(cmd->pixel_format, cmd->modifier[0]); in amdgpu_dm_plane_get_format_info() 109 if (plane_state->pixel_blend_mode == DRM_MODE_BLEND_PREMULTI || in amdgpu_dm_plane_fill_blending_from_plane_state() 110 plane_state->pixel_blend_mode == DRM_MODE_BLEND_COVERAGE) { in amdgpu_dm_plane_fill_blending_from_plane_state() 121 uint32_t format = plane_state->fb->format->format; in amdgpu_dm_plane_fill_blending_from_plane_state() 131 if (*per_pixel_alpha && plane_state->pixel_blend_mode == DRM_MODE_BLEND_COVERAGE) in amdgpu_dm_plane_fill_blending_from_plane_state() 135 if (plane_state->alpha < 0xffff) { in amdgpu_dm_plane_fill_blending_from_plane_state() 137 *global_alpha_value = plane_state->alpha >> 8; in amdgpu_dm_plane_fill_blending_from_plane_state() 146 if (*cap - *size < 1) { in amdgpu_dm_plane_add_modifier() 193 tiling_info->gfx8.num_banks = num_banks; in amdgpu_dm_plane_fill_gfx8_tiling_info_from_flags() [all …]
|
/linux/drivers/gpu/drm/ |
H A D | drm_blend.c | 6 * DRM core plane blending related functions 43 * sub-pixel accuracy, which is scaled up to a pixel-aligned destination 96 * plane-wide opacity, from transparent (0) to opaque (0xffff). It can be 99 * pre-multiplied by the global alpha associated to the plane. 109 * "rotate-<degrees>": 113 * "reflect-<axis>": 117 * reflect-x:: 120 * | | -> | | 123 * reflect-y:: 126 * | | -> | | [all …]
|
H A D | drm_connector.c | 51 * Hence they are reference-counted using drm_connector_get() and 67 * For connectors which are not fixed (like built-in panels) the driver needs to 76 * Note drm_connector_[un]register() first take connector->lock and then 94 { DRM_MODE_CONNECTOR_DVII, "DVI-I" }, 95 { DRM_MODE_CONNECTOR_DVID, "DVI-D" }, 96 { DRM_MODE_CONNECTOR_DVIA, "DVI-A" }, 103 { DRM_MODE_CONNECTOR_HDMIA, "HDMI-A" }, 104 { DRM_MODE_CONNECTOR_HDMIB, "HDMI-B" }, 132 * drm_get_connector_type_name - return a string for connector type 147 * drm_connector_get_cmdline_mode - reads the user's cmdline mode [all …]
|
/linux/Documentation/devicetree/bindings/display/ |
H A D | amlogic,meson-vpu.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/display/amlogic,meson-vpu.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Neil Armstrong <neil.armstrong@linaro.org> 17 DMC|---------------VPU (Video Processing Unit)----------------|------HHI------| 19 D |-------| |----| | | | | HDMI PLL | 20 D | vd2 | VIU | | Video Post | | Video Encoders |<---|-----VCLK | 21 R |-------| |----| Processing | | | | | 22 | osd2 | | | |---| Enci ----------|----|-----VDAC------| [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/inc/hw/ |
H A D | mpc.h | 2 * Copyright 2012-15 Advanced Micro Devices, Inc. 30 * that performs blending of multiple planes, using global and per-pixel alpha. 31 * It also performs post-blending color correction operations according to the 36 * supporting "M MPC inputs -> N MPC outputs" flexible composition 39 * - Programmable blending structure to allow software controlled blending and 41 * - Programmable window location of each DPP in active region of display; 42 * - Combining multiple DPP pipes in one active region when a single DPP pipe 44 * - Combining multiple DPP from different SLS with blending; 45 * - Stereo formats from single DPP in top-bottom or side-by-side modes; 46 * - Stereo formats from 2 DPPs; [all …]
|
/linux/drivers/staging/media/ipu3/include/uapi/ |
H A D | intel-ipu3.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 /* Copyright (C) 2017 - 2018 Intel Corporation */ 11 /* Vendor specific - used for IPU3 camera sub-system */ 17 /* from include/uapi/linux/v4l2-controls.h */ 26 #define IPU3_UAPI_GRID_START_MASK ((1 << 12) - 1) 34 * struct ipu3_uapi_grid_config - Grid plane config 56 * create a grid-based output, and the data is then divided into "slices". 71 * struct ipu3_uapi_awb_set_item - Memory layout for each cell in AWB 108 * struct ipu3_uapi_awb_raw_buffer - AWB raw buffer 119 * struct ipu3_uapi_awb_config_s - AWB config [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn201/ |
H A D | dcn201_hwseq.c | 44 hws->ctx 47 hws->regs->reg 50 dc->ctx->logger 54 hws->shifts->field_name, hws->masks->field_name 59 struct dc_plane_state *plane_state = pipe_ctx->plane_state; in patch_address_for_sbs_tb_stereo() 60 bool sec_split = pipe_ctx->top_pipe && in patch_address_for_sbs_tb_stereo() 61 pipe_ctx->top_pipe->plane_state == pipe_ctx->plane_state; in patch_address_for_sbs_tb_stereo() 63 if (sec_split && plane_state->address.type == PLN_ADDR_TYPE_GRPH_STEREO && in patch_address_for_sbs_tb_stereo() 64 (pipe_ctx->stream->timing.timing_3d_format == in patch_address_for_sbs_tb_stereo() 66 pipe_ctx->stream->timing.timing_3d_format == in patch_address_for_sbs_tb_stereo() [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/inc/ |
H A D | resource.h | 38 #define IS_PIPE_SYNCD_VALID(pipe) ((((pipe)->pipe_idx_syncd) & 0x80)?1:0) 39 #define GET_PIPE_SYNCD_FROM_PIPE(pipe) ((pipe)->pipe_idx_syncd & 0x7F) 40 #define SET_PIPE_SYNCD_TO_PIPE(pipe, pipe_syncd) ((pipe)->pipe_idx_syncd = (0x80 | pipe_syncd)) 155 #define FREE_PIPE_INDEX_NOT_FOUND -1 203 * Inter-pipe Relation 207 * | 0 | -------------MPC---------ODM----------- | 209 * | 1 | ------------- | | | | 211 * | 2 | -------------MPC--------- | | 213 * | 3 | ------------- | | | 215 * | 4 | | ----------------------- | [all …]
|
/linux/Documentation/admin-guide/media/ |
H A D | imx.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 ------------ 15 - Image DMA Controller (IDMAC) 16 - Camera Serial Interface (CSI) 17 - Image Converter (IC) 18 - Sensor Multi-FIFO Controller (SMFC) 19 - Image Rotator (IRT) 20 - Video De-Interlacing or Combining Block (VDIC) 26 re-ordering (for example UYVY to YUYV) within the same colorspace, and 27 packed <--> planar conversion. The IDMAC can also perform a simple [all …]
|
/linux/drivers/gpu/drm/renesas/rcar-du/ |
H A D | rcar_du_group.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * R-Car Display Unit Channels Pair 5 * Copyright (C) 2013-2015 Renesas Electronics Corporation 11 * The R8A7779 DU is split in per-CRTC resources (scan-out engine, blending 12 * unit, timings generator, ...) and device-global resources (start/stop 19 * modeled as a single device with three CRTCs, two sets of "semi-global" 20 * resources, and a few device-global resources. 23 * counterpart in the DU documentation, that models those semi-global resources. 35 return rcar_du_read(rgrp->dev, rgrp->mmio_offset + reg); in rcar_du_group_read() 40 rcar_du_write(rgrp->dev, rgrp->mmio_offset + reg, data); in rcar_du_group_write() [all …]
|
/linux/drivers/gpu/drm/sprd/ |
H A D | sprd_dpu.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <linux/dma-buf.h> 130 struct dpu_context *ctx = &dpu->ctx; in dpu_wait_stop_done() 133 if (ctx->stopped) in dpu_wait_stop_done() 136 rc = wait_event_interruptible_timeout(ctx->wait_queue, ctx->evt_stop, in dpu_wait_stop_done() 138 ctx->evt_stop = false; in dpu_wait_stop_done() 140 ctx->stopped = true; in dpu_wait_stop_done() 143 drm_err(dpu->drm, "dpu wait for stop done time out!\n"); in dpu_wait_stop_done() 144 return -ETIMEDOUT; in dpu_wait_stop_done() 152 struct dpu_context *ctx = &dpu->ctx; in dpu_wait_update_done() [all …]
|
/linux/drivers/gpu/drm/rockchip/ |
H A D | rockchip_drm_vop.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Author:Mark Yao <mark.yao@rock-chips.com> 45 vop_reg_set(vop, &win->phy->name, win->base, ~0, v, #name) 47 vop_reg_set(vop, &win->phy->scl->name, win->base, ~0, v, #name) 49 vop_reg_set(vop, &win->phy->scl->ext->name, \ 50 win->base, ~0, v, #name) 54 if (win_yuv2yuv && win_yuv2yuv->name.mask) \ 55 vop_reg_set(vop, &win_yuv2yuv->name, 0, ~0, v, #name); \ 60 if (win_yuv2yuv && win_yuv2yuv->phy->name.mask) \ 61 vop_reg_set(vop, &win_yuv2yuv->phy->name, win_yuv2yuv->base, ~0, v, #name); \ [all …]
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_bo.c | 30 #include <linux/dma-mapping.h> 52 * NV10-NV40 tiling helpers 60 int i = reg - drm->tile.reg; in nv10_bo_update_tile_region() 62 struct nvkm_fb_tile *tile = &fb->tile.region[i]; in nv10_bo_update_tile_region() 64 nouveau_fence_unref(®->fence); in nv10_bo_update_tile_region() 66 if (tile->pitch) in nv10_bo_update_tile_region() 79 struct nouveau_drm_tile *tile = &drm->tile.reg[i]; in nv10_bo_get_tile_region() 81 spin_lock(&drm->tile.lock); in nv10_bo_get_tile_region() 83 if (!tile->used && in nv10_bo_get_tile_region() 84 (!tile->fence || nouveau_fence_done(tile->fence))) in nv10_bo_get_tile_region() [all …]
|
/linux/Documentation/driver-api/media/drivers/ |
H A D | cx2341x-devel.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 ----------------------- 12 .. note:: the memory long words are little-endian ('intel format'). 21 .. code-block:: none 23 ivtvctl -O min=0x02000000,max=0x020000ff 26 register space :-). 35 .. code-block:: none 37 0x00000000-0x00ffffff Encoder memory space 38 0x00000000-0x0003ffff Encode.rom 39 ???-??? MPEG buffer(s) [all …]
|
/linux/drivers/gpu/drm/amd/include/ |
H A D | atomfirmware.h | 6 * Description header file of general definitions for OS and pre-OS video drivers 31 * If a change in VBIOS/Driver/Tool's interface is only needed for pre-SoC15 products, then the chan… 32 * If a change is needed for both pre and post SoC15 products, then the change has to be made separa… 115 ATOM_SCALER_DISABLE =0, /*scaler bypass mode, auto-center & no replication*/ 116 ATOM_SCALER_CENTER =1, //For Fudo, it's bypass and auto-center & auto replication 117 ATOM_SCALER_EXPANSION =2, /*scaler expansion by 2 tap alpha blending mode*/ 202 #define BIOS_VERSION_PREFIX "ATOMBIOSBK-AMD" 245 …tom_string_def atom_bios_string; //Signature to distinguish between Atombios and non-atombios, 604 uint32_t maco_pwrlimit_mw; // bomaco mode power limit in unit of m-watt 605 uint32_t usb_pwrlimit_mw; // power limit when USB is enable in unit of m-watt [all …]
|
H A D | atombios.h | 2 * Copyright 2006-2007 Advanced Micro Devices, Inc. 107 #define ATOM_SCALER_DISABLE 0 //For Fudo, it's bypass and auto-cengter & no replication 108 #define ATOM_SCALER_CENTER 1 //For Fudo, it's bypass and auto-center & auto replication 109 #define ATOM_SCALER_EXPANSION 2 //For Fudo, it's 2 Tap alpha blending mode 110 #define ATOM_SCALER_MULTI_EX 3 //For Fudo only, it's multi-tap mode only used to drive TV or CV,… 222 UCHAR uaFirmWareSignature[4]; //Signature to distinguish between Atombios and non-atombios, 245 UCHAR uaFirmWareSignature[4]; //Signature to distinguish between Atombios and non-atombios, 427 …ONG ulPointerReturnFlag:1; // BYTE_3[7]=1 - Return the pointer to the right Data Block; BYTE_… 433 …ONG ulPointerReturnFlag:1; // BYTE_3[7]=1 - Return the pointer to the right Data Block; BYTE_… 440 …ULONG ulClock; //When returen, it's the re-calculated clock based on given Fb_div Post_Di… [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn10/ |
H A D | dcn10_hwseq.c | 67 hws->ctx 69 hws->regs->reg 73 hws->shifts->field_name, hws->masks->field_name 88 const uint32_t ref_clk_mhz = dc_ctx->dc->res_pool->ref_clocks.dchub_ref_clock_inKhz / 1000; in print_microsec() 106 for (i = 0; i < dc->res_pool->pipe_count; i++) { in dcn10_lock_all_pipes() 107 old_pipe_ctx = &dc->current_state->res_ctx.pipe_ctx[i]; in dcn10_lock_all_pipes() 108 pipe_ctx = &context->res_ctx.pipe_ctx[i]; in dcn10_lock_all_pipes() 109 tg = pipe_ctx->stream_res.tg; in dcn10_lock_all_pipes() 115 if (pipe_ctx->top_pipe || in dcn10_lock_all_pipes() 116 !pipe_ctx->stream || in dcn10_lock_all_pipes() [all …]
|