/linux-6.12.1/drivers/media/cec/platform/s5p/ |
D | s5p_cec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* drivers/media/platform/s5p-cec/s5p_cec.c 4 * Samsung S5P CEC driver 8 * This driver is based on the "cec interface driver for exynos soc" by 23 #include <media/cec.h> 24 #include <media/cec-notifier.h> 27 #include "regs-cec.h" 30 #define CEC_NAME "s5p-cec" 34 MODULE_PARM_DESC(debug, "debug level (0-2)"); 39 struct s5p_cec_dev *cec = cec_get_drvdata(adap); in s5p_cec_adap_enable() local [all …]
|
D | s5p_cec.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* drivers/media/platform/s5p-cec/s5p_cec.h 4 * Samsung S5P HDMI CEC driver 22 #include <media/cec.h> 25 #include "regs-cec.h" 28 #define CEC_NAME "s5p-cec" 46 /* CEC Rx buffer size */ 48 /* CEC Tx buffer size */ 68 int irq; member
|
/linux-6.12.1/drivers/gpu/drm/mediatek/ |
D | mtk_cec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 55 int irq; member 62 static void mtk_cec_clear_bits(struct mtk_cec *cec, unsigned int offset, in mtk_cec_clear_bits() argument 65 void __iomem *reg = cec->regs + offset; in mtk_cec_clear_bits() 73 static void mtk_cec_set_bits(struct mtk_cec *cec, unsigned int offset, in mtk_cec_set_bits() argument 76 void __iomem *reg = cec->regs + offset; in mtk_cec_set_bits() 84 static void mtk_cec_mask(struct mtk_cec *cec, unsigned int offset, in mtk_cec_mask() argument 87 u32 tmp = readl(cec->regs + offset) & ~mask; in mtk_cec_mask() 90 writel(tmp, cec->regs + offset); in mtk_cec_mask() 97 struct mtk_cec *cec = dev_get_drvdata(dev); in mtk_cec_set_hpd_event() local [all …]
|
/linux-6.12.1/drivers/media/cec/platform/cec-gpio/ |
D | cec-gpio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include <media/cec-notifier.h> 12 #include <media/cec-pin.h> 36 struct cec_gpio *cec = cec_get_drvdata(adap); in cec_gpio_read() local 38 if (cec->cec_is_low) in cec_gpio_read() 40 return gpiod_get_value(cec->cec_gpio); in cec_gpio_read() 45 struct cec_gpio *cec = cec_get_drvdata(adap); in cec_gpio_high() local 47 if (!cec->cec_is_low) in cec_gpio_high() 49 cec->cec_is_low = false; in cec_gpio_high() 50 gpiod_set_value(cec->cec_gpio, 1); in cec_gpio_high() [all …]
|
/linux-6.12.1/drivers/media/cec/platform/stm32/ |
D | stm32-cec.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * STM32 CEC driver 16 #include <media/cec.h> 18 #define CEC_NAME "stm32-cec" 20 /* CEC registers */ 72 int irq; member 79 static void cec_hw_init(struct stm32_cec *cec) in cec_hw_init() argument 81 regmap_update_bits(cec->regmap, CEC_CR, TXEOM | TXSOM | CECEN, 0); in cec_hw_init() 83 regmap_update_bits(cec->regmap, CEC_IER, ALL_TX_IT | ALL_RX_IT, in cec_hw_init() 86 regmap_update_bits(cec->regmap, CEC_CFGR, FULL_CFG, FULL_CFG); in cec_hw_init() [all …]
|
/linux-6.12.1/drivers/media/cec/platform/sti/ |
D | stih-cec.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * STIH4xx CEC driver 17 #include <media/cec.h> 18 #include <media/cec-notifier.h> 20 #define CEC_NAME "stih-cec" 22 /* CEC registers */ 128 int irq; member 135 struct stih_cec *cec = cec_get_drvdata(adap); in stih_cec_adap_enable() local 139 unsigned long clk_freq = clk_get_rate(cec->clk); in stih_cec_adap_enable() 142 writel(cec_clk_div, cec->regs + CEC_CLK_DIV); in stih_cec_adap_enable() [all …]
|
/linux-6.12.1/drivers/gpu/drm/bridge/synopsys/ |
D | dw-hdmi-cec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Designware HDMI CEC driver 5 * Copyright (C) 2015-2017 Russell King. 16 #include <media/cec.h> 17 #include <media/cec-notifier.h> 19 #include "dw-hdmi-cec.h" 64 int irq; member 71 static void dw_hdmi_write(struct dw_hdmi_cec *cec, u8 val, int offset) in dw_hdmi_write() argument 73 cec->ops->write(cec->hdmi, val, offset); in dw_hdmi_write() 76 static u8 dw_hdmi_read(struct dw_hdmi_cec *cec, int offset) in dw_hdmi_read() argument [all …]
|
/linux-6.12.1/drivers/media/cec/platform/seco/ |
D | seco-cec.c | 1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 3 * CEC driver for SECO X86 Boards 19 /* CEC Framework */ 20 #include <media/cec-notifier.h> 22 #include "seco-cec.h" 31 int irq; member 75 status = -EBUSY; in smb_word_op() 80 status = -EIO; in smb_word_op() 94 struct secocec_data *cec = cec_get_drvdata(adap); in secocec_adap_enable() local 95 struct device *dev = cec->dev; in secocec_adap_enable() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/media/cec/ |
D | st,stih-cec.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/media/cec/st,stih-cec.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STIH4xx HDMI CEC 10 - Alain Volmat <alain.volmat@foss.st.com> 13 - $ref: cec-common.yaml# 17 const: st,stih-cec 22 clock-names: 24 - const: cec-clk [all …]
|
/linux-6.12.1/drivers/media/cec/platform/tegra/ |
D | tegra_cec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Tegra CEC implementation 5 * The original 3.10 CEC driver using a custom API: 7 * Copyright (c) 2012-2015, NVIDIA CORPORATION. All rights reserved. 9 * Conversion to the CEC framework and to the mainline kernel: 11 * Copyright 2016-2017 Cisco Systems, Inc. and/or its affiliates. All rights reserved. 29 #include <media/cec-notifier.h> 33 #define TEGRA_CEC_NAME "tegra-cec" 52 static inline u32 cec_read(struct tegra_cec *cec, u32 reg) in cec_read() argument 54 return readl(cec->cec_base + reg); in cec_read() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/mediatek/ |
D | mediatek,cec.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/display/mediatek/mediatek,cec.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Mediatek HDMI CEC Controller 10 - CK Hu <ck.hu@mediatek.com> 11 - Jitao shi <jitao.shi@mediatek.com> 14 The HDMI CEC controller handles hotplug detection and CEC communication. 19 - mediatek,mt7623-cec 20 - mediatek,mt8167-cec [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/media/i2c/ |
D | chrontel,ch7322.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Chrontel HDMI-CEC Controller 10 - Jeff Chase <jnchase@google.com> 13 The Chrontel CH7322 is a discrete HDMI-CEC controller. It is 14 programmable through I2C and drives a single CEC line. 17 - $ref: /schemas/media/cec/cec-common.yaml# 33 reset-gpios: 36 pin is active-low. [all …]
|
D | adv748x.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Kieran Bingham <kieran.bingham@ideasonboard.com> 11 - Niklas Söderlund <niklas.soderlund@ragnatech.se> 15 HDMI receiver. They can output CSI-2 on two independent outputs TXA and TXB 21 - enum: 22 - adi,adv7481 23 - adi,adv7482 29 The ADV748x has up to twelve 256-byte maps that can be accessed via the [all …]
|
/linux-6.12.1/drivers/media/cec/platform/meson/ |
D | ao-cec-g12a.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Driver for Amlogic Meson AO CEC G12A Controller 25 #include <media/cec.h> 26 #include <media/cec-notifier.h> 27 #include <linux/clk-provider.h> 29 /* CEC Registers */ 46 * [14:12] Filter_del. For glitch-filtering CEC line, ignore signal 49 * glitch-filtering CEC line signal. 50 * - 0=Use T(xtal)*3 = 125ns; 51 * - 1=Use once-per-1us pulse; [all …]
|
D | ao-cec.c | 2 * Driver for Amlogic Meson AO CEC Controller 8 * SPDX-License-Identifier: GPL-2.0+ 24 #include <media/cec.h> 25 #include <media/cec-notifier.h> 27 /* CEC Registers */ 31 * - 0 = Disable clk (Power-off mode) 32 * - 1 = Enable gated clock (Normal mode) 33 * - 2 = Enable free-run clk (Debug mode) 47 * - 0 = Read 48 * - 1 = Write [all …]
|
/linux-6.12.1/drivers/gpu/drm/tegra/ |
D | output.c | 1 // SPDX-License-Identifier: GPL-2.0-only 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() 44 connector->display_info.source_physical_address); in tegra_output_connector_get_modes() [all …]
|
/linux-6.12.1/drivers/media/cec/i2c/ |
D | ch7322.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for the Chrontel CH7322 CEC Controller 11 * - This device powers on in Auto Mode which has limited functionality. This 16 #include <linux/cec.h> 24 #include <media/cec.h> 25 #include <media/cec-notifier.h> 32 /* Write buffer is 0x01-0x10 */ 41 /* Read buffer is 0x41-0x50 */ 153 struct cec_adapter *cec; member 168 unsigned int len = msg->len; in ch7322_send_message() [all …]
|
/linux-6.12.1/drivers/gpu/drm/i2c/ |
D | tda9950.c | 1 // SPDX-License-Identifier: GPL-2.0-only 20 #include <media/cec.h> 21 #include <media/cec-notifier.h> 79 if (WARN_ON(cnt > sizeof(buf) - 1)) in tda9950_write_range() 80 return -EINVAL; in tda9950_write_range() 85 msg.addr = client->addr; in tda9950_write_range() 90 dev_dbg(&client->dev, "wr 0x%02x: %*ph\n", addr, cnt, p); in tda9950_write_range() 92 ret = i2c_transfer(client->adapter, &msg, 1); in tda9950_write_range() 94 dev_err(&client->dev, "Error %d writing to cec:0x%x\n", ret, addr); in tda9950_write_range() 108 msg[0].addr = client->addr; in tda9950_read_range() [all …]
|
D | tda998x_drv.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <linux/irq.h> 15 #include <sound/hdmi-codec.h> 26 #include <media/cec-notifier.h> 53 struct i2c_client *cec; member 366 /* CEC registers: (not paged) 410 .addr = priv->cec_addr, in cec_write() 416 ret = i2c_transfer(priv->hdmi->adapter, &msg, 1); in cec_write() 418 dev_err(&priv->hdmi->dev, "Error %d writing to cec:0x%x\n", in cec_write() 428 .addr = priv->cec_addr, in cec_read() [all …]
|
/linux-6.12.1/drivers/media/cec/platform/cros-ec/ |
D | cros-ec-cec.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * CEC driver for ChromeOS Embedded Controller 15 #include <linux/cec.h> 20 #include <media/cec.h> 21 #include <media/cec-notifier.h> 23 #define DRV_NAME "cros-ec-cec" 26 * struct cros_ec_cec_port - Driver data for a single EC CEC port 29 * @adap: CEC adapter 30 * @notify: CEC notifier pointer 43 * struct cros_ec_cec - Driver data for EC CEC [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/bridge/ |
D | adi,adv7533.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 13 - $ref: /schemas/sound/dai-common.yaml# 18 conversion, S/PDIF, CEC and HDCP. The transmitter input is MIPI DSI. 23 - adi,adv7533 24 - adi,adv7535 38 reg-names: 41 needing a non-default address. [all …]
|
D | adi,adv7511.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 15 space conversion, S/PDIF, CEC and HDCP. The transmitter input is 21 - adi,adv7511 22 - adi,adv7511w 23 - adi,adv7513 37 reg-names: 40 needing a non-default address. [all …]
|
/linux-6.12.1/drivers/gpu/drm/omapdrm/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 37 bool "Collect DSS IRQ statistics" 41 Collect DSS IRQ statistics, printable via debugfs. 57 OMAP Video Encoder support for S-Video and composite TV-out. 70 bool "Enable HDMI CEC support for OMAP4" 75 When selected the HDMI transmitter will support the CEC feature. 92 SDI is a high speed one-way display serial bus between the host 102 DSI is a high speed half-duplex serial interface between the host
|
/linux-6.12.1/drivers/gpu/drm/bridge/adv7511/ |
D | adv7511_cec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * adv7511_cec.c - Analog Devices ADV7511/33 cec driver 13 #include <media/cec.h> 36 unsigned int offset = adv7511->info->reg_cec_offset; in adv_cec_tx_raw_status() 39 if (regmap_read(adv7511->regmap_cec, in adv_cec_tx_raw_status() 47 cec_transmit_attempt_done(adv7511->cec_adap, in adv_cec_tx_raw_status() 63 if (regmap_read(adv7511->regmap_cec, in adv_cec_tx_raw_status() 75 cec_transmit_done(adv7511->cec_adap, status, in adv_cec_tx_raw_status() 80 cec_transmit_attempt_done(adv7511->cec_adap, CEC_TX_STATUS_OK); in adv_cec_tx_raw_status() 87 unsigned int offset = adv7511->info->reg_cec_offset; in adv7511_cec_rx() [all …]
|
/linux-6.12.1/arch/arm/boot/dts/st/ |
D | stih410.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 6 #include "stih410-clock.dtsi" 7 #include "stih407-family.dtsi" 8 #include "stih410-pinctrl.dtsi" 9 #include <dt-bindings/gpio/gpio.h> 16 compatible = "st,stih407-usb2-phy"; 17 #phy-cells = <0>; 21 reset-names = "global", "port"; 27 compatible = "st,stih407-usb2-phy"; 28 #phy-cells = <0>; [all …]
|