Home
last modified time | relevance | path

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

12345678910>>...16

/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/engine/disp/
Dconn.c28 #include <subdev/gpio.h>
35 struct nvkm_conn *conn = container_of(notify, typeof(*conn), hpd); in nvkm_conn_hpd()
36 struct nvkm_disp *disp = conn->disp; in nvkm_conn_hpd()
37 struct nvkm_gpio *gpio = disp->engine.subdev.device->gpio; in nvkm_conn_hpd() local
38 const struct nvkm_gpio_ntfy_rep *line = notify->data; in nvkm_conn_hpd()
40 int index = conn->index; 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()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/media/
Dcec-gpio.txt1 * HDMI CEC GPIO driver
3 The HDMI CEC GPIO module supports CEC implementations where the CEC line
4 is hooked up to a pull-up GPIO line and - optionally - the HPD line is
5 hooked up to another GPIO line.
7 Please note: the maximum voltage for the CEC line is 3.63V, for the HPD and
9 when connecting them to a GPIO line.
12 - compatible: value must be "cec-gpio".
13 - cec-gpios: gpio that the CEC line is connected to. The line should be
19 - hdmi-phandle - phandle to the HDMI controller, see also cec.txt.
22 the following property is optional and can be used for debugging HPD changes:
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/media/cec/
Dcec-gpio.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/media/cec/cec-gpio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: HDMI CEC GPIO
10 - Hans Verkuil <hverkuil-cisco@xs4all.nl>
13 The HDMI CEC GPIO module supports CEC implementations where the CEC line is
14 hooked up to a pull-up GPIO line and - optionally - the HPD line is hooked up
15 to another GPIO line.
17 Please note:: the maximum voltage for the CEC line is 3.63V, for the HPD and
[all …]
/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.
40 dal_gpio_lock_pin(link->hpd_gpio); in link_get_hpd_state()
41 dal_gpio_get_value(link->hpd_gpio, &state); in link_get_hpd_state()
42 dal_gpio_unlock_pin(link->hpd_gpio); in link_get_hpd_state()
49 struct link_encoder *encoder = link->link_enc; in link_enable_hpd()
51 if (encoder != NULL && encoder->funcs->enable_hpd != NULL) in link_enable_hpd()
52 encoder->funcs->enable_hpd(encoder); in link_enable_hpd()
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/engine/disp/
Dconn.c28 #include <subdev/gpio.h>
56 static const u8 hpd[] = { 0x07, 0x08, 0x51, 0x52, 0x5e, 0x5f, 0x60 }; in nvkm_conn_ctor() local
57 struct nvkm_gpio *gpio = disp->engine.subdev.device->gpio; in nvkm_conn_ctor() local
61 conn->disp = disp; in nvkm_conn_ctor()
62 conn->index = index; in nvkm_conn_ctor()
63 conn->info = *info; in nvkm_conn_ctor()
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()
68 info->di, info->sr, info->lcdid); in nvkm_conn_ctor()
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/dc/gpio/
Dhw_hpd.c2 * Copyright 2012-15 Advanced Micro Devices, Inc.
40 hpd->shifts->field_name, hpd->masks->field_name
43 hpd->base.base.ctx
45 (hpd->regs->reg)
47 struct gpio;
52 dal_hw_gpio_destruct(&pin->base); in dal_hw_hpd_destruct()
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
[all …]
Dgpio_base.c2 * Copyright 2012-15 Advanced Micro Devices, Inc.
27 * Pre-requisites: headers required by header of this unit
42 * Post-requisites: headers required by this unit
55 struct gpio *gpio, in dal_gpio_open() argument
58 return dal_gpio_open_ex(gpio, mode); in dal_gpio_open()
62 struct gpio *gpio, in dal_gpio_open_ex() argument
65 if (gpio->pin) { in dal_gpio_open_ex()
70 // No action if allocation failed during gpio construct in dal_gpio_open_ex()
71 if (!gpio->hw_container.ddc) { in dal_gpio_open_ex()
75 gpio->mode = mode; in dal_gpio_open_ex()
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/gpio/
Dhw_hpd.c2 * Copyright 2012-15 Advanced Micro Devices, Inc.
38 hpd->shifts->field_name, hpd->masks->field_name
41 hpd->base.base.ctx
43 (hpd->regs->reg)
45 struct gpio;
50 dal_hw_gpio_destruct(&pin->base); in dal_hw_hpd_destruct()
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
[all …]
/kernel/linux/linux-6.6/Documentation/admin-guide/media/
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 …]
/kernel/linux/linux-5.10/drivers/gpu/drm/msm/hdmi/
Dhdmi_hpd.c1 // SPDX-License-Identifier: GPL-2.0-only
8 #include <linux/gpio/consumer.h>
65 const struct hdmi_platform_config *config = hdmi->config; in enable_hpd_clocks()
66 struct device *dev = &hdmi->pdev->dev; in enable_hpd_clocks()
70 for (i = 0; i < config->hpd_clk_cnt; i++) { in enable_hpd_clocks()
71 if (config->hpd_freq && config->hpd_freq[i]) { in enable_hpd_clocks()
72 ret = clk_set_rate(hdmi->hpd_clks[i], in enable_hpd_clocks()
73 config->hpd_freq[i]); in enable_hpd_clocks()
77 config->hpd_clk_names[i], ret); in enable_hpd_clocks()
80 ret = clk_prepare_enable(hdmi->hpd_clks[i]); in enable_hpd_clocks()
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/msm/hdmi/
Dhdmi_hpd.c1 // SPDX-License-Identifier: GPL-2.0-only
8 #include <linux/gpio/consumer.h>
65 const struct hdmi_platform_config *config = hdmi->config; in enable_hpd_clocks()
66 struct device *dev = &hdmi->pdev->dev; in enable_hpd_clocks()
70 for (i = 0; i < config->hpd_clk_cnt; i++) { in enable_hpd_clocks()
71 if (config->hpd_freq && config->hpd_freq[i]) { in enable_hpd_clocks()
72 ret = clk_set_rate(hdmi->hpd_clks[i], in enable_hpd_clocks()
73 config->hpd_freq[i]); in enable_hpd_clocks()
77 config->hpd_clk_names[i], ret); in enable_hpd_clocks()
80 ret = clk_prepare_enable(hdmi->hpd_clks[i]); in enable_hpd_clocks()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/panel/
Dpanel-edp.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/display/panel/panel-edp.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Douglas Anderson <dianders@chromium.org>
14 to a Embedded DisplayPort AUX bus (see display/dp-aux-bus.yaml) without
17 board, either for second-sourcing purposes or to support multiple SKUs
51 :<T1>:<T2>: :<--T10-->:<T11>:<T12>:
52 : +-----------------------+---------+---------+
53 eDP -----------+ Black video | Src vid | Blk vid +
[all …]
Dpanel-common.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/display/panel/panel-common.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Thierry Reding <thierry.reding@gmail.com>
11 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
24 width-mm:
29 height-mm:
43 non-descriptive information. For instance an LCD panel in a system that
55 panel-timing:
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/bridge/
Danalogix,dp.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Rob Herring <robh@kernel.org>
21 clock-names: true
25 phy-names:
28 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:
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/
Damdgpu_atombios.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
35 #include "atom-bits.h"
40 ATOM_GPIO_I2C_ASSIGMENT *gpio, in amdgpu_atombios_lookup_i2c_gpio_quirks() argument
46 …c struct amdgpu_i2c_bus_rec amdgpu_atombios_get_bus_rec_for_i2c_gpio(ATOM_GPIO_I2C_ASSIGMENT *gpio) in amdgpu_atombios_get_bus_rec_for_i2c_gpio() argument
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()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/panel/
Dpanel-common.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/display/panel/panel-common.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Thierry Reding <thierry.reding@gmail.com>
11 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
24 width-mm:
29 height-mm:
43 non-descriptive information. For instance an LCD panel in a system that
55 panel-timing:
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/exynos/
Dexynos_dp.txt5 -dp-controller node
6 -dptx-phy node(defined inside dp-controller node)
8 For the DP-PHY initialization, we use the dptx-phy node.
9 Required properties for dptx-phy: deprecated, use phys and phy-names
10 -reg: deprecated
12 -samsung,enable-mask: deprecated
13 The bit-mask used to enable/disable DP PHY.
15 For the Panel initialization, we read data from dp-controller node.
16 Required properties for dp-controller:
17 -compatible:
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/exynos/
Dexynos_dp.txt5 -dp-controller node
6 -dptx-phy node(defined inside dp-controller node)
8 For the DP-PHY initialization, we use the dptx-phy node.
9 Required properties for dptx-phy: deprecated, use phys and phy-names
10 -reg: deprecated
12 -samsung,enable-mask: deprecated
13 The bit-mask used to enable/disable DP PHY.
15 For the Panel initialization, we read data from dp-controller node.
16 Required properties for dp-controller:
17 -compatible:
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/bridge/
Danalogix_dp.txt3 Required properties for dp-controller:
4 -compatible:
6 * "samsung,exynos5-dp"
7 * "rockchip,rk3288-dp"
8 * "rockchip,rk3399-edp"
9 -reg:
12 -interrupts:
14 -clocks:
16 -clock-names:
18 -phys:
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/bridge/
Ddisplay-connector.c1 // SPDX-License-Identifier: GPL-2.0
6 #include <linux/gpio/consumer.h>
34 return flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR ? 0 : -EINVAL; in display_connector_attach()
42 if (conn->hpd_gpio) { in display_connector_detect()
43 if (gpiod_get_value_cansleep(conn->hpd_gpio)) in display_connector_detect()
49 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc)) in display_connector_detect()
52 switch (conn->bridge.type) { in display_connector_detect()
69 * Composite and S-Video connectors have no other detection in display_connector_detect()
70 * mean than the HPD GPIO. For VGA connectors, even if we have in display_connector_detect()
84 return drm_get_edid(connector, conn->bridge.ddc); in display_connector_get_edid()
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/
Damdgpu_atombios.c2 * Copyright 2007-8 Advanced Micro Devices, Inc.
35 #include "atom-bits.h"
40 ATOM_GPIO_I2C_ASSIGMENT *gpio, in amdgpu_atombios_lookup_i2c_gpio_quirks() argument
46 …c struct amdgpu_i2c_bus_rec amdgpu_atombios_get_bus_rec_for_i2c_gpio(ATOM_GPIO_I2C_ASSIGMENT *gpio) in amdgpu_atombios_get_bus_rec_for_i2c_gpio() argument
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()
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/dc/gpio/dcn10/
Dhw_factory_dcn10.c2 * Copyright 2013-15 Advanced Micro Devices, Inc.
43 #define block HPD
155 generic->regs = &generic_regs[en]; in define_generic_registers()
156 generic->shifts = &generic_shift[en]; in define_generic_registers()
157 generic->masks = &generic_mask[en]; in define_generic_registers()
158 generic->base.regs = &generic_regs[en].gpio; in define_generic_registers()
167 switch (pin->id) { in define_ddc_registers()
169 ddc->regs = &ddc_data_regs[en]; in define_ddc_registers()
170 ddc->base.regs = &ddc_data_regs[en].gpio; in define_ddc_registers()
173 ddc->regs = &ddc_clk_regs[en]; in define_ddc_registers()
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/gpio/dcn10/
Dhw_factory_dcn10.c2 * Copyright 2013-15 Advanced Micro Devices, Inc.
43 #define block HPD
155 generic->regs = &generic_regs[en]; in define_generic_registers()
156 generic->shifts = &generic_shift[en]; in define_generic_registers()
157 generic->masks = &generic_mask[en]; in define_generic_registers()
158 generic->base.regs = &generic_regs[en].gpio; in define_generic_registers()
167 switch (pin->id) { in define_ddc_registers()
169 ddc->regs = &ddc_data_regs[en]; in define_ddc_registers()
170 ddc->base.regs = &ddc_data_regs[en].gpio; in define_ddc_registers()
173 ddc->regs = &ddc_clk_regs[en]; in define_ddc_registers()
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/msm/
Dedp.txt4 - compatible:
5 * "qcom,mdss-edp"
6 - reg: Physical base address and length of the registers of controller and PLL
7 - reg-names: The names of register regions. The following regions are required:
10 - interrupts: The interrupt signal from the eDP block.
11 - power-domains: Should be <&mmcc MDSS_GDSC>.
12 - clocks: device clocks
13 See Documentation/devicetree/bindings/clock/clock-bindings.txt for details.
14 - clock-names: the following clocks are required:
20 - #clock-cells: The value should be 1.
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/tegra/
Dnvidia,tegra20-hdmi.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/display/tegra/nvidia,tegra20-hdmi.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Thierry Reding <thierry.reding@gmail.com>
11 - Jon Hunter <jonathanh@nvidia.com>
15 pattern: "^hdmi@[0-9a-f]+$"
19 - enum:
20 - nvidia,tegra20-hdmi
21 - nvidia,tegra30-hdmi
[all …]

12345678910>>...16