Home
last modified time | relevance | path

Searched +full:needs +full:- +full:hpd (Results 1 – 25 of 91) sorted by relevance

1234

/openbmc/linux/Documentation/devicetree/bindings/media/cec/
H A Dcec-common.yaml1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/media/cec/cec-common.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Hans Verkuil <hverkuil@xs4all.nl>
14 pattern: "^cec(@[0-9a-f]+|-[0-9]+)?$"
16 hdmi-phandle:
21 needs-hpd:
24 The CEC support is only available when the HPD is high. Some boards only
25 let the CEC pin through if the HPD is high, for example if there is a
[all …]
H A Dsamsung,s5p-cec.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/media/cec/samsung,s5p-cec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Krzysztof Kozlowski <krzk@kernel.org>
11 - Marek Szyprowski <m.szyprowski@samsung.com>
14 - $ref: cec-common.yaml#
18 const: samsung,s5p-cec
23 clock-names:
25 - const: hdmicec
[all …]
/openbmc/linux/Documentation/admin-guide/media/
H A Dcec.rst1 .. SPDX-License-Identifier: GPL-2.0
12 - Exynos4
13 - Exynos5
14 - STIH4xx HDMI CEC
15 - V4L2 adv7511 (same HW, but a different driver from the drm adv7511)
16 - stm32
17 - Allwinner A10 (sun4i)
18 - Raspberry Pi
19 - dw-hdmi (Synopsis IP)
20 - amlogic (meson ao-cec and ao-cec-g12a)
[all …]
/openbmc/linux/drivers/gpu/drm/bridge/
H A Dti-tpd12s015.c1 // SPDX-License-Identifier: GPL-2.0
7 * Based on the omapdrm-specific encoder-opa362 driver
47 return -EINVAL; in tpd12s015_attach()
49 ret = drm_bridge_attach(bridge->encoder, tpd->next_bridge, in tpd12s015_attach()
54 gpiod_set_value_cansleep(tpd->ls_oe_gpio, 1); in tpd12s015_attach()
56 /* DC-DC converter needs at max 300us to get to 90% of 5V. */ in tpd12s015_attach()
66 gpiod_set_value_cansleep(tpd->ls_oe_gpio, 0); in tpd12s015_detach()
73 if (gpiod_get_value_cansleep(tpd->hpd_gpio)) in tpd12s015_detect()
83 gpiod_set_value_cansleep(tpd->ct_cp_hpd_gpio, 1); in tpd12s015_hpd_enable()
90 gpiod_set_value_cansleep(tpd->ct_cp_hpd_gpio, 0); in tpd12s015_hpd_disable()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/dc/
H A Ddc.h2 * Copyright 2012-2023 Advanced Micro Devices, Inc.
99 // for example, 1080p -> 8K is 4.0, or 4000 raw value
107 // for example, 8K -> 1080p is 0.25, or 250 raw value
119 * DOC: color-management-caps
124 * abstracted HW. DCE 5-12 had almost no important changes, but starting with
131 * struct rom_curve_caps - predefined transfer function caps for degamma and regamma
147 * struct dpp_color_caps - color pipeline capabilities for display pipe and
152 * just plain 256-entry lookup
161 * @dgam_rom_for_yuv: pre-defined degamma LUT for YUV planes
162 * @dgam_rom_caps: pre-definied curve caps for degamma 1D LUT
[all …]
/openbmc/linux/drivers/gpu/drm/meson/
H A Dmeson_dw_hdmi.c1 // SPDX-License-Identifier: GPL-2.0-or-later
32 #define DRIVER_NAME "meson-dw-hdmi"
33 #define DRIVER_DESC "Amlogic Meson HDMI-TX DRM driver"
40 * - A Synopsys DesignWare HDMI Controller IP
41 * - A TOP control block controlling the Clocks and PHY
42 * - A custom HDMI PHY in order convert video to TMDS signal
47 * | HDMI TOP |<= HPD
55 * The HDMI TOP block only supports HPD sensing.
79 * - HPD Rise & Fall interrupt
80 * - HDMI Controller Interrupt
[all …]
/openbmc/linux/Documentation/userspace-api/media/cec/
H A Dcec-ioc-adap-g-caps.rst1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
13 CEC_ADAP_G_CAPS - Query device capabilities
42 .. flat-table:: struct cec_caps
43 :header-rows: 0
44 :stub-columns: 0
47 * - char
48 - ``driver[32]``
49 - The name of the cec adapter driver.
50 * - char
51 - ``name[32]``
[all …]
/openbmc/linux/drivers/gpu/drm/msm/hdmi/
H A Dhdmi.c1 // SPDX-License-Identifier: GPL-2.0-only
16 #include <sound/hdmi-codec.h>
24 spin_lock_irqsave(&hdmi->reg_lock, flags); in msm_hdmi_set_mode()
27 if (!hdmi->hdmi_mode) { in msm_hdmi_set_mode()
39 spin_unlock_irqrestore(&hdmi->reg_lock, flags); in msm_hdmi_set_mode()
48 /* Process HPD: */ in msm_hdmi_irq()
49 msm_hdmi_hpd_irq(hdmi->bridge); in msm_hdmi_irq()
52 msm_hdmi_i2c_irq(hdmi->i2c); in msm_hdmi_irq()
55 if (hdmi->hdcp_ctrl) in msm_hdmi_irq()
56 msm_hdmi_hdcp_irq(hdmi->hdcp_ctrl); in msm_hdmi_irq()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/
H A Ddce_v11_0.c92 uint32_t hpd; member
98 .hpd = DISP_INTERRUPT_STATUS__DC_HPD1_INTERRUPT_MASK
103 .hpd = DISP_INTERRUPT_STATUS_CONTINUE__DC_HPD2_INTERRUPT_MASK
108 .hpd = DISP_INTERRUPT_STATUS_CONTINUE2__DC_HPD3_INTERRUPT_MASK
113 .hpd = DISP_INTERRUPT_STATUS_CONTINUE3__DC_HPD4_INTERRUPT_MASK
118 .hpd = DISP_INTERRUPT_STATUS_CONTINUE4__DC_HPD5_INTERRUPT_MASK
123 .hpd = DISP_INTERRUPT_STATUS_CONTINUE5__DC_HPD6_INTERRUPT_MASK
163 switch (adev->asic_type) { in dce_v11_0_init_golden_registers()
200 spin_lock_irqsave(&adev->audio_endpt_idx_lock, flags); in dce_v11_0_audio_endpt_rreg()
203 spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags); in dce_v11_0_audio_endpt_rreg()
[all …]
H A Ddce_v10_0.c88 uint32_t hpd; member
94 .hpd = DISP_INTERRUPT_STATUS__DC_HPD1_INTERRUPT_MASK
99 .hpd = DISP_INTERRUPT_STATUS_CONTINUE__DC_HPD2_INTERRUPT_MASK
104 .hpd = DISP_INTERRUPT_STATUS_CONTINUE2__DC_HPD3_INTERRUPT_MASK
109 .hpd = DISP_INTERRUPT_STATUS_CONTINUE3__DC_HPD4_INTERRUPT_MASK
114 .hpd = DISP_INTERRUPT_STATUS_CONTINUE4__DC_HPD5_INTERRUPT_MASK
119 .hpd = DISP_INTERRUPT_STATUS_CONTINUE5__DC_HPD6_INTERRUPT_MASK
148 switch (adev->asic_type) { in dce_v10_0_init_golden_registers()
176 spin_lock_irqsave(&adev->audio_endpt_idx_lock, flags); in dce_v10_0_audio_endpt_rreg()
179 spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags); in dce_v10_0_audio_endpt_rreg()
[all …]
H A Datombios_dp.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
34 #include "atom-bits.h"
63 struct drm_device *dev = chan->dev; in amdgpu_atombios_dp_process_aux_ch()
73 mutex_lock(&chan->mutex); in amdgpu_atombios_dp_process_aux_ch()
75 base = (unsigned char *)(adev->mode_info.atom_context->scratch + 1); in amdgpu_atombios_dp_process_aux_ch()
82 args.v2.ucChannelID = chan->rec.i2c_id; in amdgpu_atombios_dp_process_aux_ch()
84 args.v2.ucHPD_ID = chan->rec.hpd; in amdgpu_atombios_dp_process_aux_ch()
86 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_dp_process_aux_ch()
92 r = -ETIMEDOUT; in amdgpu_atombios_dp_process_aux_ch()
99 r = -EIO; in amdgpu_atombios_dp_process_aux_ch()
[all …]
H A Ddce_v8_0.c81 (0x13830 - 0x7030) >> 2,
88 uint32_t hpd; member
94 .hpd = DISP_INTERRUPT_STATUS__DC_HPD1_INTERRUPT_MASK
99 .hpd = DISP_INTERRUPT_STATUS_CONTINUE__DC_HPD2_INTERRUPT_MASK
104 .hpd = DISP_INTERRUPT_STATUS_CONTINUE2__DC_HPD3_INTERRUPT_MASK
109 .hpd = DISP_INTERRUPT_STATUS_CONTINUE3__DC_HPD4_INTERRUPT_MASK
114 .hpd = DISP_INTERRUPT_STATUS_CONTINUE4__DC_HPD5_INTERRUPT_MASK
119 .hpd = DISP_INTERRUPT_STATUS_CONTINUE5__DC_HPD6_INTERRUPT_MASK
128 spin_lock_irqsave(&adev->audio_endpt_idx_lock, flags); in dce_v8_0_audio_endpt_rreg()
131 spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags); in dce_v8_0_audio_endpt_rreg()
[all …]
H A Ddce_v6_0.c71 mmDC_HPD1_INT_STATUS - mmDC_HPD1_INT_STATUS,
72 mmDC_HPD2_INT_STATUS - mmDC_HPD1_INT_STATUS,
73 mmDC_HPD3_INT_STATUS - mmDC_HPD1_INT_STATUS,
74 mmDC_HPD4_INT_STATUS - mmDC_HPD1_INT_STATUS,
75 mmDC_HPD5_INT_STATUS - mmDC_HPD1_INT_STATUS,
76 mmDC_HPD6_INT_STATUS - mmDC_HPD1_INT_STATUS,
86 (0x13830 - 0x7030) >> 2,
93 uint32_t hpd; member
99 .hpd = DISP_INTERRUPT_STATUS__DC_HPD1_INTERRUPT_MASK
104 .hpd = DISP_INTERRUPT_STATUS_CONTINUE__DC_HPD2_INTERRUPT_MASK
[all …]
H A Damdgpu_atombios.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
35 #include "atom-bits.h"
52 i2c.mask_clk_reg = le16_to_cpu(gpio->usClkMaskRegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
53 i2c.mask_data_reg = le16_to_cpu(gpio->usDataMaskRegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
54 i2c.en_clk_reg = le16_to_cpu(gpio->usClkEnRegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
55 i2c.en_data_reg = le16_to_cpu(gpio->usDataEnRegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
56 i2c.y_clk_reg = le16_to_cpu(gpio->usClkY_RegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
57 i2c.y_data_reg = le16_to_cpu(gpio->usDataY_RegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
58 i2c.a_clk_reg = le16_to_cpu(gpio->usClkA_RegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
59 i2c.a_data_reg = le16_to_cpu(gpio->usDataA_RegisterIndex); in amdgpu_atombios_get_bus_rec_for_i2c_gpio()
[all …]
/openbmc/linux/arch/powerpc/include/asm/book3s/64/
H A Dhash-4k.h1 /* SPDX-License-Identifier: GPL-2.0 */
31 * Define the address range of the kernel non-linear virtual area (61TB)
78 static inline int hash__hugepd_ok(hugepd_t hpd) in hash__hugepd_ok() argument
80 unsigned long hpdval = hpd_val(hpd); in hash__hugepd_ok()
123 * things are a little more involved and hence needs many more parameters to
/openbmc/linux/drivers/gpu/drm/panel/
H A Dpanel-edp.c17 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
46 * struct panel_delay - Describes delays for a simple panel.
50 * @hpd_reliable: Time for HPD to be reliable
53 * before the HPD signal is reliable. Ideally this is 0 but some panels,
57 * Presumably some old panels simply didn't have HPD hooked up and put
59 * hpd_absent. While that works, it's non-ideal.
64 * @hpd_absent: Time to wait if HPD isn't hooked up.
68 * This is T3-max on eDP timing diagrams or the delay from power on
69 * until HPD is guaranteed to be asserted.
76 * The minimum time, in milliseconds, that needs to have passed
[all …]
/openbmc/linux/drivers/gpu/drm/radeon/
H A Datombios_dp.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
32 #include "atom-bits.h"
48 /* Atom needs data in little endian format so swap as appropriate when copying
90 struct drm_device *dev = chan->dev; in radeon_process_aux_ch()
91 struct radeon_device *rdev = dev->dev_private; in radeon_process_aux_ch()
100 mutex_lock(&chan->mutex); in radeon_process_aux_ch()
101 mutex_lock(&rdev->mode_info.atom_context->scratch_mutex); in radeon_process_aux_ch()
103 base = (unsigned char *)(rdev->mode_info.atom_context->scratch + 1); in radeon_process_aux_ch()
110 args.v1.ucChannelID = chan->rec.i2c_id; in radeon_process_aux_ch()
113 args.v2.ucHPD_ID = chan->rec.hpd; in radeon_process_aux_ch()
[all …]
/openbmc/u-boot/drivers/video/meson/
H A Dmeson_dw_hdmi.c1 // SPDX-License-Identifier: GPL-2.0
4 * Author: Jorge Ramirez-Ortiz <jramirez@baylibre.com>
13 #include <dm/device-internal.h>
14 #include <dm/uclass-internal.h>
56 enum hdmi_compatible compat = dev_get_driver_data(priv->dev); in meson_hdmi_is_compatible()
66 writel(addr & 0xffff, hdmi->ioaddr + HDMITX_TOP_ADDR_REG); in dw_hdmi_top_read()
67 writel(addr & 0xffff, hdmi->ioaddr + HDMITX_TOP_ADDR_REG); in dw_hdmi_top_read()
69 /* Read needs a second DATA read */ in dw_hdmi_top_read()
70 data = readl(hdmi->ioaddr + HDMITX_TOP_DATA_REG); in dw_hdmi_top_read()
71 data = readl(hdmi->ioaddr + HDMITX_TOP_DATA_REG); in dw_hdmi_top_read()
[all …]
/openbmc/linux/include/drm/display/
H A Ddrm_dp_helper.h75 * struct drm_dp_vsc_sdp - drm DP VSC SDP
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
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()
192 return dsc_dpcd[DP_DSC_MAX_SLICE_WIDTH - DP_DSC_SUPPORT] * in drm_dp_dsc_sink_max_slice_width()
197 * drm_dp_dsc_sink_supports_format() - check if sink supports DSC with given output format
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/amdgpu_dm/
H A Damdgpu_dm_irq.c46 * What DM provides on top are two IRQ tables specifically for top-half and
47 * bottom-half IRQ handling, with the bottom-half implementing workqueues:
49 * - &amdgpu_display_manager.irq_handler_list_high_tab
50 * - &amdgpu_display_manager.irq_handler_list_low_tab
56 * still needs to register the IRQ with the base driver. See
69 * struct amdgpu_dm_irq_handler_data - Data for DM interrupt handlers.
90 spin_lock_irqsave(&adev->dm.irq_handler_list_table_lock, flags)
93 spin_unlock_irqrestore(&adev->dm.irq_handler_list_table_lock, flags)
104 hcd->handle in init_handler_common_data()
[all...]
/openbmc/linux/drivers/gpu/drm/i915/display/
H A Dintel_display_driver.c1 // SPDX-License-Identifier: MIT
3 * Copyright © 2022-2023 Intel Corporation
63 * apple-gmux is needed on dual GPU MacBook Pro in intel_display_driver_probe_defer()
69 /* If the LCD panel has a privacy-screen, wait for it */ in intel_display_driver_probe_defer()
70 privacy_screen = drm_privacy_screen_get(&pdev->dev, NULL); in intel_display_driver_probe_defer()
71 if (IS_ERR(privacy_screen) && PTR_ERR(privacy_screen) == -EPROBE_DEFER) in intel_display_driver_probe_defer()
86 cdclk_state = to_intel_cdclk_state(i915->display.cdclk.obj.state); in intel_display_driver_init_hw()
89 intel_cdclk_dump_config(i915, &i915->display.cdclk.hw, "Current CDCLK"); in intel_display_driver_init_hw()
90 cdclk_state->logical = cdclk_state->actual = i915->display.cdclk.hw; in intel_display_driver_init_hw()
111 struct drm_mode_config *mode_config = &i915->drm.mode_config; in intel_mode_config_init()
[all …]
H A Dintel_crt.c2 * Copyright © 2006-2007 Intel Corporation
102 struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); in intel_crt_get_hw_state()
108 encoder->power_domain); in intel_crt_get_hw_state()
112 ret = intel_crt_port_enabled(dev_priv, crt->adpa_reg, pipe); in intel_crt_get_hw_state()
114 intel_display_power_put(dev_priv, encoder->power_domain, wakeref); in intel_crt_get_hw_state()
121 struct drm_i915_private *dev_priv = to_i915(encoder->base.dev); in intel_crt_get_flags()
125 tmp = intel_de_read(dev_priv, crt->adpa_reg); in intel_crt_get_flags()
143 pipe_config->output_types |= BIT(INTEL_OUTPUT_ANALOG); in intel_crt_get_config()
145 pipe_config->hw.adjusted_mode.flags |= intel_crt_get_flags(encoder); in intel_crt_get_config()
147 pipe_config->hw.adjusted_mode.crtc_clock = pipe_config->port_clock; in intel_crt_get_config()
[all …]
/openbmc/linux/drivers/media/i2c/
H A Dtda1997x_regs.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 /* Page 0x00 - General Control */
127 /* HPD Detection */
129 #define DETECT_HPD BIT(6) /* HPD of HDMI level */
157 #define HPD_MAN_CTRL_HPD_PULSE BIT(7) /* HPD Pulse low 110ms */
159 #define HPD_MAN_CTRL_HPD_B BIT(1) /* Assert HPD High for Input A */
160 #define HPD_MAN_CTRL_HPD_A BIT(0) /* Assert HPD High for Input A */
165 #define RT_MAN_CTRL_RT_B BIT(1) /* enable TMDS pull-up on Input B */
166 #define RT_MAN_CTRL_RT_A BIT(0) /* enable TMDS pull-up on Input A */
212 #define PCLK_DELAY_SHIFT 4 /* Pixel delay (-8..+7) */
[all …]
/openbmc/linux/arch/arm/boot/dts/samsung/
H A Dexynos4412-odroidu3.dts1 // SPDX-License-Identifier: GPL-2.0
3 * Hardkernel's Exynos4412 based ODROID-U3 board device tree source
7 * Device tree source file for Hardkernel's ODROID-U3 board which is based
11 /dts-v1/;
12 #include <dt-bindings/leds/common.h>
13 #include "exynos4412-odroid-common.dtsi"
14 #include "exynos4412-prime.dtsi"
17 model = "Hardkernel ODROID-U3 board based on Exynos4412";
18 compatible = "hardkernel,odroid-u3", "samsung,exynos4412", "samsung,exynos4";
29 vbus_otg_reg: regulator-1 {
[all …]
H A Dexynos5422-odroidxu3-common.dtsi1 // SPDX-License-Identifier: GPL-2.0
3 * Hardkernel Odroid XU3/XU3-Lite/XU4 boards common device tree source
12 #include <dt-bindings/input/input.h>
13 #include "exynos5422-odroid-core.dtsi"
20 gpio-keys {
21 compatible = "gpio-keys";
22 pinctrl-names = "default";
23 pinctrl-0 = <&power_key>;
25 power-key {
36 debounce-interval = <0>;
[all …]

1234