Lines Matching +full:hdmi +full:- +full:phy
1 /* SPDX-License-Identifier: GPL-2.0-only */
15 #include <linux/hdmi.h>
20 #include "hdmi.xml.h"
33 struct hdmi { struct
58 struct hdmi_phy *phy; member
67 /* the encoder we are hooked to (outside of hdmi block) */ argument
70 bool hdmi_mode; /* are we in hdmi mode? */ argument
109 struct hdmi *hdmi; member
114 void msm_hdmi_set_mode(struct hdmi *hdmi, bool power_on);
116 static inline void hdmi_write(struct hdmi *hdmi, u32 reg, u32 data) in hdmi_write() argument
118 writel(data, hdmi->mmio + reg); in hdmi_write()
121 static inline u32 hdmi_read(struct hdmi *hdmi, u32 reg) in hdmi_read() argument
123 return readl(hdmi->mmio + reg); in hdmi_read()
126 static inline u32 hdmi_qfprom_read(struct hdmi *hdmi, u32 reg) in hdmi_qfprom_read() argument
128 return readl(hdmi->qfprom_mmio + reg); in hdmi_qfprom_read()
132 * hdmi phy:
146 void (*powerup)(struct hdmi_phy *phy, unsigned long int pixclock);
147 void (*powerdown)(struct hdmi_phy *phy);
169 static inline void hdmi_phy_write(struct hdmi_phy *phy, u32 reg, u32 data) in hdmi_phy_write() argument
171 writel(data, phy->mmio + reg); in hdmi_phy_write()
174 static inline u32 hdmi_phy_read(struct hdmi_phy *phy, u32 reg) in hdmi_phy_read() argument
176 return readl(phy->mmio + reg); in hdmi_phy_read()
179 int msm_hdmi_phy_resource_enable(struct hdmi_phy *phy);
180 void msm_hdmi_phy_resource_disable(struct hdmi_phy *phy);
181 void msm_hdmi_phy_powerup(struct hdmi_phy *phy, unsigned long int pixclock);
182 void msm_hdmi_phy_powerdown(struct hdmi_phy *phy);
193 return -ENODEV; in msm_hdmi_pll_8960_init()
198 return -ENODEV; in msm_hdmi_pll_8996_init()
203 return -ENODEV; in msm_hdmi_pll_8998_init()
210 /* Supported HDMI Audio channels and rates */
224 int msm_hdmi_audio_update(struct hdmi *hdmi);
225 int msm_hdmi_audio_info_setup(struct hdmi *hdmi, bool enabled,
228 void msm_hdmi_audio_set_sample_rate(struct hdmi *hdmi, int rate);
232 * hdmi bridge:
235 int msm_hdmi_bridge_init(struct hdmi *hdmi);
241 void msm_hdmi_hpd_disable(struct hdmi *hdmi);
249 struct i2c_adapter *msm_hdmi_i2c_init(struct hdmi *hdmi);
255 struct hdmi_hdcp_ctrl *msm_hdmi_hdcp_init(struct hdmi *hdmi);
256 void msm_hdmi_hdcp_destroy(struct hdmi *hdmi);
261 static inline struct hdmi_hdcp_ctrl *msm_hdmi_hdcp_init(struct hdmi *hdmi) in msm_hdmi_hdcp_init() argument
263 return ERR_PTR(-ENXIO); in msm_hdmi_hdcp_init()
265 static inline void msm_hdmi_hdcp_destroy(struct hdmi *hdmi) {} in msm_hdmi_hdcp_destroy() argument