| /linux/drivers/gpu/drm/xe/ |
| H A D | Makefile | 207 # i915 Display compat #defines and #includes 210 -I$(srctree)/drivers/gpu/drm/i915/display/ 212 # Rule to build display code shared with i915 213 $(obj)/i915-display/%.o: $(srctree)/drivers/gpu/drm/i915/display/%.c FORCE 217 # Display code specific to xe 219 display/xe_display.o \ 220 display/xe_display_bo.o \ 221 display/xe_display_pcode.o \ 222 display/xe_display_rpm.o \ 223 display/xe_display_wa.o \ [all …]
|
| /linux/drivers/gpu/drm/i915/display/ |
| H A D | intel_cdclk.c | 60 * The display engine uses several different clocks to do its work. There 63 * are the core display clock (CDCLK) and RAWCLK. 65 * CDCLK clocks most of the display pipe logic, and thus its frequency 71 * to minimize power consumption for a given display configuration. 72 * Typically changes to the CDCLK frequency require all the display pipes 161 void (*get_cdclk)(struct intel_display *display, 163 void (*set_cdclk)(struct intel_display *display, 170 void intel_cdclk_get_cdclk(struct intel_display *display, in intel_cdclk_get_cdclk() argument 173 display->cdclk.funcs->get_cdclk(display, cdclk_config); in intel_cdclk_get_cdclk() 176 static void intel_cdclk_set_cdclk(struct intel_display *display, in intel_cdclk_set_cdclk() argument [all …]
|
| H A D | intel_vrr.c | 36 struct intel_display *display = to_intel_display(connector); in intel_vrr_is_capable() local 40 if (!HAS_VRR(display)) in intel_vrr_is_capable() 111 static int intel_vrr_extra_vblank_delay(struct intel_display *display) in intel_vrr_extra_vblank_delay() argument 119 return DISPLAY_VER(display) < 13 ? 1 : 0; in intel_vrr_extra_vblank_delay() 122 static int intel_vrr_vmin_flipline_offset(struct intel_display *display) in intel_vrr_vmin_flipline_offset() argument 132 return DISPLAY_VER(display) < 13 ? 1 : 0; in intel_vrr_vmin_flipline_offset() 190 struct intel_display *display = to_intel_display(crtc_state); in is_cmrr_frac_required() local 195 if (!HAS_CMRR(display) || true) in is_cmrr_frac_required() 276 struct intel_display *display = to_intel_display(crtc_state); in intel_vrr_hw_value() local 282 if (DISPLAY_VER(display) >= 13) in intel_vrr_hw_value() [all …]
|
| H A D | intel_hdcp.c | 17 #include <drm/display/drm_hdcp_helper.h> 48 struct intel_display *display = to_intel_display(encoder); in intel_hdcp_adjust_hdcp_line_rekeying() local 56 if (DISPLAY_VER(display) >= 30) { in intel_hdcp_adjust_hdcp_line_rekeying() 57 rekey_reg = TRANS_DDI_FUNC_CTL(display, hdcp->cpu_transcoder); in intel_hdcp_adjust_hdcp_line_rekeying() 59 } else if (IS_DISPLAY_VERx100_STEP(display, 1401, STEP_B0, STEP_FOREVER) || in intel_hdcp_adjust_hdcp_line_rekeying() 60 IS_DISPLAY_VERx100_STEP(display, 2000, STEP_B0, STEP_FOREVER)) { in intel_hdcp_adjust_hdcp_line_rekeying() 61 rekey_reg = TRANS_DDI_FUNC_CTL(display, hdcp->cpu_transcoder); in intel_hdcp_adjust_hdcp_line_rekeying() 63 } else if (IS_DISPLAY_VERx100_STEP(display, 1400, STEP_D0, STEP_FOREVER)) { in intel_hdcp_adjust_hdcp_line_rekeying() 64 rekey_reg = CHICKEN_TRANS(display, hdcp->cpu_transcoder); in intel_hdcp_adjust_hdcp_line_rekeying() 69 intel_de_rmw(display, rekey_reg, rekey_bit, enable ? 0 : rekey_bit); in intel_hdcp_adjust_hdcp_line_rekeying() [all …]
|
| H A D | intel_ddi.c | 32 #include <drm/display/drm_dp_helper.h> 33 #include <drm/display/drm_scdc_helper.h> 119 static bool has_buf_trans_select(struct intel_display *display) in has_buf_trans_select() argument 121 return DISPLAY_VER(display) < 10 && !display->platform.broxton; in has_buf_trans_select() 124 static bool has_iboost(struct intel_display *display) in has_iboost() argument 126 return DISPLAY_VER(display) == 9 && !display->platform.broxton; in has_iboost() 137 struct intel_display *display = to_intel_display(encoder); in hsw_prepare_dp_ddi_buffers() local 144 if (drm_WARN_ON_ONCE(display->drm, !trans)) in hsw_prepare_dp_ddi_buffers() 148 if (has_iboost(display) && in hsw_prepare_dp_ddi_buffers() 153 intel_de_write(display, DDI_BUF_TRANS_LO(port, i), in hsw_prepare_dp_ddi_buffers() [all …]
|
| H A D | vlv_dsi_regs.h | 14 #define _MIPI_MMIO_BASE(display) ((display)->dsi.mmio_base) argument 97 #define MIPI_DEVICE_READY(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_DEVICE_R… argument 107 #define MIPI_INTR_STAT(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_INTR_STAT,… argument 110 #define MIPI_INTR_EN(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_INTR_EN, _MI… argument 146 #define MIPI_DSI_FUNC_PRG(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_DSI_FUNC… argument 169 #define MIPI_HS_TX_TIMEOUT(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_HS_TX_T… argument 174 #define MIPI_LP_RX_TIMEOUT(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_LP_RX_T… argument 179 #define MIPI_TURN_AROUND_TIMEOUT(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_T… argument 184 #define MIPI_DEVICE_RESET_TIMER(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_DE… argument 189 #define MIPI_DPI_RESOLUTION(display, port) _MMIO_MIPI(_MIPI_MMIO_BASE(display), port, _MIPIA_DPI_RE… argument [all …]
|
| H A D | intel_psr.c | 65 * Since Haswell Display controller supports Panel Self-Refresh on display 67 * spec in eDP1.3. PSR feature allows the display to go to lower standby states 68 * when system is idle but display is on as it eliminates display refresh 70 * display is unchanged. 114 * When unmasked (nearly) all display register writes (eg. even 269 struct intel_display *display = to_intel_display(intel_dp); in panel_replay_global_enabled() local 272 display->params.enable_panel_replay; in panel_replay_global_enabled() 277 struct intel_display *display = to_intel_display(intel_dp); in psr_irq_psr_error_bit_get() local 279 return DISPLAY_VER(display) >= 12 ? TGL_PSR_ERROR : in psr_irq_psr_error_bit_get() 285 struct intel_display *display = to_intel_display(intel_dp); in psr_irq_post_exit_bit_get() local [all …]
|
| H A D | intel_bios.c | 31 #include <drm/display/drm_dp_helper.h> 32 #include <drm/display/drm_dsc_helper.h> 54 * through other means. The configuration is mostly related to display 73 struct intel_display *display; member 152 bdb_find_section(struct intel_display *display, in bdb_find_section() argument 157 list_for_each_entry(entry, &display->vbt.bdb_blocks, node) { in bdb_find_section() 207 static size_t lfp_data_min_size(struct intel_display *display) in lfp_data_min_size() argument 212 ptrs = bdb_find_section(display, BDB_LFP_DATA_PTRS); in lfp_data_min_size() 367 static void *generate_lfp_data_ptrs(struct intel_display *display, in generate_lfp_data_ptrs() argument 381 if (display->vbt.version < 155) in generate_lfp_data_ptrs() [all …]
|
| H A D | intel_hdcp_gsc_message.c | 23 struct intel_display *display; in intel_hdcp_gsc_initiate_session() local 29 display = to_intel_display(dev); in intel_hdcp_gsc_initiate_session() 30 if (!display) { in intel_hdcp_gsc_initiate_session() 34 gsc_context = display->hdcp.gsc_context; in intel_hdcp_gsc_initiate_session() 47 byte = intel_parent_hdcp_gsc_msg_send(display, gsc_context, in intel_hdcp_gsc_initiate_session() 51 drm_dbg_kms(display->drm, "intel_hdcp_gsc_msg_send failed. %zd\n", byte); in intel_hdcp_gsc_initiate_session() 56 drm_dbg_kms(display->drm, "FW cmd 0x%08X Failed. Status: 0x%X\n", in intel_hdcp_gsc_initiate_session() 81 struct intel_display *display; in intel_hdcp_gsc_verify_receiver_cert_prepare_km() local 87 display = to_intel_display(dev); in intel_hdcp_gsc_verify_receiver_cert_prepare_km() 88 if (!display) { in intel_hdcp_gsc_verify_receiver_cert_prepare_km() [all …]
|
| H A D | skl_watermark.c | 60 static void skl_sagv_disable(struct intel_display *display); 77 u8 intel_enabled_dbuf_slices_mask(struct intel_display *display) in intel_enabled_dbuf_slices_mask() argument 82 for_each_dbuf_slice(display, slice) { in intel_enabled_dbuf_slices_mask() 83 if (intel_de_read(display, DBUF_CTL_S(slice)) & DBUF_POWER_STATE) in intel_enabled_dbuf_slices_mask() 94 static bool skl_needs_memory_bw_wa(struct intel_display *display) in skl_needs_memory_bw_wa() argument 96 return DISPLAY_VER(display) == 9; in skl_needs_memory_bw_wa() 100 intel_has_sagv(struct intel_display *display) in intel_has_sagv() argument 102 return HAS_SAGV(display) && display->sagv.status != I915_SAGV_NOT_CONTROLLED; in intel_has_sagv() 106 intel_sagv_block_time(struct intel_display *display) in intel_sagv_block_time() argument 108 if (DISPLAY_VER(display) >= 14) { in intel_sagv_block_time() [all …]
|
| H A D | intel_opregion.h | 37 int intel_opregion_setup(struct intel_display *display); 38 void intel_opregion_cleanup(struct intel_display *display); 40 void intel_opregion_register(struct intel_display *display); 41 void intel_opregion_unregister(struct intel_display *display); 43 void intel_opregion_resume(struct intel_display *display); 44 void intel_opregion_suspend(struct intel_display *display, 47 bool intel_opregion_asle_present(struct intel_display *display); 48 void intel_opregion_asle_intr(struct intel_display *display); 51 int intel_opregion_notify_adapter(struct intel_display *display, 53 int intel_opregion_get_panel_type(struct intel_display *display); [all …]
|
| H A D | skl_universal_plane.c | 240 static u8 icl_nv12_y_plane_mask(struct intel_display *display) in icl_nv12_y_plane_mask() argument 242 if (DISPLAY_VER(display) >= 13 || HAS_D12_PLANE_MINIMIZATION(display)) in icl_nv12_y_plane_mask() 248 bool icl_is_nv12_y_plane(struct intel_display *display, in icl_is_nv12_y_plane() argument 251 return DISPLAY_VER(display) >= 11 && in icl_is_nv12_y_plane() 252 icl_nv12_y_plane_mask(display) & BIT(plane_id); in icl_is_nv12_y_plane() 260 bool icl_is_hdr_plane(struct intel_display *display, enum plane_id plane_id) in icl_is_hdr_plane() argument 262 return DISPLAY_VER(display) >= 11 && in icl_is_hdr_plane() 448 static bool skl_plane_has_fbc(struct intel_display *display, in skl_plane_has_fbc() argument 451 if ((DISPLAY_RUNTIME_INFO(display)->fbc_mask & BIT(fbc_id)) == 0) in skl_plane_has_fbc() 454 if (DISPLAY_VER(display) >= 20) in skl_plane_has_fbc() [all …]
|
| H A D | intel_hdmi.c | 36 #include <drm/display/drm_hdcp_helper.h> 37 #include <drm/display/drm_hdmi_helper.h> 38 #include <drm/display/drm_scdc_helper.h> 87 struct intel_display *display = to_intel_display(intel_hdmi); in assert_hdmi_port_disabled() local 90 enabled_bits = HAS_DDI(display) ? DDI_BUF_CTL_ENABLE : SDVO_ENABLE; in assert_hdmi_port_disabled() 92 drm_WARN(display->drm, in assert_hdmi_port_disabled() 93 intel_de_read(display, intel_hdmi->hdmi_reg) & enabled_bits, in assert_hdmi_port_disabled() 98 assert_hdmi_transcoder_func_disabled(struct intel_display *display, in assert_hdmi_transcoder_func_disabled() argument 101 drm_WARN(display->drm, in assert_hdmi_transcoder_func_disabled() 102 intel_de_read(display, TRANS_DDI_FUNC_CTL(display, cpu_transcoder)) & in assert_hdmi_transcoder_func_disabled() [all …]
|
| H A D | intel_encoder.c | 35 struct intel_display *display = to_intel_display(encoder); in intel_encoder_link_check_queue_work() local 37 mod_delayed_work(display->wq.unordered, in intel_encoder_link_check_queue_work() 41 void intel_encoder_unblock_all_hpds(struct intel_display *display) in intel_encoder_unblock_all_hpds() argument 45 if (!HAS_DISPLAY(display)) in intel_encoder_unblock_all_hpds() 48 for_each_intel_encoder(display->drm, encoder) in intel_encoder_unblock_all_hpds() 52 void intel_encoder_block_all_hpds(struct intel_display *display) in intel_encoder_block_all_hpds() argument 56 if (!HAS_DISPLAY(display)) in intel_encoder_block_all_hpds() 59 for_each_intel_encoder(display->drm, encoder) in intel_encoder_block_all_hpds() 63 void intel_encoder_suspend_all(struct intel_display *display) in intel_encoder_suspend_all() argument 67 if (!HAS_DISPLAY(display)) in intel_encoder_suspend_all() [all …]
|
| H A D | intel_dp.c | 42 #include <drm/display/drm_dp_helper.h> 43 #include <drm/display/drm_dp_tunnel.h> 44 #include <drm/display/drm_dsc_helper.h> 45 #include <drm/display/drm_hdmi_helper.h> 160 struct intel_display *display = to_intel_display(intel_dp); in max_dprx_rate() local 174 if (intel_dp_is_edp(intel_dp) && intel_has_quirk(display, QUIRK_EDP_LIMIT_RATE_HBR2)) in max_dprx_rate() 267 struct intel_display *display = to_intel_display(intel_dp); in intel_dp_set_sink_rates() local 277 drm_err(display->drm, in intel_dp_set_sink_rates() 292 struct intel_display *display = to_intel_display(intel_dp); in intel_dp_set_max_sink_lane_count() local 306 drm_err(display->drm, in intel_dp_set_max_sink_lane_count() [all …]
|
| H A D | intel_lt_phy.c | 992 struct intel_display *display = to_intel_display(encoder); in intel_lt_phy_clear_status_p2p() local 994 intel_de_rmw(display, in intel_lt_phy_clear_status_p2p() 1000 assert_dc_off(struct intel_display *display) in assert_dc_off() argument 1004 enabled = intel_display_power_is_enabled(display, POWER_DOMAIN_DC_OFF); in assert_dc_off() 1005 drm_WARN_ON(display->drm, !enabled); in assert_dc_off() 1013 struct intel_display *display = to_intel_display(encoder); in __intel_lt_phy_p2p_write_once() local 1019 if (intel_de_wait_for_clear_ms(display, XELPDP_PORT_M2P_MSGBUS_CTL(display, port, lane), in __intel_lt_phy_p2p_write_once() 1022 drm_dbg_kms(display->drm, in __intel_lt_phy_p2p_write_once() 1029 intel_de_rmw(display, XELPDP_PORT_P2M_MSGBUS_STATUS(display, port, lane), 0, 0); in __intel_lt_phy_p2p_write_once() 1031 intel_de_write(display, XELPDP_PORT_M2P_MSGBUS_CTL(display, port, lane), in __intel_lt_phy_p2p_write_once() [all …]
|
| /linux/Documentation/devicetree/bindings/display/ |
| H A D | allwinner,sun4i-a10-display-engine.yaml | 4 $id: http://devicetree.org/schemas/display/allwinner,sun4i-a10-display-engine.yaml# 7 title: Allwinner A10 Display Engine Pipeline 14 The display engine pipeline (and its entry point, since it can be 18 The Allwinner A10 Display pipeline is composed of several components 22 display pipeline, when there are multiple components of the same 52 - allwinner,sun4i-a10-display-engine 53 - allwinner,sun5i-a10s-display-engine 54 - allwinner,sun5i-a13-display-engine 55 - allwinner,sun6i-a31-display-engine 56 - allwinner,sun6i-a31s-display-engine [all …]
|
| H A D | xylon,logicvc-display.yaml | 5 $id: http://devicetree.org/schemas/display/xylon,logicvc-display.yaml# 8 title: Xylon LogiCVC display controller 14 The Xylon LogiCVC is a display controller that supports multiple layers. 32 - xylon,logicvc-3.02.a-display 33 - xylon,logicvc-4.01.a-display 67 xylon,display-interface: 79 description: Display output interface (C_DISPLAY_INTERFACE). 81 xylon,display-colorspace: 89 description: Display output colorspace (C_DISPLAY_COLOR_SPACE). 91 xylon,display-depth: [all …]
|
| /linux/Documentation/devicetree/bindings/auxdisplay/ |
| H A D | modtronix,lcd2s.yaml | 7 title: Modtronix engineering LCD2S Character LCD Display 13 The LCD2S is a Character LCD Display manufactured by Modtronix Engineering. 14 The display supports a serial I2C and SPI interface. The driver currently 24 I2C bus address of the display. 26 display-height-chars: 27 description: Height of the display, in character cells. 32 display-width-chars: 33 description: Width of the display, in character cells. 41 - display-height-chars 42 - display-width-chars [all …]
|
| H A D | hit,hd44780.yaml | 14 LCDs that can display one or more lines of text. It exposes an M6800 bus 54 display-height-chars: 55 description: Height of the display, in character cells, 60 display-width-chars: 61 description: Width of the display, in character cells. 69 display-width-chars for displays with more than 2 lines). 79 - display-height-chars 80 - display-width-chars 87 display-controller { 97 display-height-chars = <2>; [all …]
|
| /linux/Documentation/devicetree/bindings/display/tegra/ |
| H A D | nvidia,tegra186-display.yaml | 4 $id: http://devicetree.org/schemas/display/tegra/nvidia,tegra186-display.yaml# 7 title: NVIDIA Tegra186 (and later) Display Hub 15 pattern: "^display-hub@[0-9a-f]+$" 19 - nvidia,tegra186-display 20 - nvidia,tegra194-display 44 - description: display hub reset 69 "^display@[0-9a-f]+$": 77 const: nvidia,tegra186-display 82 - description: display core clock 83 - description: display stream compression clock [all …]
|
| /linux/rust/kernel/ |
| H A D | fmt.rs | 154 /// A copy of [`core::fmt::Display`] that allows us to implement it for foreign types. 156 /// Types should implement this trait rather than [`core::fmt::Display`]. Together with the 158 /// core) which do not implement [`core::fmt::Display`] directly. 161 pub trait Display { 162 /// Same as [`core::fmt::Display::fmt`]. 166 impl<T: ?Sized + Display> Display for &T { 168 Display::fmt(*self, f) 172 impl<T: ?Sized + Display> core::fmt::Display fo 40 pub trait Display { global() interface 45 impl<T: ?Sized + Display> Display for &T { global() impl [all...] |
| /linux/Documentation/devicetree/bindings/display/sprd/ |
| H A D | sprd,display-subsystem.yaml | 4 $id: http://devicetree.org/schemas/display/sprd/sprd,display-subsystem.yaml# 14 DPU devices or other display interface nodes that comprise the 17 Unisoc's display pipeline have several components as below description, 18 multi display controllers and corresponding physical interfaces. 19 For different display scenarios, dpu0 and dpu1 maybe binding to different 23 dpu0 and dpu1 both binding to DSI for dual mipi-dsi display; 24 dpu0 binding to DSI for primary display, and dpu1 binding to DP for external display; 44 const: sprd,display-subsystem 51 Should contain a list of phandles pointing to display interface port 62 display-subsystem { [all …]
|
| /linux/include/video/ |
| H A D | s1d13xxxfb.h | 44 #define S1DREG_LCD_DISP_HWIDTH 0x0032 /* LCD Horizontal Display Width Register: ((val)+1)*8)=pix/l… 45 #define S1DREG_LCD_NDISP_HPER 0x0034 /* LCD Horizontal Non-Display Period Register: ((val)+1)*8)=N… 48 #define S1DREG_LCD_DISP_VHEIGHT0 0x0038 /* LCD Vertical Display Height Register 0 */ 49 #define S1DREG_LCD_DISP_VHEIGHT1 0x0039 /* LCD Vertical Display Height Register 1 */ 50 #define S1DREG_LCD_NDISP_VPER 0x003A /* LCD Vertical Non-Display Period Register: (val)+1=NDlines … 53 #define S1DREG_LCD_DISP_MODE 0x0040 /* LCD Display Mode Register */ 55 #define S1DREG_LCD_DISP_START0 0x0042 /* LCD Display Start Address Register 0 */ 56 #define S1DREG_LCD_DISP_START1 0x0043 /* LCD Display Start Address Register 1 */ 57 #define S1DREG_LCD_DISP_START2 0x0044 /* LCD Display Start Address Register 2 */ 61 #define S1DREG_LCD_DISP_FIFO_HTC 0x004A /* LCD Display FIFO High Threshold Control Register */ [all …]
|
| /linux/drivers/auxdisplay/ |
| H A D | line-display.c | 3 * Character line display core support 33 #include "line-display.h" 119 * linedisp_scroll() - scroll the display by a character 122 * Scroll the current message along the display by one character, rearming the 141 /* update the display */ in linedisp_scroll() 155 * @msg: the message to display 158 * Display a new message @msg on the display. @msg can be longer than the 159 * number of characters the display can display, in which case it will begin 160 * scrolling across the display. 180 /* Clear the display */ in linedisp_display() [all …]
|