Lines Matching +full:hdmi +full:- +full:bridge
1 /* SPDX-License-Identifier: GPL-2.0-only */
15 #include <linux/hdmi.h>
20 #include "hdmi.xml.h"
41 struct hdmi { struct
69 struct drm_bridge *bridge; member
71 /* the encoder we are hooked to (outside of hdmi block) */ argument
74 bool hdmi_mode; /* are we in hdmi mode? */ argument
117 void msm_hdmi_set_mode(struct hdmi *hdmi, bool power_on);
119 static inline void hdmi_write(struct hdmi *hdmi, u32 reg, u32 data) in hdmi_write() argument
121 msm_writel(data, hdmi->mmio + reg); in hdmi_write()
124 static inline u32 hdmi_read(struct hdmi *hdmi, u32 reg) in hdmi_read() argument
126 return msm_readl(hdmi->mmio + reg); in hdmi_read()
129 static inline u32 hdmi_qfprom_read(struct hdmi *hdmi, u32 reg) in hdmi_qfprom_read() argument
131 return msm_readl(hdmi->qfprom_mmio + reg); in hdmi_qfprom_read()
135 * hdmi phy:
172 msm_writel(data, phy->mmio + reg); in hdmi_phy_write()
177 return msm_readl(phy->mmio + reg); in hdmi_phy_read()
193 return -ENODEV; in msm_hdmi_pll_8960_init()
198 return -ENODEV; in msm_hdmi_pll_8996_init()
205 /* Supported HDMI Audio channels and rates */
219 int msm_hdmi_audio_update(struct hdmi *hdmi);
220 int msm_hdmi_audio_info_setup(struct hdmi *hdmi, bool enabled,
223 void msm_hdmi_audio_set_sample_rate(struct hdmi *hdmi, int rate);
227 * hdmi bridge:
230 struct drm_bridge *msm_hdmi_bridge_init(struct hdmi *hdmi);
231 void msm_hdmi_bridge_destroy(struct drm_bridge *bridge);
234 * hdmi connector:
238 struct drm_connector *msm_hdmi_connector_init(struct hdmi *hdmi);
247 struct i2c_adapter *msm_hdmi_i2c_init(struct hdmi *hdmi);
253 struct hdmi_hdcp_ctrl *msm_hdmi_hdcp_init(struct hdmi *hdmi);
254 void msm_hdmi_hdcp_destroy(struct hdmi *hdmi);
259 static inline struct hdmi_hdcp_ctrl *msm_hdmi_hdcp_init(struct hdmi *hdmi) in msm_hdmi_hdcp_init() argument
261 return ERR_PTR(-ENXIO); in msm_hdmi_hdcp_init()
263 static inline void msm_hdmi_hdcp_destroy(struct hdmi *hdmi) {} in msm_hdmi_hdcp_destroy() argument