Home
last modified time | relevance | path

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

123456789

/openbmc/linux/drivers/gpu/drm/rockchip/
H A 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"
28 static inline struct cdn_dp_device *connector_to_dp(struct drm_connector *connector) in connector_to_dp() argument
30 return container_of(connector, struct cdn_dp_device, connector); in connector_to_dp()
61 { .compatible = "rockchip,rk3399-cdn-dp",
68 static int cdn_dp_grf_write(struct cdn_dp_device *dp, in cdn_dp_grf_write() argument
73 ret = clk_prepare_enable(dp->grf_clk); in cdn_dp_grf_write()
[all …]
H A 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>
44 * struct rockchip_dp_chip_data - splite the grf setting of kind of chips
86 static int rockchip_dp_pre_init(struct rockchip_dp_device *dp) in rockchip_dp_pre_init() argument
88 reset_control_assert(dp->rst); in rockchip_dp_pre_init()
90 reset_control_deassert(dp->rst); in rockchip_dp_pre_init()
97 struct rockchip_dp_device *dp = pdata_encoder_to_dp(plat_data); in rockchip_dp_poweron_start() local
[all …]
/openbmc/linux/drivers/gpu/drm/bridge/analogix/
H A Danalogix_dp_core.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Analogix DP (Display Port) core interface driver.
44 static int analogix_dp_init_dp(struct analogix_dp_device *dp) in analogix_dp_init_dp() argument
48 analogix_dp_reset(dp); in analogix_dp_init_dp()
50 analogix_dp_swreset(dp); in analogix_dp_init_dp()
52 analogix_dp_init_analog_param(dp); in analogix_dp_init_dp()
53 analogix_dp_init_interrupt(dp); in analogix_dp_init_dp()
56 analogix_dp_enable_sw_function(dp); in analogix_dp_init_dp()
58 analogix_dp_config_interrupt(dp); in analogix_dp_init_dp()
59 ret = analogix_dp_init_analog_func(dp); in analogix_dp_init_dp()
[all …]
/openbmc/linux/drivers/gpu/drm/nouveau/
H A Dnouveau_dp.c34 MODULE_PARM_DESC(mst, "Enable DisplayPort multi-stream (default: enabled)");
39 nouveau_dp_has_sink_count(struct drm_connector *connector, in nouveau_dp_has_sink_count() argument
42 return drm_dp_read_sink_count_cap(connector, outp->dp.dpcd, &outp->dp.desc); in nouveau_dp_has_sink_count()
49 struct drm_connector *connector = &nv_connector->base; in nouveau_dp_probe_dpcd() local
50 struct drm_dp_aux *aux = &nv_connector->aux; in nouveau_dp_probe_dpcd()
54 u8 *dpcd = outp->dp.dpcd; in nouveau_dp_probe_dpcd()
60 ret = drm_dp_read_desc(aux, &outp->dp.desc, drm_dp_is_branch(dpcd)); in nouveau_dp_probe_dpcd()
65 mstm = outp->dp.mstm; in nouveau_dp_probe_dpcd()
67 mstm->can_mst = drm_dp_read_mst_cap(aux, dpcd); in nouveau_dp_probe_dpcd()
70 if (nouveau_dp_has_sink_count(connector, outp)) { in nouveau_dp_probe_dpcd()
[all …]
/openbmc/linux/drivers/gpu/drm/exynos/
H A Dexynos_dp.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Samsung SoC DP (Display Port) interface driver.
38 struct drm_connector *connector; member
51 struct exynos_dp_device *dp = to_dp(plat_data); in exynos_dp_crtc_clock_enable() local
52 struct drm_encoder *encoder = &dp->encoder; in exynos_dp_crtc_clock_enable()
54 if (!encoder->crtc) in exynos_dp_crtc_clock_enable()
55 return -EPERM; in exynos_dp_crtc_clock_enable()
57 exynos_drm_pipe_clk_enable(to_exynos_crtc(encoder->crtc), enable); in exynos_dp_crtc_clock_enable()
73 struct drm_connector *connector) in exynos_dp_get_modes() argument
75 struct exynos_dp_device *dp = to_dp(plat_data); in exynos_dp_get_modes() local
[all …]
/openbmc/linux/drivers/gpu/drm/msm/dp/
H A Ddp_drm.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
17 * dp_bridge_detect - callback to determine if connector is connected
23 struct msm_dp *dp; in dp_bridge_detect() local
25 dp = to_dp_bridge(bridge)->dp_display; in dp_bridge_detect()
27 drm_dbg_dp(dp->drm_dev, "is_connected = %s\n", in dp_bridge_detect()
28 (dp->is_connected) ? "true" : "false"); in dp_bridge_detect()
30 return (dp->is_connected) ? connector_status_connected : in dp_bridge_detect()
39 struct msm_dp *dp; in dp_bridge_atomic_check() local
41 dp = to_dp_bridge(bridge)->dp_display; in dp_bridge_atomic_check()
[all …]
H A Ddp_display.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
32 MODULE_PARM_DESC(psr_enabled, "enable PSR for eDP and DP displays");
180 { .compatible = "qcom,sc7180-dp", .data = &sc7180_dp_descs },
181 { .compatible = "qcom,sc7280-dp", .data = &sc7280_dp_descs },
182 { .compatible = "qcom,sc7280-edp", .data = &sc7280_dp_descs },
183 { .compatible = "qcom,sc8180x-dp", .data = &sc8180x_dp_descs },
184 { .compatible = "qcom,sc8180x-edp", .data = &sc8180x_dp_descs },
185 { .compatible = "qcom,sc8280xp-dp", .data = &sc8280xp_dp_descs },
186 { .compatible = "qcom,sc8280xp-edp", .data = &sc8280xp_edp_descs },
[all …]
/openbmc/linux/drivers/gpu/drm/i915/display/
H A Dintel_dp_hdcp.c1 /* SPDX-License-Identifier: MIT */
43 #define C (hdcp->cp_irq_count_cached != atomic_read(&hdcp->cp_irq_count)) in intel_dp_hdcp_wait_for_cp_irq()
44 ret = wait_event_interruptible_timeout(hdcp->cp_irq_queue, C, in intel_dp_hdcp_wait_for_cp_irq()
55 struct drm_i915_private *i915 = to_i915(dig_port->base.base.dev); in intel_dp_hdcp_write_an_aksv()
60 dpcd_ret = drm_dp_dpcd_write(&dig_port->dp.aux, DP_AUX_HDCP_AN, in intel_dp_hdcp_write_an_aksv()
63 drm_dbg_kms(&i915->drm, in intel_dp_hdcp_write_an_aksv()
64 "Failed to write An over DP/AUX (%zd)\n", in intel_dp_hdcp_write_an_aksv()
66 return dpcd_ret >= 0 ? -EIO : dpcd_ret; in intel_dp_hdcp_write_an_aksv()
70 * Since Aksv is Oh-So-Secret, we can't access it in software. So we in intel_dp_hdcp_write_an_aksv()
71 * send an empty buffer of the correct length through the DP helpers. On in intel_dp_hdcp_write_an_aksv()
[all …]
H A Dintel_dp_mst.c56 int symbol_clock = crtc_state->port_clock / 32; in intel_dp_mst_check_constraints()
58 if (output_bpp * adjusted_mode->crtc_clock >= in intel_dp_mst_check_constraints()
60 drm_dbg_kms(&i915->drm, "UHBR check failed(required bw %d available %d)\n", in intel_dp_mst_check_constraints()
61 output_bpp * adjusted_mode->crtc_clock, symbol_clock * 72); in intel_dp_mst_check_constraints()
62 return -EINVAL; in intel_dp_mst_check_constraints()
78 struct drm_atomic_state *state = crtc_state->uapi.state; in intel_dp_mst_find_vcpi_slots_for_bpp()
80 struct intel_dp *intel_dp = &intel_mst->primary->dp; in intel_dp_mst_find_vcpi_slots_for_bpp()
82 struct intel_connector *connector = in intel_dp_mst_find_vcpi_slots_for_bpp() local
83 to_intel_connector(conn_state->connector); in intel_dp_mst_find_vcpi_slots_for_bpp()
84 struct drm_i915_private *i915 = to_i915(connector->base.dev); in intel_dp_mst_find_vcpi_slots_for_bpp()
[all …]
H A Dintel_display_types.h3 * Copyright (c) 2007-2008 Intel Corporation
47 #include <media/cec-notifier.h>
69 /* these are outputs from the chip - integrated only
87 HDMI_AUDIO_OFF_DVI = -2, /* no aux data for HDMI-DVI converter */
103 * create the DMA scatter-gather list for each FB color plane. This sg
115 * in the rotated and remapped GTT view all no-CCS formats (up to 2
163 struct intel_connector *connector);
201 /* Read out the current hw state of this connector, returning true if
206 * state. This must be called _after_ display->get_pipe_config has
207 * pre-filled the pipe config. Note that intel_encoder->base.crtc must
[all …]
H A Dintel_dp.c83 /* DP DSC throughput values used for slice count calculations KPixels/s */
88 /* DP DSC FEC Overhead factor = 1/(0.972261) */
98 /* Constants for DP DSC configurations */
107 * intel_dp_is_edp - is the given port attached to an eDP panel (either CPU or PCH)
108 * @intel_dp: DP struct
110 * If a CPU or PCH DP output is attached to an eDP panel, this function
119 return dig_port->base.type == INTEL_OUTPUT_EDP; in intel_dp_is_edp()
127 return crtc_state->port_clock >= 1000000; in intel_dp_is_uhbr()
132 intel_dp->sink_rates[0] = 162000; in intel_dp_set_default_sink_rates()
133 intel_dp->num_sink_rates = 1; in intel_dp_set_default_sink_rates()
[all …]
H A Dintel_hotplug.c52 * intel_dp_hpd_pulse() via hooks, which handles DP short pulses and DP MST long
53 * pulses, with failures and non-MST long pulses triggering regular hotplug
54 * processing on the connector.
56 * The regular hotplug work function i915_hotplug_work_func() calls connector
57 * detect hooks, and, if connector status changes, triggers sending of hotplug
66 * while before being re-enabled. The intention is to mitigate issues raising
71 * seen when display port sink is connected, hence on platforms whose DP
74 * this is specific to DP sinks handled by this routine and any other display
80 * intel_hpd_pin_default - return default pin associated with certain port.
91 return HPD_PORT_A + port - PORT_A; in intel_hpd_pin_default()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/display/connector/
H A 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 …]
/openbmc/linux/drivers/gpu/drm/bridge/
H A 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 …]
H A Ddisplay-connector.c1 // SPDX-License-Identifier: GPL-2.0
9 #include <linux/media-bus-format.h>
39 return flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR ? 0 : -EINVAL; in display_connector_attach()
47 if (conn->hpd_gpio) { in display_connector_detect()
48 if (gpiod_get_value_cansleep(conn->hpd_gpio)) in display_connector_detect()
54 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc)) in display_connector_detect()
57 switch (conn->bridge.type) { in display_connector_detect()
74 * Composite and S-Video connectors have no other detection in display_connector_detect()
85 struct drm_connector *connector) in display_connector_get_edid() argument
89 return drm_get_edid(connector, conn->bridge.ddc); in display_connector_get_edid()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/amdgpu_dm/
H A Damdgpu_dm_debugfs.c64 /* parse_write_buffer_into_params - Helper function to parse debugfs write buffer into an array
91 return -EFAULT; in parse_write_buffer_into_params()
105 /* skip non-space*/ in parse_write_buffer_into_params()
144 * get/ set DP configuration: lane_count, link_rate, spread_spectrum
154 * debugfs is located at /sys/kernel/debug/dri/0/DP-x/link_settings
156 * --- to get dp configuration
158 * cat /sys/kernel/debug/dri/0/DP-x/link_settings
160 * It will list current, verified, reported, preferred dp configuration.
161 * current -- for current video mode
162 * verified --- maximum configuration which pass link training
[all …]
/openbmc/linux/drivers/gpu/drm/gma500/
H A Dcdv_intel_dp.c45 * struct i2c_algo_dp_aux_data - driver interface structure for i2c over dp
65 struct i2c_algo_dp_aux_data *algo_data = adapter->algo_data; in i2c_algo_dp_aux_transaction()
68 ret = (*algo_data->aux_ch)(adapter, mode, in i2c_algo_dp_aux_transaction()
85 struct i2c_algo_dp_aux_data *algo_data = adapter->algo_data; in i2c_algo_dp_aux_address()
92 algo_data->address = address; in i2c_algo_dp_aux_address()
93 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 * I2C link must be running or this returns -EIO
[all …]
/openbmc/linux/include/drm/bridge/
H A 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);
/openbmc/linux/include/drm/
H A Ddrm_connector.h54 DRM_FORCE_ON_DIGITAL, /* for DVI-I use digital connector */
58 * enum drm_connector_status - status for a &drm_connector
60 * This enum is used to track the connector status. There are no separate
65 * @connector_status_connected: The connector is definitely connected to
70 * @connector_status_disconnected: The connector isn't connected to a
71 * sink device which can be autodetect. For digital outputs like DP or
73 * nothing there. It is driver-dependent whether a connector with this
78 * @connector_status_unknown: The connector's status could not be
80 * flicker (like load-detection when the connector is in use), or when a
81 * hardware resource isn't available (like when load-detection needs a
[all …]
/openbmc/linux/drivers/gpu/drm/
H A Ddrm_connector.c51 * Hence they are reference-counted using drm_connector_get() and
56 * objects and initialized by setting the following fields. The connector is
58 * &struct drm_connector_funcs and a connector type, and then exposed to
62 * connectors to encoders 1:1, the connector should be attached at
67 * For connectors which are not fixed (like built-in panels) the driver needs to
75 * Global connector list for drm_connector_find_by_fwnode().
76 * Note drm_connector_[un]register() first take connector->lock and then
89 * Connector and encoder types.
94 { DRM_MODE_CONNECTOR_DVII, "DVI-I" },
95 { DRM_MODE_CONNECTOR_DVID, "DVI-D" },
[all …]
/openbmc/linux/drivers/gpu/drm/display/
H A 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 …]
/openbmc/linux/include/drm/display/
H A Ddrm_dp_mst_helper.h52 * struct drm_dp_mst_port - MST port
56 * @mcs: message capability status - DP 1.2 spec. Protected by
58 * @ddps: DisplayPort Device Plug Status - DP 1.2. Protected by
75 * @passthrough_aux: parent aux to which DSC pass-through requests should be
76 * sent, only set if DSC pass-through is possible.
79 * @connector: DRM connector this port is connected to. Protected by
89 * only the DP MST helpers should need to touch this
134 struct drm_connector *connector; member
138 * @cached_edid: for DP logical ports - make tiling work by ensuring
150 /* sideband msg header - not bit struct */
[all …]
H A Ddrm_dp_helper.h75 * struct drm_dp_vsc_sdp - drm DP VSC SDP
77 * This structure represents a DP VSC SDP of drm
78 * It is based on DP 1.4 spec [Table 2-116: VSC SDP Header Bytes] and
79 * [Table 2-117: VSC SDP Payload for DB16 through DB18]
81 * @sdp_type: secondary-data packet type
88 * @content_type: CTA-861-G defines content types and expected processing by a sink device
166 /* DP/eDP DSC support */
176 return dsc_dpcd[DP_DSC_SUPPORT - DP_DSC_SUPPORT] & in drm_dp_sink_supports_dsc()
183 return dsc_dpcd[DP_DSC_MAX_BITS_PER_PIXEL_LOW - DP_DSC_SUPPORT] | in drm_edp_dsc_sink_output_bpp()
184 ((dsc_dpcd[DP_DSC_MAX_BITS_PER_PIXEL_HI - DP_DSC_SUPPORT] & in drm_edp_dsc_sink_output_bpp()
[all …]
/openbmc/linux/arch/arm64/boot/dts/qcom/
H A Dsa8295p-adp.dts1 // SPDX-License-Identifier: BSD-3-Clause
7 /dts-v1/;
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
11 #include <dt-bindings/spmi/spmi.h>
14 #include "sa8540p-pmics.dtsi"
18 compatible = "qcom,sa8295p-adp", "qcom,sa8540p";
25 stdout-path = "serial0:115200n8";
28 dp2-connector {
29 compatible = "dp-connector";
[all …]
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_connectors.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
43 void amdgpu_connector_hotplug(struct drm_connector *connector) in amdgpu_connector_hotplug() argument
45 struct drm_device *dev = connector->dev; in amdgpu_connector_hotplug()
47 struct amdgpu_connector *amdgpu_connector = to_amdgpu_connector(connector); in amdgpu_connector_hotplug()
49 /* bail if the connector does not have hpd pin, e.g., in amdgpu_connector_hotplug()
52 if (amdgpu_connector->hpd.hpd == AMDGPU_HPD_NONE) in amdgpu_connector_hotplug()
55 amdgpu_display_hpd_set_polarity(adev, amdgpu_connector->hpd.hpd); in amdgpu_connector_hotplug()
57 /* if the connector is already off, don't turn it back on */ in amdgpu_connector_hotplug()
58 if (connector->dpms != DRM_MODE_DPMS_ON) in amdgpu_connector_hotplug()
61 /* just deal with DP (not eDP) here. */ in amdgpu_connector_hotplug()
[all …]

123456789