| /linux/drivers/gpu/drm/sun4i/ |
| H A D | sun4i_hdmi_enc.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Maxime Ripard <maxime.ripard@free-electrons.com> 41 container_of_const(c, struct sun4i_hdmi, connector) 43 static int sun4i_hdmi_write_infoframe(struct drm_connector *connector, in sun4i_hdmi_write_infoframe() argument 47 struct sun4i_hdmi *hdmi = drm_connector_to_sun4i_hdmi(connector); in sun4i_hdmi_write_infoframe() local 51 drm_err(connector->dev, in sun4i_hdmi_write_infoframe() 57 writeb(buffer[i], hdmi->base + SUN4I_HDMI_AVI_INFOFRAME_REG(i)); in sun4i_hdmi_write_infoframe() 66 struct sun4i_hdmi *hdmi = drm_encoder_to_sun4i_hdmi(encoder); in sun4i_hdmi_disable() local 69 DRM_DEBUG_DRIVER("Disabling the HDMI Output\n"); in sun4i_hdmi_disable() 71 val = readl(hdmi->base + SUN4I_HDMI_VID_CTRL_REG); in sun4i_hdmi_disable() [all …]
|
| /linux/drivers/gpu/drm/loongson/ |
| H A D | lsdc_output_7a2000.c | 1 // SPDX-License-Identifier: GPL-2.0+ 18 * Display pipe 0 is attached with a built-in transparent VGA encoder and 19 * a built-in HDMI encoder. 20 * Display pipe 1 has only one built-in HDMI encoder connected. 22 * | +-----+ | | | 23 * | CRTC0 -+--> | VGA | ----> VGA Connector ---> | VGA Monitor |<---+ 24 * | | +-----+ | |_____________| | 26 * | | +------+ | | | | 27 * | +--> | HDMI | ----> HDMI Connector --> | HDMI Monitor |<--+ 28 * | +------+ | |______________| | [all …]
|
| /linux/Documentation/devicetree/bindings/display/connector/ |
| H A 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# 7 title: HDMI Connector 10 - Laurent Pinchart <Laurent.pinchart@ideasonboard.com> 14 const: hdmi-connector 17 description: The HDMI connector type 19 - a # Standard full size 20 - b # Never deployed? [all …]
|
| /linux/drivers/gpu/drm/rockchip/ |
| H A D | rk3066_hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Zheng Yang <zhengyang@rock-chips.com> 53 struct drm_connector *connector; member 68 static inline u8 hdmi_readb(struct rk3066_hdmi *hdmi, u16 offset) in hdmi_readb() argument 70 return readl_relaxed(hdmi->regs + offset); in hdmi_readb() 73 static inline void hdmi_writeb(struct rk3066_hdmi *hdmi, u16 offset, u32 val) in hdmi_writeb() argument 75 writel_relaxed(val, hdmi->regs + offset); in hdmi_writeb() 78 static inline void hdmi_modb(struct rk3066_hdmi *hdmi, u16 offset, in hdmi_modb() argument 81 u8 temp = hdmi_readb(hdmi, offset) & ~msk; in hdmi_modb() 84 hdmi_writeb(hdmi, offset, temp); in hdmi_modb() [all …]
|
| /linux/drivers/gpu/drm/bridge/synopsys/ |
| H A D | dw-hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * DesignWare High-Definition Multimedia Interface (HDMI) driver 5 * Copyright (C) 2013-2015 Mentor Graphics Inc. 6 * Copyright (C) 2011-2013 Freescale Semiconductor, Inc. 13 #include <linux/hdmi.h> 21 #include <linux/dma-mapping.h> 24 #include <media/cec-notifier.h> 26 #include <linux/media-bus-format.h> 40 #include "dw-hdmi-audio.h" 41 #include "dw-hdmi-cec.h" [all …]
|
| H A D | dw-hdmi-qp.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (c) 2021-2022 Rockchip Electronics Co., Ltd. 6 * Author: Algea Cao <algea.cao@rock-chips.com> 10 #include <linux/hdmi.h> 29 #include <sound/hdmi-codec.h> 31 #include "dw-hdmi-qp.h" 43 * slow so we pre-compute values we expect to see. 46 * the recommended N values specified in the Audio chapter of the HDMI 93 /* For 297 MHz+ HDMI spec have some other rule for setting N */ 102 * These are the CTS values as recommended in the Audio chapter of the HDMI [all …]
|
| /linux/drivers/gpu/drm/display/ |
| H A D | drm_hdmi_audio_helper.c | 1 // SPDX-License-Identifier: MIT 15 #include <sound/hdmi-codec.h> 19 struct drm_connector *connector = data; in drm_connector_hdmi_audio_startup() local 21 connector->hdmi_audio.funcs; in drm_connector_hdmi_audio_startup() 23 if (funcs->startup) in drm_connector_hdmi_audio_startup() 24 return funcs->startup(connector); in drm_connector_hdmi_audio_startup() 33 struct drm_connector *connector = data; in drm_connector_hdmi_audio_prepare() local 35 connector->hdmi_audio.funcs; in drm_connector_hdmi_audio_prepare() 37 return funcs->prepare(connector, fmt, hparms); in drm_connector_hdmi_audio_prepare() 42 struct drm_connector *connector = data; in drm_connector_hdmi_audio_shutdown() local [all …]
|
| /linux/drivers/gpu/drm/meson/ |
| H A D | meson_encoder_hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 19 #include <media/cec-notifier.h> 29 #include <linux/media-bus-format.h> 42 struct drm_connector *connector; member 57 return drm_bridge_attach(encoder, encoder_hdmi->next_bridge, in meson_encoder_hdmi_attach() 58 &encoder_hdmi->bridge, flags); in meson_encoder_hdmi_attach() 65 cec_notifier_conn_unregister(encoder_hdmi->cec_notifier); in meson_encoder_hdmi_detach() 66 encoder_hdmi->cec_notifier = NULL; in meson_encoder_hdmi_detach() 72 struct meson_drm *priv = encoder_hdmi->priv; in meson_encoder_hdmi_set_vclk() 79 vclk_freq = mode->clock * 1000ULL; in meson_encoder_hdmi_set_vclk() [all …]
|
| /linux/drivers/gpu/drm/msm/hdmi/ |
| H A D | hdmi_bridge.c | 1 // SPDX-License-Identifier: GPL-2.0-only 14 #include "hdmi.h" 18 struct drm_device *dev = bridge->dev; in msm_hdmi_power_on() 20 struct hdmi *hdmi = hdmi_bridge->hdmi; in msm_hdmi_power_on() local 23 pm_runtime_resume_and_get(&hdmi->pdev->dev); in msm_hdmi_power_on() 25 if (hdmi->extp_clk) { in msm_hdmi_power_on() 26 DBG("pixclock: %lu", hdmi->pixclock); in msm_hdmi_power_on() 27 ret = clk_set_rate(hdmi->extp_clk, hdmi->pixclock); in msm_hdmi_power_on() 29 DRM_DEV_ERROR(dev->dev, "failed to set extp clk rate: %d\n", ret); in msm_hdmi_power_on() 31 ret = clk_prepare_enable(hdmi->extp_clk); in msm_hdmi_power_on() [all …]
|
| H A D | hdmi_audio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 10 #include <linux/hdmi.h> 12 #include <sound/hdmi-codec.h> 14 #include "hdmi.h" 16 int msm_hdmi_audio_update(struct hdmi *hdmi) in msm_hdmi_audio_update() argument 18 struct hdmi_audio *audio = &hdmi->audio; in msm_hdmi_audio_update() 19 bool enabled = audio->enabled; in msm_hdmi_audio_update() 23 if (!hdmi->connector->display_info.is_hdmi) in msm_hdmi_audio_update() 24 return -EINVAL; in msm_hdmi_audio_update() 27 audio->enabled, audio->channels, audio->rate); in msm_hdmi_audio_update() [all …]
|
| H A D | hdmi.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 15 #include <linux/hdmi.h> 20 #include "hdmi.xml.h" 33 struct hdmi { struct 62 struct drm_connector *connector; member 67 /* the encoder we are hooked to (outside of hdmi block) */ argument 98 struct hdmi *hdmi; member 103 void msm_hdmi_set_mode(struct hdmi *hdmi, bool power_on); 105 static inline void hdmi_write(struct hdmi *hdmi, u32 reg, u32 data) in hdmi_write() argument 107 writel(data, hdmi->mmio + reg); in hdmi_write() [all …]
|
| /linux/include/media/ |
| H A D | cec-notifier.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * cec-notifier.h - notify CEC drivers of physical address changes 6 * Copyright 2016-2017 Cisco Systems, Inc. and/or its affiliates. All rights reserved. 23 * cec_notifier_conn_register - find or create a new cec_notifier for the given 24 * HDMI device and connector tuple. 25 * @hdmi_dev: HDMI device that sends the events. 26 * @port_name: the connector name from which the event occurs. May be NULL 27 * if there is always only one HDMI connector created by the HDMI device. 28 * @conn_info: the connector info from which the event occurs (may be NULL) 30 * If a notifier for device @dev and connector @port_name already exists, then [all …]
|
| /linux/Documentation/devicetree/bindings/display/ti/ |
| H A D | ti,omap-dss.txt | 5 ------------------- 22 HDMI, MIPI DPI, etc. 25 ----------- 36 ------- 39 name for each display. If no aliases are defined, a semi-random number is used 43 ------- 45 A shortened example of the DSS description for OMAP4, with non-relevant parts 49 compatible = "ti,omap4-dss"; 54 clock-names = "fck"; 55 #address-cells = <1>; [all …]
|
| /linux/drivers/gpu/drm/vc4/ |
| H A D | vc4_hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 10 * DOC: VC4 Falcon HDMI module 12 * The HDMI core has a state machine and a PHY. On BCM2835, most of 16 * HDMI infoframes are kept within a small packet ram, where each 19 * HDMI audio is implemented entirely within the HDMI IP block. A 20 * register in the HDMI encoder takes SPDIF frames from the DMA engine 21 * and transfers them over an internal MAI (multi-channel audio 25 * The driver's HDMI encoder does not yet support power management. 26 * The HDMI encoder's power domain and the HSM/pixel clocks are kept 27 * continuously running, and only the HDMI logic and packet ram are [all …]
|
| /linux/drivers/video/fbdev/omap2/omapfb/displays/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 17 tristate "TPD12S015 HDMI ESD protection and level shifter" 19 Driver for TPD12S015, which offers HDMI ESD protection and level 23 tristate "DVI Connector" 26 Driver for a generic DVI connector. 29 tristate "HDMI Connector" 31 Driver for a generic HDMI connector. 34 tristate "Analog TV Connector" 36 Driver for a generic analog TV connector.
|
| H A D | connector-hdmi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * HDMI Connector driver 53 struct omap_dss_device *in = ddata->in; in hdmic_connect() 55 dev_dbg(ddata->dev, "connect\n"); in hdmic_connect() 60 return in->ops.hdmi->connect(in, dssdev); in hdmic_connect() 66 struct omap_dss_device *in = ddata->in; in hdmic_disconnect() 68 dev_dbg(ddata->dev, "disconnect\n"); in hdmic_disconnect() 73 in->ops.hdmi->disconnect(in, dssdev); in hdmic_disconnect() 79 struct omap_dss_device *in = ddata->in; in hdmic_enable() 82 dev_dbg(ddata->dev, "enable\n"); in hdmic_enable() [all …]
|
| /linux/drivers/gpu/drm/tests/ |
| H A D | drm_connector_test.c | 1 // SPDX-License-Identifier: GPL-2.0 24 struct drm_connector connector; member 74 strscpy(priv->ddc.name, "dummy-connector-ddc", sizeof(priv->ddc.name)); in drm_test_connector_init() 75 priv->ddc.owner = THIS_MODULE; in drm_test_connector_init() 76 priv->ddc.algo = &dummy_ddc_algorithm; in drm_test_connector_init() 77 priv->ddc.dev.parent = dev; in drm_test_connector_init() 79 ret = i2c_add_adapter(&priv->ddc); in drm_test_connector_init() 82 ret = kunit_add_action_or_reset(test, i2c_del_adapter_wrapper, &priv->ddc); in drm_test_connector_init() 85 test->priv = priv; in drm_test_connector_init() 90 * Test that the registration of a bog standard connector works as [all …]
|
| /linux/arch/arm64/boot/dts/allwinner/ |
| H A D | sun50i-a64-sopine-baseboard.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 // Based on sun50i-a64-pine64.dts, which is: 6 /dts-v1/; 8 #include "sun50i-a64-sopine.dtsi" 12 compatible = "pine64,sopine-baseboard", "pine64,sopine", 13 "allwinner,sun50i-a64"; 25 stdout-path = "serial0:115200n8"; 28 hdmi-connector { 29 compatible = "hdmi-connector"; 34 remote-endpoint = <&hdmi_out_con>; [all …]
|
| H A D | sun50i-a64-pine64.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 4 /dts-v1/; 6 #include "sun50i-a64.dtsi" 7 #include "sun50i-a64-cpu-opp.dtsi" 9 #include <dt-bindings/gpio/gpio.h> 13 compatible = "pine64,pine64", "allwinner,sun50i-a64"; 25 stdout-path = "serial0:115200n8"; 28 hdmi-connector { 29 compatible = "hdmi-connector"; 34 remote-endpoint = <&hdmi_out_con>; [all …]
|
| /linux/Documentation/devicetree/bindings/sound/ |
| H A D | imx-audio-hdmi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/imx-audio-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NXP i.MX audio complex with HDMI 10 - Shengjiu Wang <shengjiu.wang@nxp.com> 15 - fsl,imx-audio-hdmi 16 - fsl,imx-audio-sii902x 22 audio-cpu: 26 hdmi-out: [all …]
|
| /linux/drivers/gpu/drm/bridge/ |
| H A D | tda998x_drv.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <linux/hdmi.h> 15 #include <sound/hdmi-codec.h> 25 #include <media/cec-notifier.h> 27 #include <dt-bindings/display/tda998x.h> 55 struct i2c_client *hdmi; member 84 struct drm_connector connector; member 93 container_of(x, struct tda998x_priv, connector) 411 .addr = priv->cec_addr, in cec_write() 417 ret = i2c_transfer(priv->hdmi->adapter, &msg, 1); in cec_write() [all …]
|
| /linux/arch/arm64/boot/dts/amlogic/ |
| H A D | meson-gxl-s905x-p212.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 7 /dts-v1/; 9 #include "meson-gxl-s905x-p212.dtsi" 10 #include <dt-bindings/sound/meson-aiu.h> 13 compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl"; 16 dio2133: analog-amplifier { 17 compatible = "simple-audio-amplifier"; 18 sound-name-prefix = "AU2"; 19 VCC-supply = <&hdmi_5v>; 20 enable-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>; [all …]
|
| /linux/drivers/gpu/drm/radeon/ |
| H A D | evergreen_hdmi.c | 27 #include <linux/hdmi.h> 72 struct drm_device *dev = encoder->dev; in evergreen_hdmi_update_acr() 73 struct radeon_device *rdev = dev->dev_private; in evergreen_hdmi_update_acr() 76 if (encoder->crtc) { in evergreen_hdmi_update_acr() 77 struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc); in evergreen_hdmi_update_acr() 78 bpc = radeon_crtc->bpc; in evergreen_hdmi_update_acr() 89 WREG32(HDMI_ACR_32_0 + offset, HDMI_ACR_CTS_32(acr->cts_32khz)); in evergreen_hdmi_update_acr() 90 WREG32(HDMI_ACR_32_1 + offset, acr->n_32khz); in evergreen_hdmi_update_acr() 92 WREG32(HDMI_ACR_44_0 + offset, HDMI_ACR_CTS_44(acr->cts_44_1khz)); in evergreen_hdmi_update_acr() 93 WREG32(HDMI_ACR_44_1 + offset, acr->n_44_1khz); in evergreen_hdmi_update_acr() [all …]
|
| /linux/arch/arm64/boot/dts/renesas/ |
| H A D | r8a77970-eagle-function-expansion.dtso | 1 // SPDX-License-Identifier: GPL-2.0 8 /dts-v1/; 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interrupt-controller/irq.h> 17 cvbs-in-cn4 { 18 compatible = "composite-video-connector"; 23 remote-endpoint = <&adv7482_ain7>; 30 hdmi-in-cn2 { 31 compatible = "hdmi-connector"; 32 label = "HDMI IN CN2"; [all …]
|
| /linux/Documentation/userspace-api/media/cec/ |
| H A D | cec-ioc-adap-g-conn-info.rst | 1 .. SPDX-License-Identifier: GPL-2.0 16 CEC_ADAP_G_CONNECTOR_INFO - Query HDMI connector information 36 Using this ioctl an application can learn which HDMI connector this CEC 46 .. flat-table:: struct cec_connector_info 47 :header-rows: 0 48 :stub-columns: 0 51 * - __u32 52 - ``type`` 53 - The type of connector this adapter is associated with. 54 * - union { [all …]
|