Home
last modified time | relevance | path

Searched full:hpd (Results 1 – 25 of 321) sorted by relevance

12345678910>>...13

/Linux-v5.4/drivers/gpu/drm/nouveau/nvkm/engine/disp/
Dconn.c35 struct nvkm_conn *conn = container_of(notify, typeof(*conn), hpd); in nvkm_conn_hpd()
42 CONN_DBG(conn, "HPD: %d", line->mask); in nvkm_conn_hpd()
44 if (!nvkm_gpio_get(gpio, 0, DCB_GPIO_UNUSED, conn->hpd.index)) in nvkm_conn_hpd()
50 nvkm_event_send(&disp->hpd, rep.mask, index, &rep, sizeof(rep)); in nvkm_conn_hpd()
57 nvkm_notify_put(&conn->hpd); in nvkm_conn_fini()
63 nvkm_notify_get(&conn->hpd); in nvkm_conn_init()
71 nvkm_notify_fini(&conn->hpd); in nvkm_conn_del()
81 static const u8 hpd[] = { 0x07, 0x08, 0x51, 0x52, 0x5e, 0x5f, 0x60 }; in nvkm_conn_ctor() local
90 CONN_DBG(conn, "type %02x loc %d hpd %02x dp %x di %x sr %x lcdid %x", in nvkm_conn_ctor()
91 info->type, info->location, info->hpd, info->dp, in nvkm_conn_ctor()
[all …]
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/gpio/
Dhw_hpd.c40 hpd->shifts->field_name, hpd->masks->field_name
43 hpd->base.base.ctx
45 (hpd->regs->reg)
66 struct hw_hpd *hpd) in destruct() argument
68 dal_hw_hpd_destruct(hpd); in destruct()
74 struct hw_hpd *hpd = HW_HPD_FROM_BASE(*ptr); in destroy() local
76 destruct(hpd); in destroy()
78 kfree(hpd); in destroy()
87 struct hw_hpd *hpd = HW_HPD_FROM_BASE(ptr); in get_value() local
110 struct hw_hpd *hpd = HW_HPD_FROM_BASE(ptr); in set_config() local
[all …]
/Linux-v5.4/drivers/gpu/drm/mediatek/
Dmtk_cec.c53 bool hpd; member
54 void (*hpd_event)(bool hpd, struct device *dev);
91 void (*hpd_event)(bool hpd, struct device *dev), in mtk_cec_set_hpd_event() argument
148 static void mtk_cec_hpd_event(struct mtk_cec *cec, bool hpd) in mtk_cec_hpd_event() argument
150 void (*hpd_event)(bool hpd, struct device *dev); in mtk_cec_hpd_event()
160 hpd_event(hpd, hdmi_dev); in mtk_cec_hpd_event()
167 bool hpd; in mtk_cec_htplg_isr_thread() local
170 hpd = mtk_cec_hpd_high(dev); in mtk_cec_htplg_isr_thread()
172 if (cec->hpd != hpd) { in mtk_cec_htplg_isr_thread()
173 dev_dbg(dev, "hotplug event! cur hpd = %d, hpd = %d\n", in mtk_cec_htplg_isr_thread()
[all …]
/Linux-v5.4/drivers/gpu/drm/omapdrm/
Domap_connector.c23 struct omap_dss_device *hpd; member
71 struct omap_dss_device *hpd = omap_connector->hpd; in omap_connector_enable_hpd() local
73 if (hpd) in omap_connector_enable_hpd()
74 hpd->ops->register_hpd_cb(hpd, omap_connector_hpd_cb, in omap_connector_enable_hpd()
81 struct omap_dss_device *hpd = omap_connector->hpd; in omap_connector_disable_hpd() local
83 if (hpd) in omap_connector_disable_hpd()
84 hpd->ops->unregister_hpd_cb(hpd); in omap_connector_disable_hpd()
149 if (omap_connector->hpd) { in omap_connector_destroy()
150 struct omap_dss_device *hpd = omap_connector->hpd; in omap_connector_destroy() local
152 hpd->ops->unregister_hpd_cb(hpd); in omap_connector_destroy()
[all …]
/Linux-v5.4/drivers/gpu/drm/radeon/
Dradeon_combios.c635 i2c.hpd = RADEON_HPD_NONE; in combios_setup_i2c_bus()
1458 struct radeon_hpd hpd; in radeon_get_legacy_connector_info_from_table() local
1545 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1556 &hpd); in radeon_get_legacy_connector_info_from_table()
1560 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1571 &hpd); in radeon_get_legacy_connector_info_from_table()
1575 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1586 &hpd); in radeon_get_legacy_connector_info_from_table()
1590 hpd.hpd = RADEON_HPD_1; in radeon_get_legacy_connector_info_from_table()
1607 &hpd); in radeon_get_legacy_connector_info_from_table()
[all …]
Dradeon_connectors.c67 /* bail if the connector does not have hpd pin, e.g., in radeon_connector_hotplug()
70 if (radeon_connector->hpd.hpd == RADEON_HPD_NONE) in radeon_connector_hotplug()
73 radeon_hpd_set_polarity(rdev, radeon_connector->hpd.hpd); in radeon_connector_hotplug()
95 radeon_hpd_sense(rdev, radeon_connector->hpd.hpd) && in radeon_connector_hotplug()
1215 /* We only trust HPD on R600 and newer ASICS. */ in radeon_check_hpd_status_unchanged()
1217 && radeon_connector->hpd.hpd != RADEON_HPD_NONE) { in radeon_check_hpd_status_unchanged()
1218 if (radeon_hpd_sense(rdev, radeon_connector->hpd.hpd)) in radeon_check_hpd_status_unchanged()
1273 * for HPD do. If the DDC probe fails even though we had an HPD in radeon_dvi_detect()
1277 DRM_DEBUG_KMS("hpd detected without ddc, retrying in 1 second\n"); in radeon_dvi_detect()
1334 /* hpd is our only option in this case */ in radeon_dvi_detect()
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/media/
Dcec-gpio.txt4 is hooked up to a pull-up GPIO line and - optionally - the HPD line is
7 Please note: the maximum voltage for the CEC line is 3.63V, for the HPD and
22 the following property is optional and can be used for debugging HPD changes:
24 - hpd-gpios: gpio that the HPD line is connected to.
31 pin 26 aka BCM7 aka CE1 on the GPIO pin header, the HPD line is
33 15 aka BCM22 (some level shifter is needed for the HPD and 5V lines!):
40 hpd-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
Dcec.txt5 - needs-hpd: if present the CEC support is only available when the HPD
6 is high. Some boards only let the CEC pin through if the HPD is high,
7 for example if there is a level converter that uses the HPD to power
/Linux-v5.4/arch/powerpc/include/asm/nohash/32/
Dhugetlb-8xx.h7 static inline pte_t *hugepd_page(hugepd_t hpd) in hugepd_page() argument
9 BUG_ON(!hugepd_ok(hpd)); in hugepd_page()
11 return (pte_t *)__va(hpd_val(hpd) & ~HUGEPD_SHIFT_MASK); in hugepd_page()
14 static inline unsigned int hugepd_shift(hugepd_t hpd) in hugepd_shift() argument
16 return ((hpd_val(hpd) & _PMD_PAGE_MASK) >> 1) + 17; in hugepd_shift()
19 static inline pte_t *hugepte_offset(hugepd_t hpd, unsigned long addr, in hugepte_offset() argument
24 return hugepd_page(hpd) + idx; in hugepte_offset()
/Linux-v5.4/arch/powerpc/include/asm/book3s/64/
Dhugetlb.h68 static inline pte_t *hugepd_page(hugepd_t hpd) in hugepd_page() argument
70 BUG_ON(!hugepd_ok(hpd)); in hugepd_page()
75 return __va(hpd_val(hpd) & HUGEPD_ADDR_MASK); in hugepd_page()
78 static inline unsigned int hugepd_mmu_psize(hugepd_t hpd) in hugepd_mmu_psize() argument
80 return (hpd_val(hpd) & HUGEPD_SHIFT_MASK) >> 2; in hugepd_mmu_psize()
83 static inline unsigned int hugepd_shift(hugepd_t hpd) in hugepd_shift() argument
85 return mmu_psize_to_shift(hugepd_mmu_psize(hpd)); in hugepd_shift()
94 static inline pte_t *hugepte_offset(hugepd_t hpd, unsigned long addr, in hugepte_offset() argument
97 unsigned long idx = (addr & ((1UL << pdshift) - 1)) >> hugepd_shift(hpd); in hugepte_offset()
99 return hugepd_page(hpd) + idx; in hugepte_offset()
Dpgtable-4k.h44 static inline int hugepd_ok(hugepd_t hpd) in hugepd_ok() argument
48 return hash__hugepd_ok(hpd); in hugepd_ok()
50 #define is_hugepd(hpd) (hugepd_ok(hpd)) argument
/Linux-v5.4/arch/powerpc/include/asm/nohash/
Dhugetlb-book3e.h5 static inline pte_t *hugepd_page(hugepd_t hpd) in hugepd_page() argument
7 if (WARN_ON(!hugepd_ok(hpd))) in hugepd_page()
10 return (pte_t *)((hpd_val(hpd) & ~HUGEPD_SHIFT_MASK) | PD_HUGE); in hugepd_page()
13 static inline unsigned int hugepd_shift(hugepd_t hpd) in hugepd_shift() argument
15 return hpd_val(hpd) & HUGEPD_SHIFT_MASK; in hugepd_shift()
18 static inline pte_t *hugepte_offset(hugepd_t hpd, unsigned long addr, in hugepte_offset() argument
26 return hugepd_page(hpd); in hugepte_offset()
/Linux-v5.4/drivers/gpu/drm/i915/display/
Dintel_hotplug.c43 * handlers gather the hotplug detect (HPD) information from relevant registers
72 * callback is handled by i915_digport_work_func reenabling of hpd is not
82 * @port: the hpd port to get associated pin
124 * intel_hpd_irq_storm_detect - gather stats and detect HPD IRQ storm on a pin
127 * @long_hpd: whether the HPD IRQ was long or short
129 * Gather stats about HPD IRQs from the specified @pin, and detect IRQ
147 * The HPD threshold can be controlled through i915_hpd_storm_ctl in debugfs,
155 struct i915_hotplug *hpd = &dev_priv->hotplug; in intel_hpd_irq_storm_detect() local
156 unsigned long start = hpd->stats[pin].last_jiffies; in intel_hpd_irq_storm_detect()
159 const int threshold = hpd->hpd_storm_threshold; in intel_hpd_irq_storm_detect()
[all …]
/Linux-v5.4/drivers/gpu/drm/bridge/
Dti-tfp410.c30 struct gpio_desc *hpd; member
94 if (dvi->hpd) { in tfp410_connector_detect()
95 if (gpiod_get_value_cansleep(dvi->hpd)) in tfp410_connector_detect()
287 dvi->hpd = fwnode_get_named_gpiod(&connector_node->fwnode, in tfp410_get_connector_properties()
288 "hpd-gpios", 0, GPIOD_IN, "hpd"); in tfp410_get_connector_properties()
289 if (IS_ERR(dvi->hpd)) { in tfp410_get_connector_properties()
290 ret = PTR_ERR(dvi->hpd); in tfp410_get_connector_properties()
291 dvi->hpd = NULL; in tfp410_get_connector_properties()
350 if (dvi->hpd) in tfp410_init()
351 dvi->hpd_irq = gpiod_to_irq(dvi->hpd); in tfp410_init()
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/display/bridge/
Danalogix_dp.txt24 -force-hpd:
25 Indicate driver need force hpd when hpd detect failed, this
26 is used for some eDP screen which don't have hpd signal.
27 -hpd-gpios:
/Linux-v5.4/drivers/gpu/drm/amd/amdgpu/
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
273 * dce_v10_0_hpd_sense - hpd sense callback.
276 * @hpd: hpd (hotplug detect) pin
282 enum amdgpu_hpd_id hpd) in dce_v10_0_hpd_sense() argument
[all …]
Ddce_v11_0.c90 uint32_t hpd; member
96 .hpd = DISP_INTERRUPT_STATUS__DC_HPD1_INTERRUPT_MASK
101 .hpd = DISP_INTERRUPT_STATUS_CONTINUE__DC_HPD2_INTERRUPT_MASK
106 .hpd = DISP_INTERRUPT_STATUS_CONTINUE2__DC_HPD3_INTERRUPT_MASK
111 .hpd = DISP_INTERRUPT_STATUS_CONTINUE3__DC_HPD4_INTERRUPT_MASK
116 .hpd = DISP_INTERRUPT_STATUS_CONTINUE4__DC_HPD5_INTERRUPT_MASK
121 .hpd = DISP_INTERRUPT_STATUS_CONTINUE5__DC_HPD6_INTERRUPT_MASK
291 * dce_v11_0_hpd_sense - hpd sense callback.
294 * @hpd: hpd (hotplug detect) pin
300 enum amdgpu_hpd_id hpd) in dce_v11_0_hpd_sense() argument
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/display/ti/
Dti,tpd12s015.txt8 - gpios: CT CP HPD, LS OE and HPD gpios
20 gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>, /* 60, CT CP HPD */
22 <&gpio2 31 GPIO_ACTIVE_HIGH>; /* 63, HPD */
/Linux-v5.4/drivers/gpu/drm/msm/hdmi/
Dhdmi_connector.c132 "failed to enable hpd clk: %s (%d)\n", in enable_hpd_clocks()
155 DRM_DEV_ERROR(dev, "failed to enable hpd regulator: %s (%d)\n", in msm_hdmi_hpd_enable()
182 /* enable HPD events: */ in msm_hdmi_hpd_enable()
192 /* Toggle HPD circuit to trigger HPD sense */ in msm_hdmi_hpd_enable()
212 /* Disable HPD interrupt */ in hdp_disable()
231 dev_warn(dev, "failed to disable hpd regulator: %s (%d)\n", in hdp_disable()
251 /* Process HPD: */ in msm_hdmi_connector_irq()
259 /* ack & disable (temporarily) HPD events: */ in msm_hdmi_connector_irq()
313 * some platforms may not have hpd gpio. Rely only on the status in hdmi_connector_detect()
335 DBG("hpd gpio tells us: %d", stat_gpio); in hdmi_connector_detect()
/Linux-v5.4/Documentation/devicetree/bindings/display/msm/
Dedp.txt23 to HPD receiving chip
25 - panel-hpd-gpios: GPIO pin used for eDP hpd.
55 panel-hpd-gpios = <&tlmm 103 0>;
/Linux-v5.4/Documentation/media/uapi/cec/
Dcec-ioc-dqevent.rst171 * .. _`CEC-EVENT-PIN-HPD-LOW`:
175 - Generated if the HPD pin goes from a high voltage to a low voltage.
177 capability set. When open() is called, the HPD pin can be read and
178 if the HPD is low, then an initial event will be generated for that
180 * .. _`CEC-EVENT-PIN-HPD-HIGH`:
184 - Generated if the HPD pin goes from a low voltage to a high voltage.
186 capability set. When open() is called, the HPD pin can be read and
187 if the HPD is high, then an initial event will be generated for that
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/gpio/dce120/
Dhw_factory_dce120.c42 #define block HPD
156 struct hw_hpd *hpd = HW_HPD_FROM_BASE(pin); in define_hpd_registers() local
158 hpd->regs = &hpd_regs[en]; in define_hpd_registers()
159 hpd->shifts = &hpd_shift; in define_hpd_registers()
160 hpd->masks = &hpd_mask; in define_hpd_registers()
161 hpd->base.regs = &hpd_regs[en].gpio; in define_hpd_registers()
/Linux-v5.4/Documentation/devicetree/bindings/display/exynos/
Dexynos_dp.txt43 -samsung,hpd-gpio:
56 -hpd-gpios (optional)
57 force-hpd (optional)
69 -samsung,hpd-gpio: deprecated name for hpd-gpios.
/Linux-v5.4/drivers/gpu/drm/
Ddrm_dp_cec.c57 * When the EDID is unset because the HPD went low, then the CEC DPCD registers
59 * powered by the HPD). However, some displays toggle the HPD off and on for a
64 * actually unregistered. Only if the HPD does not return within that time will
71 * soon as the HPD disappears.
73 * The default is one second to prevent short HPD glitches from unregistering
77 * registers remain available even if the HPD goes low since it is not powered
78 * by the HPD. In that case the CEC adapter will never be unregistered during
276 * Called if the HPD was low for more than drm_dp_cec_unregister_delay
370 * The EDID disappeared (likely because of the HPD going down).
395 * seconds. This to debounce short HPD off-and-on cycles from in drm_dp_cec_unset_edid()
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/gpio/dcn10/
Dhw_factory_dcn10.c43 #define block HPD
188 struct hw_hpd *hpd = HW_HPD_FROM_BASE(pin); in define_hpd_registers() local
190 hpd->regs = &hpd_regs[en]; in define_hpd_registers()
191 hpd->shifts = &hpd_shift; in define_hpd_registers()
192 hpd->masks = &hpd_mask; in define_hpd_registers()
193 hpd->base.regs = &hpd_regs[en].gpio; in define_hpd_registers()

12345678910>>...13