/linux-6.12.1/Documentation/devicetree/bindings/i2c/ |
D | i2c-mux-pinctrl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/i2c/i2c-mux-pinctrl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Pinctrl-based I2C Bus Mux 10 - Wolfram Sang <wsa@kernel.org> 13 This binding describes an I2C bus multiplexer that uses pin multiplexing to route the I2C 17 +-----+ +-----+ 19 +------------------------+ +-----+ +-----+ 21 | /----|------+--------+ [all …]
|
/linux-6.12.1/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-6.12.1/drivers/gpu/drm/bridge/ |
D | display-connector.c | 1 // SPDX-License-Identifier: GPL-2.0 7 #include <linux/i2c.h> 9 #include <linux/media-bus-format.h> 39 return flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR ? 0 : -EINVAL; in display_connector_attach() 47 if (conn->hpd_gpio) { in display_connector_detect() 48 if (gpiod_get_value_cansleep(conn->hpd_gpio)) in display_connector_detect() 54 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc)) in display_connector_detect() 57 switch (conn->bridge.type) { in display_connector_detect() 64 * For DVI and HDMI connectors a DDC probe failure indicates in display_connector_detect() 74 * Composite and S-Video connectors have no other detection in display_connector_detect() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/bridge/ |
D | synopsys,dw-hdmi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/bridge/synopsys,dw-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> 16 bindings for the platform-specific integrations of the DWC HDMI TX. 26 reg-io-width: 36 - description: The bus clock for either AHB and APB 37 - description: The internal register configuration clock 40 clock-names: [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 …]
|
D | nvidia,tegra124-sor.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/tegra/nvidia,tegra124-sor.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 19 pattern: "^sor@[0-9a-f]+$" 23 - enum: 24 - nvidia,tegra124-sor 25 - nvidia,tegra210-sor [all …]
|
/linux-6.12.1/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-6.12.1/drivers/gpu/drm/display/ |
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 69 * As sub-addressing is not supported by all adaptors, in drm_dp_dual_mode_read() 94 return -ENOMEM; in drm_dp_dual_mode_read() 108 return -EPROTO; in drm_dp_dual_mode_read() 115 * drm_dp_dual_mode_write - Write to the DP dual mode adaptor register(s) [all …]
|
/linux-6.12.1/drivers/gpu/drm/mgag200/ |
D | mgag200_ddc.c | 14 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 30 #include <linux/i2c-algo-bit.h> 31 #include <linux/i2c.h> 76 struct mgag200_ddc *ddc = data; in mgag200_ddc_algo_bit_data_setsda() local 78 mga_i2c_set(ddc->mdev, ddc->data, state); in mgag200_ddc_algo_bit_data_setsda() 83 struct mgag200_ddc *ddc = data; in mgag200_ddc_algo_bit_data_setscl() local 85 mga_i2c_set(ddc->mdev, ddc->clock, state); in mgag200_ddc_algo_bit_data_setscl() 90 struct mgag200_ddc *ddc = data; in mgag200_ddc_algo_bit_data_getsda() local 92 return (mga_i2c_read_gpio(ddc->mdev) & ddc->data) ? 1 : 0; in mgag200_ddc_algo_bit_data_getsda() 97 struct mgag200_ddc *ddc = data; in mgag200_ddc_algo_bit_data_getscl() local [all …]
|
/linux-6.12.1/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-6.12.1/drivers/gpu/drm/mediatek/ |
D | mtk_hdmi_ddc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <linux/i2c.h> 65 static inline void sif_set_bit(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_set_bit() argument 68 writel(readl(ddc->regs + offset) | val, ddc->regs + offset); in sif_set_bit() 71 static inline void sif_clr_bit(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_clr_bit() argument 74 writel(readl(ddc->regs + offset) & ~val, ddc->regs + offset); in sif_clr_bit() 77 static inline bool sif_bit_is_set(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_bit_is_set() argument 80 return (readl(ddc->regs + offset) & val) == val; in sif_bit_is_set() 83 static inline void sif_write_mask(struct mtk_hdmi_ddc *ddc, unsigned int offset, in sif_write_mask() argument 89 tmp = readl(ddc->regs + offset); in sif_write_mask() [all …]
|
/linux-6.12.1/drivers/gpu/drm/ast/ |
D | ast_ddc.c | 1 // SPDX-License-Identifier: MIT 13 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 24 #include <linux/i2c-algo-bit.h> 25 #include <linux/i2c.h> 42 struct ast_ddc *ddc = data; in ast_ddc_algo_bit_data_setsda() local 43 struct ast_device *ast = ddc->ast; in ast_ddc_algo_bit_data_setsda() 58 struct ast_ddc *ddc = data; in ast_ddc_algo_bit_data_setscl() local 59 struct ast_device *ast = ddc->ast; in ast_ddc_algo_bit_data_setscl() 74 struct ast_ddc *ddc = i2c_get_adapdata(adapter); in ast_ddc_algo_bit_data_pre_xfer() local 75 struct ast_device *ast = ddc->ast; in ast_ddc_algo_bit_data_pre_xfer() [all …]
|
/linux-6.12.1/arch/arm/boot/dts/nvidia/ |
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-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-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-6.12.1/Documentation/devicetree/bindings/display/ |
D | dp-aux-bus.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/dp-aux-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: DisplayPort AUX bus 10 - Douglas Anderson <dianders@chromium.org> 14 are hooked up to them. This is the DP AUX bus. Over the DP AUX bus 16 particular, DP sinks support DDC over DP AUX which allows tunneling 17 a standard I2C DDC connection over the AUX channel. 20 of the DP controller under the "aux-bus" node. [all …]
|
/linux-6.12.1/drivers/gpu/drm/radeon/ |
D | radeon_connectors.c | 2 * Copyright 2007-8 Advanced Micro Devices, Inc. 42 struct drm_device *dev = connector->dev; in radeon_connector_hotplug() 43 struct radeon_device *rdev = dev->dev_private; in radeon_connector_hotplug() 49 if (radeon_connector->hpd.hpd == RADEON_HPD_NONE) in radeon_connector_hotplug() 52 radeon_hpd_set_polarity(rdev, radeon_connector->hpd.hpd); in radeon_connector_hotplug() 56 if (connector->dpms != DRM_MODE_DPMS_ON) in radeon_connector_hotplug() 60 if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) { in radeon_connector_hotplug() 62 radeon_connector->con_priv; in radeon_connector_hotplug() 65 if (dig_connector->dp_sink_type != CONNECTOR_OBJECT_ID_DISPLAYPORT) in radeon_connector_hotplug() 69 dig_connector->dp_sink_type = radeon_dp_getsinktype(radeon_connector); in radeon_connector_hotplug() [all …]
|
/linux-6.12.1/drivers/gpu/drm/gma500/ |
D | psb_intel_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2006-2007 Intel Corporation 11 #include <linux/i2c.h> 25 * LVDS I2C backlight control macros 70 ret = dev_priv->regs.saveBLC_PWM_CTL; in psb_intel_lvds_get_max_backlight() 78 dev_err(dev->dev, "BL bug: Reg %08x save %08X\n", in psb_intel_lvds_get_max_backlight() 79 REG_READ(BLC_PWM_CTL), dev_priv->regs.saveBLC_PWM_CTL); in psb_intel_lvds_get_max_backlight() 84 * Set LVDS backlight level by I2C command 94 struct gma_i2c_chan *lvds_i2c_bus = dev_priv->lvds_i2c_bus; in psb_lvds_i2c_set_brightness() 100 .addr = lvds_i2c_bus->target_addr, in psb_lvds_i2c_set_brightness() [all …]
|
D | cdv_intel_lvds.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright © 2006-2011 Intel Corporation 12 #include <linux/i2c.h> 27 * LVDS I2C backlight control macros 72 retval = ((dev_priv->regs.saveBLC_PWM_CTL & in cdv_intel_lvds_get_max_backlight() 97 blc_pwm_ctl = dev_priv->regs.saveBLC_PWM_CTL & in cdv_intel_lvds_set_backlight() 99 dev_priv->regs.saveBLC_PWM_CTL = (blc_pwm_ctl | in cdv_intel_lvds_set_backlight() 124 dev_priv->mode_dev.backlight_duty_cycle); in cdv_intel_lvds_set_power() 139 struct drm_device *dev = encoder->dev; in cdv_intel_lvds_encoder_dpms() 158 struct drm_device *dev = connector->dev; in cdv_intel_lvds_mode_valid() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_connectors.c | 2 * Copyright 2007-8 Advanced Micro Devices, Inc. 45 struct drm_device *dev = connector->dev; in amdgpu_connector_hotplug() 52 if (amdgpu_connector->hpd.hpd == AMDGPU_HPD_NONE) in amdgpu_connector_hotplug() 55 amdgpu_display_hpd_set_polarity(adev, amdgpu_connector->hpd.hpd); in amdgpu_connector_hotplug() 58 if (connector->dpms != DRM_MODE_DPMS_ON) in amdgpu_connector_hotplug() 62 if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) { in amdgpu_connector_hotplug() 64 amdgpu_connector->con_priv; in amdgpu_connector_hotplug() 67 if (dig_connector->dp_sink_type != CONNECTOR_OBJECT_ID_DISPLAYPORT) in amdgpu_connector_hotplug() 71 dig_connector->dp_sink_type = amdgpu_atombios_dp_get_sinktype(amdgpu_connector); in amdgpu_connector_hotplug() 73 * passive dp->(dvi|hdmi) adaptor in amdgpu_connector_hotplug() [all …]
|
/linux-6.12.1/drivers/video/fbdev/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 14 a well-defined interface, so the software doesn't need to know 15 anything about the low-level (hardware register) stuff. 21 On several non-X86 architectures, the frame buffer device is the 29 and the Framebuffer-HOWTO at 30 <http://www.munted.org.uk/programming/Framebuffer-HOWTO-1.3.html> for more 40 are compiling a kernel for a non-x86 architecture. 46 device-aware may cause unexpected results. If unsure, say N. 57 Common utility functions useful to fbdev drivers of VGA-based 82 If you have a PCI-based system, this enables support for these [all …]
|
/linux-6.12.1/drivers/gpu/drm/tegra/ |
D | output.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/i2c.h> 19 #include <media/cec-notifier.h> 31 if (output->panel) { in tegra_output_connector_get_modes() 32 err = drm_panel_get_modes(output->panel, connector); in tegra_output_connector_get_modes() 37 if (output->drm_edid) in tegra_output_connector_get_modes() 38 drm_edid = drm_edid_dup(output->drm_edid); in tegra_output_connector_get_modes() 39 else if (output->ddc) in tegra_output_connector_get_modes() 40 drm_edid = drm_edid_read_ddc(connector, output->ddc); in tegra_output_connector_get_modes() 43 cec_notifier_set_phys_addr(output->cec, in tegra_output_connector_get_modes() [all …]
|
/linux-6.12.1/drivers/video/fbdev/i810/ |
D | i810-i2c.c | 1 /*-*- linux-c -*- 2 * linux/drivers/video/i810-i2c.c -- Intel 810/815 I2C support 45 struct i810fb_par *par = chan->par; in i810i2c_setscl() 46 u8 __iomem *mmio = par->mmio_start_virtual; in i810i2c_setscl() 49 i810_writel(mmio, chan->ddc_base, SCL_DIR_MASK | SCL_VAL_MASK); in i810i2c_setscl() 51 i810_writel(mmio, chan->ddc_base, SCL_DIR | SCL_DIR_MASK | SCL_VAL_MASK); in i810i2c_setscl() 52 i810_readl(mmio, chan->ddc_base); /* flush posted write */ in i810i2c_setscl() 58 struct i810fb_par *par = chan->par; in i810i2c_setsda() 59 u8 __iomem *mmio = par->mmio_start_virtual; in i810i2c_setsda() 62 i810_writel(mmio, chan->ddc_base, SDA_DIR_MASK | SDA_VAL_MASK); in i810i2c_setsda() [all …]
|