Home
last modified time | relevance | path

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

12345678910>>...32

/kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/link/protocols/
Dlink_hpd.c28 * This file implements functions that manage basic HPD components such as gpio.
29 * It also provides wrapper functions to execute HPD related programming. This
30 * file only manages basic HPD functionality. It doesn't manage detection or
31 * feature or signal specific HPD behaviors.
65 struct gpio *hpd; in link_enable_hpd_filter() local
72 /* Obtain HPD handle */ in link_enable_hpd_filter()
73 hpd = link_get_hpd_gpio(link->ctx->dc_bios, link->link_id, link->ctx->gpio_service); in link_enable_hpd_filter()
75 if (!hpd) in link_enable_hpd_filter()
78 /* Setup HPD filtering */ in link_enable_hpd_filter()
79 if (dal_gpio_open(hpd, GPIO_MODE_INTERRUPT) == GPIO_RESULT_OK) { in link_enable_hpd_filter()
[all …]
/kernel/linux/linux-5.10/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 …]
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/engine/disp/
Dconn.c56 static const u8 hpd[] = { 0x07, 0x08, 0x51, 0x52, 0x5e, 0x5f, 0x60 }; in nvkm_conn_ctor() local
64 conn->info.hpd = DCB_GPIO_UNUSED; in nvkm_conn_ctor()
66 CONN_DBG(conn, "type %02x loc %d hpd %02x dp %x di %x sr %x lcdid %x", in nvkm_conn_ctor()
67 info->type, info->location, info->hpd, info->dp, in nvkm_conn_ctor()
70 if ((info->hpd = ffs(info->hpd))) { in nvkm_conn_ctor()
71 if (--info->hpd >= ARRAY_SIZE(hpd)) { in nvkm_conn_ctor()
72 CONN_ERR(conn, "hpd %02x unknown", info->hpd); in nvkm_conn_ctor()
75 info->hpd = hpd[info->hpd]; in nvkm_conn_ctor()
77 ret = nvkm_gpio_find(gpio, 0, info->hpd, DCB_GPIO_UNUSED, &func); in nvkm_conn_ctor()
79 CONN_ERR(conn, "func %02x lookup failed, %d", info->hpd, ret); in nvkm_conn_ctor()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/panel/
Dpanel-edp.yaml56 HPD :<T3>| : : |
91 hpd-reliable-delay-ms:
94 panel's power-supply before the HPD signal is a reliable way to know
96 the HPD at the start of power-on. This value is not needed if HPD is
99 hpd-absent-delay-ms:
101 The panel specifies that HPD will be asserted this many milliseconds
103 measure HPD then a fixed delay of this many milliseconds can be used.
104 This can also be used as a timeout when waiting for HPD. Does not
105 include the hpd-reliable-delay, so if hpd-reliable-delay was 80 ms
106 and hpd-absent-delay was 200 ms then we'd do a fixed 80 ms delay and
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/mediatek/
Dmtk_cec.c56 bool hpd; member
57 void (*hpd_event)(bool hpd, struct device *dev);
94 void (*hpd_event)(bool hpd, struct device *dev), in mtk_cec_set_hpd_event() argument
151 static void mtk_cec_hpd_event(struct mtk_cec *cec, bool hpd) in mtk_cec_hpd_event() argument
153 void (*hpd_event)(bool hpd, struct device *dev); in mtk_cec_hpd_event()
163 hpd_event(hpd, hdmi_dev); in mtk_cec_hpd_event()
170 bool hpd; in mtk_cec_htplg_isr_thread() local
173 hpd = mtk_cec_hpd_high(dev); in mtk_cec_htplg_isr_thread()
175 if (cec->hpd != hpd) { in mtk_cec_htplg_isr_thread()
176 dev_dbg(dev, "hotplug event! cur hpd = %d, hpd = %d\n", in mtk_cec_htplg_isr_thread()
[all …]
/kernel/linux/linux-5.10/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 …]
/kernel/linux/linux-6.6/drivers/gpu/drm/radeon/
Dradeon_combios.c632 i2c.hpd = RADEON_HPD_NONE; in combios_setup_i2c_bus()
1455 struct radeon_hpd hpd; in radeon_get_legacy_connector_info_from_table() local
1542 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1553 &hpd); in radeon_get_legacy_connector_info_from_table()
1557 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1568 &hpd); in radeon_get_legacy_connector_info_from_table()
1572 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1583 &hpd); in radeon_get_legacy_connector_info_from_table()
1587 hpd.hpd = RADEON_HPD_1; in radeon_get_legacy_connector_info_from_table()
1604 &hpd); in radeon_get_legacy_connector_info_from_table()
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/radeon/
Dradeon_combios.c636 i2c.hpd = RADEON_HPD_NONE; in combios_setup_i2c_bus()
1459 struct radeon_hpd hpd; in radeon_get_legacy_connector_info_from_table() local
1546 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1557 &hpd); in radeon_get_legacy_connector_info_from_table()
1561 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1572 &hpd); in radeon_get_legacy_connector_info_from_table()
1576 hpd.hpd = RADEON_HPD_NONE; in radeon_get_legacy_connector_info_from_table()
1587 &hpd); in radeon_get_legacy_connector_info_from_table()
1591 hpd.hpd = RADEON_HPD_1; in radeon_get_legacy_connector_info_from_table()
1608 &hpd); in radeon_get_legacy_connector_info_from_table()
[all …]
/kernel/linux/linux-6.6/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
116 * intel_hpd_irq_storm_detect - gather stats and detect HPD IRQ storm on a pin
119 * @long_hpd: whether the HPD IRQ was long or short
121 * Gather stats about HPD IRQs from the specified @pin, and detect IRQ
139 * The HPD threshold can be controlled through i915_hpd_storm_ctl in debugfs,
147 struct intel_hotplug *hpd = &dev_priv->display.hotplug; in intel_hpd_irq_storm_detect() local
148 unsigned long start = hpd->stats[pin].last_jiffies; in intel_hpd_irq_storm_detect()
151 const int threshold = hpd->hpd_storm_threshold; in intel_hpd_irq_storm_detect()
[all …]
Dintel_hotplug_irq.c136 struct intel_hotplug *hpd = &dev_priv->display.hotplug; in intel_hpd_init_pins() local
141 hpd->hpd = hpd_status_g4x; in intel_hpd_init_pins()
143 hpd->hpd = hpd_status_i915; in intel_hpd_init_pins()
148 hpd->hpd = hpd_xelpdp; in intel_hpd_init_pins()
150 hpd->hpd = hpd_gen11; in intel_hpd_init_pins()
152 hpd->hpd = hpd_bxt; in intel_hpd_init_pins()
154 hpd->hpd = NULL; /* no north HPD on SKL */ in intel_hpd_init_pins()
156 hpd->hpd = hpd_bdw; in intel_hpd_init_pins()
158 hpd->hpd = hpd_ivb; in intel_hpd_init_pins()
160 hpd->hpd = hpd_ilk; in intel_hpd_init_pins()
[all …]
/kernel/linux/linux-5.10/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)
58 struct hw_hpd *hpd = HW_HPD_FROM_BASE(*ptr); in dal_hw_hpd_destroy() local
60 dal_hw_hpd_destruct(hpd); in dal_hw_hpd_destroy()
62 kfree(hpd); in dal_hw_hpd_destroy()
71 struct hw_hpd *hpd = HW_HPD_FROM_BASE(ptr); in get_value() local
94 struct hw_hpd *hpd = HW_HPD_FROM_BASE(ptr); in set_config() local
100 DC_HPD_CONNECT_INT_DELAY, config_data->config.hpd.delay_on_connect / 10, in set_config()
101 DC_HPD_DISCONNECT_INT_DELAY, config_data->config.hpd.delay_on_disconnect / 10); in set_config()
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/gpio/
Dhw_hpd.c38 hpd->shifts->field_name, hpd->masks->field_name
41 hpd->base.base.ctx
43 (hpd->regs->reg)
56 struct hw_hpd *hpd = HW_HPD_FROM_BASE(*ptr); in dal_hw_hpd_destroy() local
58 dal_hw_hpd_destruct(hpd); in dal_hw_hpd_destroy()
60 kfree(hpd); in dal_hw_hpd_destroy()
69 struct hw_hpd *hpd = HW_HPD_FROM_BASE(ptr); in get_value() local
92 struct hw_hpd *hpd = HW_HPD_FROM_BASE(ptr); in set_config() local
98 DC_HPD_CONNECT_INT_DELAY, config_data->config.hpd.delay_on_connect / 10, in set_config()
99 DC_HPD_DISCONNECT_INT_DELAY, config_data->config.hpd.delay_on_disconnect / 10); in set_config()
/kernel/linux/linux-5.10/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>;
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/media/cec/
Dcec-gpio.yaml14 hooked up to a pull-up GPIO line and - optionally - the HPD line is hooked up
17 Please note:: the maximum voltage for the CEC line is 3.63V, for the HPD and
31 hpd-gpios:
34 GPIO that the HPD line is connected to. Used for debugging HPD changes
54 hpd-gpios: false
58 - hpd-gpios
72 hpd-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/display/
Dintel_hotplug.c41 * handlers gather the hotplug detect (HPD) information from relevant registers
70 * callback is handled by i915_digport_work_func reenabling of hpd is not
80 * @port: the hpd port to get associated pin
111 * intel_hpd_irq_storm_detect - gather stats and detect HPD IRQ storm on a pin
114 * @long_hpd: whether the HPD IRQ was long or short
116 * Gather stats about HPD IRQs from the specified @pin, and detect IRQ
134 * The HPD threshold can be controlled through i915_hpd_storm_ctl in debugfs,
142 struct i915_hotplug *hpd = &dev_priv->hotplug; in intel_hpd_irq_storm_detect() local
143 unsigned long start = hpd->stats[pin].last_jiffies; in intel_hpd_irq_storm_detect()
146 const int threshold = hpd->hpd_storm_threshold; in intel_hpd_irq_storm_detect()
[all …]
/kernel/linux/linux-6.6/arch/powerpc/include/asm/book3s/64/
Dhugetlb.h67 static inline pte_t *hugepd_page(hugepd_t hpd) in hugepd_page() argument
69 BUG_ON(!hugepd_ok(hpd)); in hugepd_page()
74 return __va(hpd_val(hpd) & HUGEPD_ADDR_MASK); in hugepd_page()
77 static inline unsigned int hugepd_mmu_psize(hugepd_t hpd) in hugepd_mmu_psize() argument
79 return (hpd_val(hpd) & HUGEPD_SHIFT_MASK) >> 2; in hugepd_mmu_psize()
82 static inline unsigned int hugepd_shift(hugepd_t hpd) in hugepd_shift() argument
84 return mmu_psize_to_shift(hugepd_mmu_psize(hpd)); in hugepd_shift()
93 static inline pte_t *hugepte_offset(hugepd_t hpd, unsigned long addr, in hugepte_offset() argument
96 unsigned long idx = (addr & ((1UL << pdshift) - 1)) >> hugepd_shift(hpd); in hugepte_offset()
98 return hugepd_page(hpd) + idx; in hugepte_offset()
/kernel/linux/linux-5.10/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()
/kernel/linux/linux-6.6/arch/powerpc/include/asm/nohash/
Dhugetlb-e500.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()
/kernel/linux/linux-5.10/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()
/kernel/linux/linux-6.6/drivers/gpu/drm/msm/hdmi/
Dhdmi_hpd.c83 "failed to enable hpd clk: %s (%d)\n", in enable_hpd_clocks()
105 DRM_DEV_ERROR(dev, "failed to enable hpd regulators: %d\n", ret); in msm_hdmi_hpd_enable()
127 /* enable HPD events: */ in msm_hdmi_hpd_enable()
137 /* Toggle HPD circuit to trigger HPD sense */ in msm_hdmi_hpd_enable()
157 /* Disable HPD interrupt */ in msm_hdmi_hpd_disable()
171 dev_warn(dev, "failed to disable hpd regulator: %d\n", ret); in msm_hdmi_hpd_disable()
180 /* Process HPD: */ in msm_hdmi_hpd_irq()
188 /* ack & disable (temporarily) HPD events: */ in msm_hdmi_hpd_irq()
237 * some platforms may not have hpd gpio. Rely only on the status in msm_hdmi_bridge_detect()
259 DBG("hpd gpio tells us: %d", stat_gpio); in msm_hdmi_bridge_detect()
/kernel/linux/linux-5.10/drivers/gpu/drm/msm/hdmi/
Dhdmi_hpd.c83 "failed to enable hpd clk: %s (%d)\n", in enable_hpd_clocks()
106 DRM_DEV_ERROR(dev, "failed to enable hpd regulator: %s (%d)\n", in msm_hdmi_hpd_enable()
130 /* enable HPD events: */ in msm_hdmi_hpd_enable()
140 /* Toggle HPD circuit to trigger HPD sense */ in msm_hdmi_hpd_enable()
160 /* Disable HPD interrupt */ in msm_hdmi_hpd_disable()
175 dev_warn(dev, "failed to disable hpd regulator: %s (%d)\n", in msm_hdmi_hpd_disable()
186 /* Process HPD: */ in msm_hdmi_hpd_irq()
194 /* ack & disable (temporarily) HPD events: */ in msm_hdmi_hpd_irq()
243 * some platforms may not have hpd gpio. Rely only on the status in msm_hdmi_bridge_detect()
265 DBG("hpd gpio tells us: %d", stat_gpio); in msm_hdmi_bridge_detect()
/kernel/linux/linux-5.10/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
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()
/kernel/linux/linux-6.6/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
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()
/kernel/linux/linux-6.6/drivers/usb/typec/altmodes/
Ddisplayport.c62 bool hpd; member
137 bool hpd = !!(dp->data.status & DP_STATUS_HPD_STATE); in dp_altmode_status_update() local
150 if (dp->hpd != hpd) { in dp_altmode_status_update()
151 dp->hpd = hpd; in dp_altmode_status_update()
156 if (dp->hpd != hpd) { in dp_altmode_status_update()
158 dp->hpd = hpd; in dp_altmode_status_update()
159 sysfs_notify(&dp->alt->dev.kobj, "displayport", "hpd"); in dp_altmode_status_update()
171 * If the DFP_D/UFP_D sends a change in HPD when first notifying the in dp_altmode_configured()
173 * configuration is complete to signal HPD. in dp_altmode_configured()
177 sysfs_notify(&dp->alt->dev.kobj, "displayport", "hpd"); in dp_altmode_configured()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/bridge/
Danalogix,dp.yaml28 force-hpd:
31 Indicate driver need force hpd when hpd detect failed, this
32 is used for some eDP screen which don not have a hpd signal.
34 hpd-gpios:

12345678910>>...32