/Linux-v5.15/drivers/gpu/drm/mediatek/ |
D | mtk_hdmi_ddc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <linux/i2c.h> 62 static inline void sif_set_bit(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_set_bit() argument 65 writel(readl(ddc->regs + offset) | val, ddc->regs + offset); in sif_set_bit() 68 static inline void sif_clr_bit(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_clr_bit() argument 71 writel(readl(ddc->regs + offset) & ~val, ddc->regs + offset); in sif_clr_bit() 74 static inline bool sif_bit_is_set(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_bit_is_set() argument 77 return (readl(ddc->regs + offset) & val) == val; in sif_bit_is_set() 80 static inline void sif_write_mask(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_write_mask() argument 86 tmp = readl(ddc->regs + offset); in sif_write_mask() [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/display/mediatek/ |
D | mediatek,hdmi-ddc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/mediatek/mediatek,hdmi-ddc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Mediatek HDMI DDC Device Tree Bindings 10 - CK Hu <ck.hu@mediatek.com> 11 - Jitao shi <jitao.shi@mediatek.com> 14 The HDMI DDC i2c controller is used to interface with the HDMI DDC pins. 19 - mediatek,mt7623-hdmi-ddc 20 - mediatek,mt8167-hdmi-ddc [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/i2c/ |
D | i2c-mux-pinctrl.txt | 1 Pinctrl-based I2C Bus Mux 3 This binding describes an I2C bus multiplexer that uses pin multiplexing to 4 route the I2C signals, and represents the pin multiplexing configuration 7 +-----+ +-----+ 9 +------------------------+ +-----+ +-----+ 11 | /----|------+--------+ 12 | +---+ +------+ | child bus A, on first set of pins 13 | |I2C|---|Pinmux| | 14 | +---+ +------+ | child bus B, on second set of pins 15 | \----|------+--------+--------+ [all …]
|
/Linux-v5.15/drivers/video/fbdev/matrox/ |
D | i2c-matroxfb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * (c) 1998-2002 Petr Vandrovec <vandrove@vc.cvut.cz> 16 #include <linux/i2c.h> 18 #include <linux/i2c-algo-bit.h> 20 /* MGA-TVO I2C for G200, G400 */ 23 /* primary head DDC for Mystique(?), G100, G200, G400 */ 26 /* primary head DDC for Millennium, Millennium II */ 29 /* secondary head DDC for G400 */ 63 /* software I2C functions */ 74 matroxfb_i2c_set(b->minfo, b->mask.data, state); in matroxfb_gpio_setsda() [all …]
|
/Linux-v5.15/drivers/gpu/drm/amd/display/dc/dce/ |
D | dce_i2c_hw.c | 35 dce_i2c_hw->ctx 37 dce_i2c_hw->regs->reg 41 dce_i2c_hw->shifts->field_name, dce_i2c_hw->masks->field_name 59 DC_I2C_TRANSACTION_COUNT, dce_i2c_hw->transaction_count - 1); in execute_transaction() 61 /* start I2C transfer */ in execute_transaction() 67 dce_i2c_hw->transaction_count = 0; in execute_transaction() 68 dce_i2c_hw->buffer_used_bytes = 0; in execute_transaction() 80 else if (value & dce_i2c_hw->masks->DC_I2C_SW_STOPPED_ON_NACK) in get_channel_status() 82 else if (value & dce_i2c_hw->masks->DC_I2C_SW_TIMEOUT) in get_channel_status() 84 else if (value & dce_i2c_hw->masks->DC_I2C_SW_ABORTED) in get_channel_status() [all …]
|
D | dce_i2c_sw.c | 38 dce_i2c_sw->ctx = ctx; in dce_i2c_sw_construct() 42 struct ddc *ddc, in read_bit_from_ddc() argument 48 dal_gpio_get_value(ddc->pin_data, &value); in read_bit_from_ddc() 50 dal_gpio_get_value(ddc->pin_clock, &value); in read_bit_from_ddc() 56 struct ddc *ddc, in write_bit_to_ddc() argument 63 dal_gpio_set_value(ddc->pin_data, value); in write_bit_to_ddc() 65 dal_gpio_set_value(ddc->pin_clock, value); in write_bit_to_ddc() 72 dal_ddc_close(dce_i2c_sw->ddc); in release_engine_dce_sw() 73 dce_i2c_sw->ddc = NULL; in release_engine_dce_sw() 78 struct ddc *ddc, in wait_for_scl_high_sw() argument [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/display/rockchip/ |
D | rockchip,dw-hdmi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/rockchip/rockchip,dw-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Mark Yao <markyao0591@gmail.com> 17 - $ref: ../bridge/synopsys,dw-hdmi.yaml# 22 - rockchip,rk3228-dw-hdmi 23 - rockchip,rk3288-dw-hdmi 24 - rockchip,rk3328-dw-hdmi 25 - rockchip,rk3399-dw-hdmi [all …]
|
/Linux-v5.15/drivers/gpu/drm/bridge/ |
D | display-connector.c | 1 // SPDX-License-Identifier: GPL-2.0 7 #include <linux/i2c.h> 37 return flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR ? 0 : -EINVAL; in display_connector_attach() 45 if (conn->hpd_gpio) { in display_connector_detect() 46 if (gpiod_get_value_cansleep(conn->hpd_gpio)) in display_connector_detect() 52 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc)) in display_connector_detect() 55 switch (conn->bridge.type) { in display_connector_detect() 62 * For DVI and HDMI connectors a DDC probe failure indicates in display_connector_detect() 72 * Composite and S-Video connectors have no other detection in display_connector_detect() 74 * an I2C bus, we can't assume that the cable is disconnected in display_connector_detect() [all …]
|
/Linux-v5.15/drivers/gpu/drm/zte/ |
D | zx_vga.c | 1 // SPDX-License-Identifier: GPL-2.0-only 37 struct zx_vga_i2c *ddc; member 51 struct zx_vga_pwrctrl *pwrctrl = &vga->pwrctrl; in zx_vga_encoder_enable() 54 regmap_update_bits(pwrctrl->regmap, pwrctrl->reg, pwrctrl->mask, in zx_vga_encoder_enable() 55 pwrctrl->mask); in zx_vga_encoder_enable() 57 vou_inf_enable(VOU_VGA, encoder->crtc); in zx_vga_encoder_enable() 63 struct zx_vga_pwrctrl *pwrctrl = &vga->pwrctrl; in zx_vga_encoder_disable() 65 vou_inf_disable(VOU_VGA, encoder->crtc); in zx_vga_encoder_disable() 68 regmap_update_bits(pwrctrl->regmap, pwrctrl->reg, pwrctrl->mask, 0); in zx_vga_encoder_disable() 83 * Clear both detection bits to switch I2C bus from device in zx_vga_connector_get_modes() [all …]
|
/Linux-v5.15/drivers/gpu/drm/rockchip/ |
D | rk3066_hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Zheng Yang <zhengyang@rock-chips.com> 37 struct mutex i2c_lock; /* For i2c operation. */ 52 struct rk3066_hdmi_i2c *i2c; member 53 struct i2c_adapter *ddc; member 65 return readl_relaxed(hdmi->regs + offset); in hdmi_readb() 70 writel_relaxed(val, hdmi->regs + offset); in hdmi_writeb() 86 ddc_bus_freq = (hdmi->tmdsclk >> 2) / HDMI_SCL_RATE; in rk3066_hdmi_i2c_init() 108 DRM_DEV_DEBUG(hdmi->dev, "mode :%d\n", mode); in rk3066_hdmi_set_power_mode() 109 DRM_DEV_DEBUG(hdmi->dev, "current_mode :%d\n", current_mode); in rk3066_hdmi_set_power_mode() [all …]
|
D | inno_hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Zheng Yang <zhengyang@rock-chips.com> 5 * Yakir Yang <ykk@rock-chips.com> 61 struct inno_hdmi_i2c *i2c; member 62 struct i2c_adapter *ddc; member 82 * R = 1.164*Y + 1.596*V - 204 83 * G = 1.164*Y - 0.391*U - 0.813*V + 154 84 * B = 1.164*Y + 2.018*U - 258 93 * R = Y + 1.402*V - 248 94 * G = Y - 0.344*U - 0.714*V + 135 [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/display/connector/ |
D | vga-connector.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/display/connector/vga-connector.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Laurent Pinchart <Laurent.pinchart@ideasonboard.com> 14 const: vga-connector 18 ddc-i2c-bus: 19 description: phandle link to the I2C controller used for DDC EDID probing 27 - compatible 28 - port [all …]
|
D | hdmi-connector.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/display/connector/hdmi-connector.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Laurent Pinchart <Laurent.pinchart@ideasonboard.com> 14 const: hdmi-connector 19 - a # Standard full size 20 - b # Never deployed? 21 - c # Mini 22 - d # Micro [all …]
|
D | dvi-connector.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/display/connector/dvi-connector.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Laurent Pinchart <Laurent.pinchart@ideasonboard.com> 14 const: dvi-connector 18 hpd-gpios: 22 ddc-i2c-bus: 23 description: phandle link to the I2C controller used for DDC EDID probing 34 dual-link: [all …]
|
/Linux-v5.15/arch/arm/boot/dts/ |
D | tegra20-tamonten.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 9 rtc0 = "/i2c@7000d000/tps6586x@34"; 15 stdout-path = "serial0:115200n8"; 24 vdd-supply = <&hdmi_vdd_reg>; 25 pll-supply = <&hdmi_pll_reg>; 27 nvidia,ddc-i2c-bus = <&hdmi_ddc>; 28 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7) 34 pinctrl-names = "default"; 35 pinctrl-0 = <&state_default>; 213 nvidia,pins = "ddc", "dta", "dtd", "kbca", [all …]
|
D | tegra20-ventana.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 5 #include <dt-bindings/thermal/thermal.h> 7 #include "tegra20-cpu-opp.dtsi" 8 #include "tegra20-cpu-opp-microvolt.dtsi" 15 rtc0 = "/i2c@7000d000/tps6586x@34"; 21 stdout-path = "serial0:115200n8"; 40 vdd-supply = <&hdmi_vdd_reg>; 41 pll-supply = <&hdmi_pll_reg>; [all …]
|
D | tegra20-seaboard.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/input.h> 12 rtc0 = "/i2c@7000d000/tps6586x@34"; 18 stdout-path = "serial0:115200n8"; 37 vdd-supply = <&hdmi_vdd_reg>; 38 pll-supply = <&hdmi_pll_reg>; 39 hdmi-supply = <&vdd_hdmi>; 41 nvidia,ddc-i2c-bus = <&hdmi_ddc>; 42 nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7) [all …]
|
/Linux-v5.15/drivers/gpu/drm/amd/display/dc/gpio/ |
D | hw_ddc.c | 2 * Copyright 2012-15 Advanced Micro Devices, Inc. 42 ddc->shifts->field_name, ddc->masks->field_name 45 ddc->base.base.ctx 47 (ddc->regs->reg) 54 dal_hw_gpio_destruct(&pin->base); in dal_hw_ddc_destruct() 73 struct hw_ddc *ddc = HW_DDC_FROM_BASE(ptr); in set_config() local 80 hw_gpio = &ddc->base; in set_config() 92 switch (config_data->config.ddc.type) { in set_config() 94 /* On plug-in, there is a transient level on the pad in set_config() 95 * which must be discharged through the internal pull-down. in set_config() [all …]
|
/Linux-v5.15/drivers/gpu/drm/ |
D | drm_dp_dual_mode_helper.c | 26 #include <linux/i2c.h> 40 * Adaptor registers (if any) and the sink DDC bus may be accessed via I2C. 43 * Adaptor registers and sink DDC bus can be accessed either via I2C or 44 * I2C-over-AUX. Source devices may choose to implement either of these 51 * drm_dp_dual_mode_read - Read from the DP dual mode adaptor register(s) 52 * @adapter: I2C adapter for the DDC bus 86 return -EPROTO; in drm_dp_dual_mode_read() 93 * drm_dp_dual_mode_write - Write to the DP dual mode adaptor register(s) 94 * @adapter: I2C adapter for the DDC bus 119 return -ENOMEM; in drm_dp_dual_mode_write() [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/gnss/ |
D | u-blox.txt | 1 u-blox GNSS Receiver DT binding 3 The u-blox GNSS receivers can use UART, DDC (I2C), SPI and USB interfaces. 10 - compatible : Must be one of 12 "u-blox,neo-6m" 13 "u-blox,neo-8" 14 "u-blox,neo-m8" 16 - vcc-supply : Main voltage regulator 18 Required properties (DDC): 19 - reg : DDC (I2C) slave address 22 - reg : SPI chip select address [all …]
|
/Linux-v5.15/drivers/gpu/drm/amd/display/dc/core/ |
D | dc_link_ddc.c | 2 * Copyright 2012-15 Advanced Micro Devices, Inc. 55 /* DVI-HDMI dongle slave address for retrieving dongle signature*/ 63 /* DP-HDMI dongle slave address for retrieving dongle signature*/ 65 static const uint8_t dp_hdmi_dongle_signature_str[] = "DP-HDMI ADAPTOR"; 69 int8_t id[15];/* "DP-HDMI ADAPTOR"*/ 145 &payloads->payloads, ctx, count, sizeof(struct i2c_payload))) in dal_ddc_i2c_payloads_create() 153 return (struct i2c_payload *)p->payloads.container; in dal_ddc_i2c_payloads_get() 158 return p->payloads.count; in dal_ddc_i2c_payloads_get_count() 177 .length = DDC_MIN(payload_size, len - pos), in dal_ddc_i2c_payloads_add() 179 dal_vector_append(&payloads->payloads, &payload); in dal_ddc_i2c_payloads_add() [all …]
|
/Linux-v5.15/drivers/gpu/drm/radeon/ |
D | radeon_connectors.c | 2 * Copyright 2007-8 Advanced Micro Devices, Inc. 46 if (ret == -EINVAL) in radeon_dp_handle_hpd() 52 struct drm_device *dev = connector->dev; in radeon_connector_hotplug() 53 struct radeon_device *rdev = dev->dev_private; in radeon_connector_hotplug() 56 if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) { in radeon_connector_hotplug() 58 radeon_connector->con_priv; in radeon_connector_hotplug() 60 if (radeon_connector->is_mst_connector) in radeon_connector_hotplug() 62 if (dig_connector->is_mst) { 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() [all …]
|
/Linux-v5.15/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_connectors.c | 2 * Copyright 2007-8 Advanced Micro Devices, Inc. 44 struct drm_device *dev = connector->dev; in amdgpu_connector_hotplug() 51 if (amdgpu_connector->hpd.hpd == AMDGPU_HPD_NONE) in amdgpu_connector_hotplug() 54 amdgpu_display_hpd_set_polarity(adev, amdgpu_connector->hpd.hpd); in amdgpu_connector_hotplug() 57 if (connector->dpms != DRM_MODE_DPMS_ON) in amdgpu_connector_hotplug() 61 if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) { in amdgpu_connector_hotplug() 63 amdgpu_connector->con_priv; in amdgpu_connector_hotplug() 66 if (dig_connector->dp_sink_type != CONNECTOR_OBJECT_ID_DISPLAYPORT) in amdgpu_connector_hotplug() 70 dig_connector->dp_sink_type = amdgpu_atombios_dp_get_sinktype(amdgpu_connector); in amdgpu_connector_hotplug() 72 * passive dp->(dvi|hdmi) adaptor in amdgpu_connector_hotplug() [all …]
|
/Linux-v5.15/Documentation/devicetree/bindings/display/panel/ |
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-v5.15/Documentation/devicetree/bindings/display/ |
D | brcm,bcm2835-hdmi.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/display/brcm,bcm2835-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Eric Anholt <eric@anholt.net> 14 const: brcm,bcm2835-hdmi 18 - description: HDMI register range 19 - description: HD register range 26 - description: The pixel clock 27 - description: The HDMI state machine clock [all …]
|