Home
last modified time | relevance | path

Searched +full:dp +full:- +full:connector (Results 1 – 25 of 176) sorted by relevance

12345678

/Linux-v5.15/drivers/gpu/drm/rockchip/
Dcdn-dp-core.c1 // SPDX-License-Identifier: GPL-2.0-only
4 * Author: Chris Zhong <zyw@rock-chips.com>
16 #include <sound/hdmi-codec.h>
25 #include "cdn-dp-core.h"
26 #include "cdn-dp-reg.h"
30 container_of(c, struct cdn_dp_device, connector)
56 { .compatible = "rockchip,rk3399-cdn-dp",
63 static int cdn_dp_grf_write(struct cdn_dp_device *dp, in cdn_dp_grf_write() argument
68 ret = clk_prepare_enable(dp->grf_clk); in cdn_dp_grf_write()
70 DRM_DEV_ERROR(dp->dev, "Failed to prepare_enable grf clock\n"); in cdn_dp_grf_write()
[all …]
Danalogix_dp-rockchip.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Rockchip SoC DP (Display Port) interface driver.
6 * Author: Andy Yan <andy.yan@rock-chips.com>
7 * Yakir Yang <ykk@rock-chips.com>
8 * Jeff Chen <jeff.chen@rock-chips.com>
46 * struct rockchip_dp_chip_data - splite the grf setting of kind of chips
76 static int rockchip_dp_pre_init(struct rockchip_dp_device *dp) in rockchip_dp_pre_init() argument
78 reset_control_assert(dp->rst); in rockchip_dp_pre_init()
80 reset_control_deassert(dp->rst); in rockchip_dp_pre_init()
87 struct rockchip_dp_device *dp = to_dp(plat_data); in rockchip_dp_poweron_start() local
[all …]
/Linux-v5.15/drivers/gpu/drm/nouveau/
Dnouveau_dp.c35 MODULE_PARM_DESC(mst, "Enable DisplayPort multi-stream (default: enabled)");
40 nouveau_dp_has_sink_count(struct drm_connector *connector, in nouveau_dp_has_sink_count() argument
43 return drm_dp_read_sink_count_cap(connector, outp->dp.dpcd, &outp->dp.desc); in nouveau_dp_has_sink_count()
50 struct drm_connector *connector = &nv_connector->base; in nouveau_dp_probe_dpcd() local
51 struct drm_dp_aux *aux = &nv_connector->aux; in nouveau_dp_probe_dpcd()
55 u8 *dpcd = outp->dp.dpcd; in nouveau_dp_probe_dpcd()
61 ret = drm_dp_read_desc(aux, &outp->dp.desc, drm_dp_is_branch(dpcd)); in nouveau_dp_probe_dpcd()
66 mstm = outp->dp.mstm; in nouveau_dp_probe_dpcd()
68 mstm->can_mst = drm_dp_read_mst_cap(aux, dpcd); in nouveau_dp_probe_dpcd()
71 if (nouveau_dp_has_sink_count(connector, outp)) { in nouveau_dp_probe_dpcd()
[all …]
/Linux-v5.15/drivers/gpu/drm/bridge/analogix/
Danalogix_dp_core.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Analogix DP (Display Port) core interface driver.
43 static int analogix_dp_init_dp(struct analogix_dp_device *dp) in analogix_dp_init_dp() argument
47 analogix_dp_reset(dp); in analogix_dp_init_dp()
49 analogix_dp_swreset(dp); in analogix_dp_init_dp()
51 analogix_dp_init_analog_param(dp); in analogix_dp_init_dp()
52 analogix_dp_init_interrupt(dp); in analogix_dp_init_dp()
55 analogix_dp_enable_sw_function(dp); in analogix_dp_init_dp()
57 analogix_dp_config_interrupt(dp); in analogix_dp_init_dp()
58 ret = analogix_dp_init_analog_func(dp); in analogix_dp_init_dp()
[all …]
/Linux-v5.15/drivers/gpu/drm/msm/dp/
Ddp_drm.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
21 * dp_connector_detect - callback to determine if connector is connected
22 * @conn: Pointer to drm connector structure
24 * Returns: Connector 'is connected' status
29 struct msm_dp *dp; in dp_connector_detect() local
31 dp = to_dp_connector(conn)->dp_display; in dp_connector_detect()
34 (dp->is_connected) ? "true" : "false"); in dp_connector_detect()
36 return (dp->is_connected) ? connector_status_connected : in dp_connector_detect()
41 * dp_connector_get_modes - callback to add drm modes via drm_mode_probed_add()
[all …]
Ddp_display.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
120 {.compatible = "qcom,sc7180-dp"},
131 spin_lock_irqsave(&dp_priv->event_lock, flag); in dp_add_event()
132 pndx = dp_priv->event_pndx + 1; in dp_add_event()
134 if (pndx == dp_priv->event_gndx) { in dp_add_event()
136 dp_priv->event_pndx, dp_priv->event_gndx); in dp_add_event()
137 spin_unlock_irqrestore(&dp_priv->event_lock, flag); in dp_add_event()
138 return -EPERM; in dp_add_event()
140 todo = &dp_priv->event_list[dp_priv->event_pndx++]; in dp_add_event()
[all …]
/Linux-v5.15/drivers/gpu/drm/exynos/
Dexynos_dp.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Samsung SoC DP (Display Port) interface driver.
37 struct drm_connector *connector; member
50 struct exynos_dp_device *dp = to_dp(plat_data); in exynos_dp_crtc_clock_enable() local
51 struct drm_encoder *encoder = &dp->encoder; in exynos_dp_crtc_clock_enable()
53 if (!encoder->crtc) in exynos_dp_crtc_clock_enable()
54 return -EPERM; in exynos_dp_crtc_clock_enable()
56 exynos_drm_pipe_clk_enable(to_exynos_crtc(encoder->crtc), enable); in exynos_dp_crtc_clock_enable()
72 struct drm_connector *connector) in exynos_dp_get_modes() argument
74 struct exynos_dp_device *dp = to_dp(plat_data); in exynos_dp_get_modes() local
[all …]
/Linux-v5.15/drivers/gpu/drm/i915/display/
Dintel_dp_hdcp.c1 /* SPDX-License-Identifier: MIT */
49 #define C (hdcp->cp_irq_count_cached != atomic_read(&hdcp->cp_irq_count)) in intel_dp_hdcp_wait_for_cp_irq()
50 ret = wait_event_interruptible_timeout(hdcp->cp_irq_queue, C, in intel_dp_hdcp_wait_for_cp_irq()
61 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_dp_hdcp_write_an_aksv()
66 dpcd_ret = drm_dp_dpcd_write(&dig_port->dp.aux, DP_AUX_HDCP_AN, in intel_dp_hdcp_write_an_aksv()
69 drm_dbg_kms(&i915->drm, in intel_dp_hdcp_write_an_aksv()
70 "Failed to write An over DP/AUX (%zd)\n", in intel_dp_hdcp_write_an_aksv()
72 return dpcd_ret >= 0 ? -EIO : dpcd_ret; in intel_dp_hdcp_write_an_aksv()
76 * Since Aksv is Oh-So-Secret, we can't access it in software. So we in intel_dp_hdcp_write_an_aksv()
77 * send an empty buffer of the correct length through the DP helpers. On in intel_dp_hdcp_write_an_aksv()
[all …]
Dintel_dp_mst.c52 struct drm_atomic_state *state = crtc_state->uapi.state; in intel_dp_mst_compute_link_config()
54 struct intel_dp *intel_dp = &intel_mst->primary->dp; in intel_dp_mst_compute_link_config()
55 struct intel_connector *connector = in intel_dp_mst_compute_link_config() local
56 to_intel_connector(conn_state->connector); in intel_dp_mst_compute_link_config()
57 struct drm_i915_private *i915 = to_i915(connector->base.dev); in intel_dp_mst_compute_link_config()
59 &crtc_state->hw.adjusted_mode; in intel_dp_mst_compute_link_config()
60 bool constant_n = drm_dp_has_quirk(&intel_dp->desc, DP_DPCD_QUIRK_CONSTANT_N); in intel_dp_mst_compute_link_config()
61 int bpp, slots = -EINVAL; in intel_dp_mst_compute_link_config()
63 crtc_state->lane_count = limits->max_lane_count; in intel_dp_mst_compute_link_config()
64 crtc_state->port_clock = limits->max_clock; in intel_dp_mst_compute_link_config()
[all …]
Dintel_display_types.h3 * Copyright (c) 2007-2008 Intel Corporation
45 #include <media/cec-notifier.h>
57 /* these are outputs from the chip - integrated only
75 HDMI_AUDIO_OFF_DVI = -2, /* no aux data for HDMI-DVI converter */
91 * create the DMA scatter-gather list for each FB color plane. This sg
103 * in the rotated and remapped GTT view all no-CCS formats (up to 2
171 struct intel_connector *connector);
219 /* Read out the current hw state of this connector, returning true if
224 * state. This must be called _after_ display->get_pipe_config has
225 * pre-filled the pipe config. Note that intel_encoder->base.crtc must
[all …]
Dintel_hotplug.c50 * intel_dp_hpd_pulse() via hooks, which handles DP short pulses and DP MST long
51 * pulses, with failures and non-MST long pulses triggering regular hotplug
52 * processing on the connector.
54 * The regular hotplug work function i915_hotplug_work_func() calls connector
55 * detect hooks, and, if connector status changes, triggers sending of hotplug
64 * while before being re-enabled. The intention is to mitigate issues raising
69 * seen when display port sink is connected, hence on platforms whose DP
72 * this is specific to DP sinks handled by this routine and any other display
78 * intel_hpd_pin_default - return default pin associated with certain port.
89 return HPD_PORT_A + port - PORT_A; in intel_hpd_pin_default()
[all …]
Dintel_dp.c74 /* DP DSC throughput values used for slice count calculations KPixels/s */
79 /* DP DSC FEC Overhead factor = 1/(0.972261) */
89 /* Constants for DP DSC configurations */
98 * intel_dp_is_edp - is the given port attached to an eDP panel (either CPU or PCH)
99 * @intel_dp: DP struct
101 * If a CPU or PCH DP output is attached to an eDP panel, this function
108 return dig_port->base.type == INTEL_OUTPUT_EDP; in intel_dp_is_edp()
123 if (drm_dp_has_quirk(&intel_dp->desc, DP_DPCD_QUIRK_CAN_DO_MAX_LINK_RATE_3_24_GBPS)) { in intel_dp_set_sink_rates()
127 memcpy(intel_dp->sink_rates, quirk_rates, sizeof(quirk_rates)); in intel_dp_set_sink_rates()
128 intel_dp->num_sink_rates = ARRAY_SIZE(quirk_rates); in intel_dp_set_sink_rates()
[all …]
/Linux-v5.15/drivers/gpu/drm/xlnx/
Dzynqmp_dp.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2017 - 2020 Xilinx, Inc.
8 * - Hyun Woo Kwon <hyun.kwon@xilinx.com>
9 * - Laurent Pinchart <laurent.pinchart@ideasonboard.com>
40 MODULE_PARM_DESC(aux_timeout_ms, "DP aux timeout value in msec (default: 50)");
47 MODULE_PARM_DESC(power_on_delay_ms, "DP power on delay in msec (default: 4)");
242 * struct zynqmp_dp_link_config - Common link config between source and sink
252 * struct zynqmp_dp_mode - Configured mode of DisplayPort
266 * struct zynqmp_dp_config - Configuration of DisplayPort from DTS
267 * @misc0: misc0 configuration (per DP v1.2 spec)
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/display/connector/
Ddp-connector.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/display/connector/dp-connector.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: DisplayPort Connector
10 - Tomi Valkeinen <tomi.valkeinen@ti.com>
14 const: dp-connector
20 - full-size
21 - mini
23 hpd-gpios:
[all …]
/Linux-v5.15/drivers/gpu/drm/bridge/
Dmegachips-stdpxxxx-ge-b850v3-fw.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Driver for MegaChips STDP4028 with GE B850v3 firmware (LVDS-DP)
4 * Driver for MegaChips STDP2690 with GE B850v3 firmware (DP-DP++)
10 * This driver creates a drm_bridge and a drm_connector for the LVDS to DP++
12 * signal pipeline: a STDP4028(LVDS to DP) and a STDP2690(DP to DP++). The
19 * Host -> LVDS|--(STDP4028)--|DP -> DP|--(STDP2690)--|DP++ -> Video output
60 struct drm_connector connector; member
70 struct i2c_adapter *adapter = client->adapter; in stdp2690_get_edid()
77 .addr = client->addr, in stdp2690_get_edid()
82 .addr = client->addr, in stdp2690_get_edid()
[all …]
Ddisplay-connector.c1 // SPDX-License-Identifier: GPL-2.0
37 return flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR ? 0 : -EINVAL; in display_connector_attach()
45 if (conn->hpd_gpio) { in display_connector_detect()
46 if (gpiod_get_value_cansleep(conn->hpd_gpio)) in display_connector_detect()
52 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc)) in display_connector_detect()
55 switch (conn->bridge.type) { in display_connector_detect()
72 * Composite and S-Video connectors have no other detection in display_connector_detect()
83 struct drm_connector *connector) in display_connector_get_edid() argument
87 return drm_get_edid(connector, conn->bridge.ddc); in display_connector_get_edid()
99 struct drm_bridge *bridge = &conn->bridge; in display_connector_hpd_irq()
[all …]
/Linux-v5.15/drivers/gpu/drm/amd/display/amdgpu_dm/
Damdgpu_dm_debugfs.c57 /* parse_write_buffer_into_params - Helper function to parse debugfs write buffer into an array
86 return -EINVAL; in parse_write_buffer_into_params()
100 /* skip non-space*/ in parse_write_buffer_into_params()
139 * get/ set DP configuration: lane_count, link_rate, spread_spectrum
149 * debugfs is located at /sys/kernel/debug/dri/0/DP-x/link_settings
151 * --- to get dp configuration
153 * cat /sys/kernel/debug/dri/0/DP-x/link_settings
155 * It will list current, verified, reported, preferred dp configuration.
156 * current -- for current video mode
157 * verified --- maximum configuration which pass link training
[all …]
/Linux-v5.15/drivers/gpu/drm/gma500/
Dcdv_intel_dp.c43 * struct i2c_algo_dp_aux_data - driver interface structure for i2c over dp
63 struct i2c_algo_dp_aux_data *algo_data = adapter->algo_data; in i2c_algo_dp_aux_transaction()
66 ret = (*algo_data->aux_ch)(adapter, mode, in i2c_algo_dp_aux_transaction()
83 struct i2c_algo_dp_aux_data *algo_data = adapter->algo_data; in i2c_algo_dp_aux_address()
91 algo_data->address = address; in i2c_algo_dp_aux_address()
92 algo_data->running = true; in i2c_algo_dp_aux_address()
104 struct i2c_algo_dp_aux_data *algo_data = adapter->algo_data; in i2c_algo_dp_aux_stop()
111 if (algo_data->running) { in i2c_algo_dp_aux_stop()
113 algo_data->running = false; in i2c_algo_dp_aux_stop()
119 * the I2C link must be running or this returns -EIO
[all …]
/Linux-v5.15/include/drm/bridge/
Danalogix_dp.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Analogix DP (Display Port) Core interface driver.
29 struct drm_connector *connector; member
41 int analogix_dp_resume(struct analogix_dp_device *dp);
42 int analogix_dp_suspend(struct analogix_dp_device *dp);
46 int analogix_dp_bind(struct analogix_dp_device *dp, struct drm_device *drm_dev);
47 void analogix_dp_unbind(struct analogix_dp_device *dp);
48 void analogix_dp_remove(struct analogix_dp_device *dp);
50 int analogix_dp_start_crc(struct drm_connector *connector);
51 int analogix_dp_stop_crc(struct drm_connector *connector);
/Linux-v5.15/drivers/gpu/drm/
Ddrm_connector.c45 * Hence they are reference-counted using drm_connector_get() and
50 * objects and initialized by setting the following fields. The connector is
52 * &struct drm_connector_funcs and a connector type, and then exposed to
56 * connectors to encoders 1:1, the connector should be attached at
61 * For connectors which are not fixed (like built-in panels) the driver needs to
75 * Connector and encoder types.
80 { DRM_MODE_CONNECTOR_DVII, "DVI-I" },
81 { DRM_MODE_CONNECTOR_DVID, "DVI-D" },
82 { DRM_MODE_CONNECTOR_DVIA, "DVI-A" },
88 { DRM_MODE_CONNECTOR_DisplayPort, "DP" },
[all …]
Ddrm_dp_cec.c1 // SPDX-License-Identifier: GPL-2.0
3 * DisplayPort CEC-Tunneling-over-AUX support
19 * Unfortunately it turns out that we have a chicken-and-egg situation
20 * here. Quite a few active (mini-)DP-to-HDMI or USB-C-to-HDMI adapters
21 * have a converter chip that supports CEC-Tunneling-over-AUX (usually the
23 * useless. Note that MegaChips 2900-based adapters appear to have good
41 * https://hverkuil.home.xs4all.nl/cec-status.txt
54 * DOC: dp cec helpers
56 * These functions take care of supporting the CEC-Tunneling-over-AUX
57 * feature of DisplayPort-to-HDMI adapters.
[all …]
/Linux-v5.15/include/drm/
Ddrm_dp_mst_helper.h52 * struct drm_dp_vcpi - Virtual Channel Payload Identifier
66 * struct drm_dp_mst_port - MST port
70 * @mcs: message capability status - DP 1.2 spec. Protected by
72 * @ddps: DisplayPort Device Plug Status - DP 1.2. Protected by
91 * @connector: DRM connector this port is connected to. Protected by
101 * only the DP MST helpers should need to touch this
146 struct drm_connector *connector; member
150 * @cached_edid: for DP logical ports - make tiling work by ensuring
155 * @has_audio: Tracks whether the sink connector to this port is
156 * audio-capable.
[all …]
/Linux-v5.15/drivers/gpu/drm/amd/amdgpu/
Damdgpu_connectors.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
42 void amdgpu_connector_hotplug(struct drm_connector *connector) in amdgpu_connector_hotplug() argument
44 struct drm_device *dev = connector->dev; in amdgpu_connector_hotplug()
46 struct amdgpu_connector *amdgpu_connector = to_amdgpu_connector(connector); in amdgpu_connector_hotplug()
48 /* bail if the connector does not have hpd pin, e.g., in amdgpu_connector_hotplug()
51 if (amdgpu_connector->hpd.hpd == AMDGPU_HPD_NONE) in amdgpu_connector_hotplug()
54 amdgpu_display_hpd_set_polarity(adev, amdgpu_connector->hpd.hpd); in amdgpu_connector_hotplug()
56 /* if the connector is already off, don't turn it back on */ in amdgpu_connector_hotplug()
57 if (connector->dpms != DRM_MODE_DPMS_ON) in amdgpu_connector_hotplug()
60 /* just deal with DP (not eDP) here. */ in amdgpu_connector_hotplug()
[all …]
/Linux-v5.15/drivers/gpu/drm/bridge/cadence/
Dcdns-mhdp8546-core.c1 // SPDX-License-Identifier: GPL-2.0
3 * Cadence MHDP8546 DP bridge driver.
7 * Authors: Quentin Schulz <quentin.schulz@free-electrons.com>
14 * - Implement optimized mailbox communication using mailbox interrupts
15 * - Add support for power management
16 * - Add support for features like audio, MST and fast link training
17 * - Implement request_fw_cancel to handle HW_STATE
18 * - Fix asynchronous loading of firmware implementation
19 * - Add DRM helper function for cdns_mhdp_lower_link_rate
33 #include <linux/phy/phy-dp.h>
[all …]
/Linux-v5.15/drivers/gpu/drm/amd/display/dc/dce/
Ddce_link_encoder.c2 * Copyright 2012-15 Advanced Micro Devices, Inc.
61 enc110->base.ctx
63 enc110->base.ctx->logger
66 (enc110->link_regs->reg)
69 (enc110->aux_regs->reg)
72 (enc110->hpd_regs->reg)
79 * ASIC-dependent, actual values for register programming
95 (reg + enc110->offsets.dig)
98 (reg + enc110->offsets.dp)
131 struct dc_bios *bp = enc110->base.ctx->dc_bios; in link_transmitter_control()
[all …]

12345678