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 {
58 struct hdmi_phy *phy;
67 /* the encoder we are hooked to (outside of hdmi block) */
98 struct hdmi *hdmi;
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)
107 writel(data, hdmi->mmio + reg);
110 static inline u32 hdmi_read(struct hdmi *hdmi, u32 reg)
112 return readl(hdmi->mmio + reg);
115 static inline u32 hdmi_qfprom_read(struct hdmi *hdmi, u32 reg)
117 return readl(hdmi->qfprom_mmio + reg);
121 * hdmi phy:
135 void (*powerup)(struct hdmi_phy *phy, unsigned long int pixclock);
136 void (*powerdown)(struct hdmi_phy *phy);
158 static inline void hdmi_phy_write(struct hdmi_phy *phy, u32 reg, u32 data)
160 writel(data, phy->mmio + reg);
163 static inline u32 hdmi_phy_read(struct hdmi_phy *phy, u32 reg)
165 return readl(phy->mmio + reg);
168 int msm_hdmi_phy_resource_enable(struct hdmi_phy *phy);
169 void msm_hdmi_phy_resource_disable(struct hdmi_phy *phy);
170 void msm_hdmi_phy_powerup(struct hdmi_phy *phy, unsigned long int pixclock);
171 void msm_hdmi_phy_powerdown(struct hdmi_phy *phy);
182 return -ENODEV;
187 return -ENODEV;
192 return -ENODEV;
202 int msm_hdmi_audio_update(struct hdmi *hdmi);
211 * hdmi bridge:
214 int msm_hdmi_bridge_init(struct hdmi *hdmi);
228 struct i2c_adapter *msm_hdmi_i2c_init(struct hdmi *hdmi);
234 struct hdmi_hdcp_ctrl *msm_hdmi_hdcp_init(struct hdmi *hdmi);
235 void msm_hdmi_hdcp_destroy(struct hdmi *hdmi);
240 static inline struct hdmi_hdcp_ctrl *msm_hdmi_hdcp_init(struct hdmi *hdmi)
242 return ERR_PTR(-ENXIO);
244 static inline void msm_hdmi_hdcp_destroy(struct hdmi *hdmi) {}