/linux-6.12.1/Documentation/devicetree/bindings/media/cec/ |
D | cec-gpio.yaml | 1 # 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 …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/link/protocols/ |
D | link_hpd.c | 28 * 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 …]
|
/linux-6.12.1/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
D | conn.c | 28 #include <subdev/gpio.h> 46 static const u8 hpd[] = { 0x07, 0x08, 0x51, 0x52, 0x5e, 0x5f, 0x60 }; in nvkm_conn_ctor() local 47 struct nvkm_gpio *gpio = disp->engine.subdev.device->gpio; in nvkm_conn_ctor() local 51 conn->disp = disp; in nvkm_conn_ctor() 52 conn->index = index; in nvkm_conn_ctor() 53 conn->info = *info; in nvkm_conn_ctor() 54 conn->info.hpd = DCB_GPIO_UNUSED; in nvkm_conn_ctor() 56 CONN_DBG(conn, "type %02x loc %d hpd %02x dp %x di %x sr %x lcdid %x", in nvkm_conn_ctor() 57 info->type, info->location, info->hpd, info->dp, in nvkm_conn_ctor() 58 info->di, info->sr, info->lcdid); in nvkm_conn_ctor() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/ |
D | hw_hpd.c | 2 * 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 …]
|
D | gpio_base.c | 2 * Copyright 2012-15 Advanced Micro Devices, Inc. 27 * Pre-requisites: headers required by header of this unit 40 * Post-requisites: headers required by this unit 53 struct gpio *gpio, in dal_gpio_open() argument 56 return dal_gpio_open_ex(gpio, mode); in dal_gpio_open() 60 struct gpio *gpio, in dal_gpio_open_ex() argument 63 if (gpio->pin) { in dal_gpio_open_ex() 68 // No action if allocation failed during gpio construct in dal_gpio_open_ex() 69 if (!gpio->hw_container.ddc) { in dal_gpio_open_ex() 73 gpio->mode = mode; in dal_gpio_open_ex() [all …]
|
/linux-6.12.1/drivers/gpu/drm/msm/hdmi/ |
D | hdmi_hpd.c | 1 // 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 …]
|
/linux-6.12.1/Documentation/admin-guide/media/ |
D | cec.rst | 1 .. 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 …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/panel/ |
D | panel-edp.yaml | 1 # 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 …]
|
D | panel-common.yaml | 1 # 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 …]
|
/linux-6.12.1/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_atombios.c | 2 * 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 …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/bridge/ |
D | analogix,dp.yaml | 1 # 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 …]
|
D | ti,sn65dsi86.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Douglas Anderson <dianders@chromium.org> 23 enable-gpios: 25 description: GPIO specifier for bridge_en pin (active high). 27 suspend-gpios: 29 description: GPIO specifier for GPIO1 pin on bridge (active low). 31 no-hpd: 34 Set if the HPD line on the bridge isn't hooked up to anything or is [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dcn10/ |
D | hw_factory_dcn10.c | 2 * 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 …]
|
/linux-6.12.1/drivers/gpu/drm/radeon/ |
D | radeon_combios.c | 3 * Copyright 2007-8 Advanced Micro Devices, Inc. 133 struct radeon_device *rdev = dev->dev_private; in combios_get_table_offset() 137 if (!rdev->bios) in combios_get_table_offset() 362 size = RBIOS8(rdev->bios_header_start + 0x6); in combios_get_table_offset() 365 offset = RBIOS16(rdev->bios_header_start + check_offset); in combios_get_table_offset() 379 raw = rdev->bios + edid_info; in radeon_combios_check_hardcoded_edid() 388 rdev->mode_info.bios_hardcoded_edid = edid; in radeon_combios_check_hardcoded_edid() 396 return drm_edid_duplicate(drm_edid_raw(rdev->mode_info.bios_hardcoded_edid)); in radeon_bios_get_hardcoded_edid() 447 if (rdev->family == CHIP_RS300 || in combios_setup_i2c_bus() 448 rdev->family == CHIP_RS400 || in combios_setup_i2c_bus() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/tegra/ |
D | nvidia,tegra20-hdmi.yaml | 1 # 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 …]
|
/linux-6.12.1/drivers/gpu/drm/panel/ |
D | panel-samsung-atna33xc20.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * by the DRM_PANEL_SIMPLE driver because its power sequencing is non-standard. 11 #include <linux/gpio/consumer.h> 22 /* T3 VCC to HPD high is max 200 ms */ 70 if (p->el3_was_on) in atana33xc20_suspend() 71 atana33xc20_wait(p->el_on3_off_time, 150); in atana33xc20_suspend() 73 drm_dp_dpcd_set_powered(p->aux, false); in atana33xc20_suspend() 74 ret = regulator_disable(p->supply); in atana33xc20_suspend() 77 p->powered_off_time = ktime_get_boottime(); in atana33xc20_suspend() 78 p->el3_was_on = false; in atana33xc20_suspend() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/samsung/ |
D | samsung,exynos-hdmi.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/display/samsung/samsung,exynos-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Inki Dae <inki.dae@samsung.com> 11 - Seung-Woo Kim <sw0312.kim@samsung.com> 12 - Kyungmin Park <kyungmin.park@samsung.com> 13 - Krzysztof Kozlowski <krzk@kernel.org> 18 - samsung,exynos4210-hdmi 19 - samsung,exynos4212-hdmi [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dce120/ |
D | hw_factory_dce120.c | 2 * Copyright 2013-15 Advanced Micro Devices, Inc. 42 #define block HPD 135 switch (pin->id) { in define_ddc_registers() 137 ddc->regs = &ddc_data_regs[en]; in define_ddc_registers() 138 ddc->base.regs = &ddc_data_regs[en].gpio; in define_ddc_registers() 141 ddc->regs = &ddc_clk_regs[en]; in define_ddc_registers() 142 ddc->base.regs = &ddc_clk_regs[en].gpio; in define_ddc_registers() 149 ddc->shifts = &ddc_shift; in define_ddc_registers() 150 ddc->masks = &ddc_mask; in define_ddc_registers() 156 struct hw_hpd *hpd = HW_HPD_FROM_BASE(pin); in define_hpd_registers() local [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dcn21/ |
D | hw_factory_dcn21.c | 2 * Copyright 2013-15 Advanced Micro Devices, Inc. 47 #define block HPD 163 generic->regs = &generic_regs[en]; in define_generic_registers() 164 generic->shifts = &generic_shift[en]; in define_generic_registers() 165 generic->masks = &generic_mask[en]; in define_generic_registers() 166 generic->base.regs = &generic_regs[en].gpio; in define_generic_registers() 175 switch (pin->id) { in define_ddc_registers() 177 ddc->regs = &ddc_data_regs_dcn[en]; in define_ddc_registers() 178 ddc->base.regs = &ddc_data_regs_dcn[en].gpio; in define_ddc_registers() 181 ddc->regs = &ddc_clk_regs_dcn[en]; in define_ddc_registers() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dce80/ |
D | hw_factory_dce80.c | 2 * Copyright 2012-15 Advanced Micro Devices, Inc. 122 switch (pin->id) { in define_ddc_registers() 124 ddc->regs = &ddc_data_regs[en]; in define_ddc_registers() 125 ddc->base.regs = &ddc_data_regs[en].gpio; in define_ddc_registers() 128 ddc->regs = &ddc_clk_regs[en]; in define_ddc_registers() 129 ddc->base.regs = &ddc_clk_regs[en].gpio; in define_ddc_registers() 136 ddc->shifts = &ddc_shift; in define_ddc_registers() 137 ddc->masks = &ddc_mask; in define_ddc_registers() 143 struct hw_hpd *hpd = HW_HPD_FROM_BASE(pin); in define_hpd_registers() local 145 hpd->regs = &hpd_regs[en]; in define_hpd_registers() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dce60/ |
D | hw_factory_dce60.c | 122 switch (pin->id) { in define_ddc_registers() 124 ddc->regs = &ddc_data_regs[en]; in define_ddc_registers() 125 ddc->base.regs = &ddc_data_regs[en].gpio; in define_ddc_registers() 128 ddc->regs = &ddc_clk_regs[en]; in define_ddc_registers() 129 ddc->base.regs = &ddc_clk_regs[en].gpio; in define_ddc_registers() 136 ddc->shifts = &ddc_shift; in define_ddc_registers() 137 ddc->masks = &ddc_mask; in define_ddc_registers() 143 struct hw_hpd *hpd = HW_HPD_FROM_BASE(pin); in define_hpd_registers() local 145 hpd->regs = &hpd_regs[en]; in define_hpd_registers() 146 hpd->shifts = &hpd_shift; in define_hpd_registers() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dcn401/ |
D | hw_factory_dcn401.c | 1 // SPDX-License-Identifier: MIT 29 #define block HPD 188 generic->regs = &generic_regs[en]; in define_generic_registers() 189 generic->shifts = &generic_shift[en]; in define_generic_registers() 190 generic->masks = &generic_mask[en]; in define_generic_registers() 191 generic->base.regs = &generic_regs[en].gpio; in define_generic_registers() 200 switch (pin->id) { in define_ddc_registers() 202 ddc->regs = &ddc_data_regs_dcn[en]; in define_ddc_registers() 203 ddc->base.regs = &ddc_data_regs_dcn[en].gpio; in define_ddc_registers() 206 ddc->regs = &ddc_clk_regs_dcn[en]; in define_ddc_registers() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dcn20/ |
D | hw_factory_dcn20.c | 2 * Copyright 2013-15 Advanced Micro Devices, Inc. 49 #define block HPD 187 switch (pin->id) { in define_ddc_registers() 189 ddc->regs = &ddc_data_regs_dcn[en]; in define_ddc_registers() 190 ddc->base.regs = &ddc_data_regs_dcn[en].gpio; in define_ddc_registers() 193 ddc->regs = &ddc_clk_regs_dcn[en]; in define_ddc_registers() 194 ddc->base.regs = &ddc_clk_regs_dcn[en].gpio; in define_ddc_registers() 201 ddc->shifts = &ddc_shift[en]; in define_ddc_registers() 202 ddc->masks = &ddc_mask[en]; in define_ddc_registers() 208 struct hw_hpd *hpd = HW_HPD_FROM_BASE(pin); in define_hpd_registers() local [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dcn30/ |
D | hw_factory_dcn30.c | 56 #define block HPD 192 generic->regs = &generic_regs[en]; in define_generic_registers() 193 generic->shifts = &generic_shift[en]; in define_generic_registers() 194 generic->masks = &generic_mask[en]; in define_generic_registers() 195 generic->base.regs = &generic_regs[en].gpio; in define_generic_registers() 204 switch (pin->id) { in define_ddc_registers() 206 ddc->regs = &ddc_data_regs_dcn[en]; in define_ddc_registers() 207 ddc->base.regs = &ddc_data_regs_dcn[en].gpio; in define_ddc_registers() 210 ddc->regs = &ddc_clk_regs_dcn[en]; in define_ddc_registers() 211 ddc->base.regs = &ddc_clk_regs_dcn[en].gpio; in define_ddc_registers() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/gpio/dcn315/ |
D | hw_factory_dcn315.c | 53 #define block HPD 184 generic->regs = &generic_regs[en]; in define_generic_registers() 185 generic->shifts = &generic_shift[en]; in define_generic_registers() 186 generic->masks = &generic_mask[en]; in define_generic_registers() 187 generic->base.regs = &generic_regs[en].gpio; in define_generic_registers() 196 switch (pin->id) { in define_ddc_registers() 198 ddc->regs = &ddc_data_regs_dcn[en]; in define_ddc_registers() 199 ddc->base.regs = &ddc_data_regs_dcn[en].gpio; in define_ddc_registers() 202 ddc->regs = &ddc_clk_regs_dcn[en]; in define_ddc_registers() 203 ddc->base.regs = &ddc_clk_regs_dcn[en].gpio; in define_ddc_registers() [all …]
|