Lines Matching refs:dvo

32 #include "dvo.h"
115 static bool ch7xxx_readb(struct intel_dvo_device *dvo, int addr, uint8_t *ch)
117 struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
118 device_t adapter = dvo->i2c_bus;
124 .slave = dvo->slave_addr << 1,
130 .slave = dvo->slave_addr << 1,
147 addr, device_get_nameunit(adapter), dvo->slave_addr);
153 static bool ch7xxx_writeb(struct intel_dvo_device *dvo, int addr, uint8_t ch)
155 struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
156 device_t adapter = dvo->i2c_bus;
159 .slave = dvo->slave_addr << 1,
173 addr, device_get_nameunit(adapter), dvo->slave_addr);
179 static bool ch7xxx_init(struct intel_dvo_device *dvo,
191 dvo->i2c_bus = adapter;
192 dvo->dev_priv = ch7xxx;
195 if (!ch7xxx_readb(dvo, CH7xxx_REG_VID, &vendor))
202 vendor, device_get_nameunit(adapter), dvo->slave_addr);
207 if (!ch7xxx_readb(dvo, CH7xxx_REG_DID, &device))
213 vendor, device_get_nameunit(adapter), dvo->slave_addr);
226 static enum drm_connector_status ch7xxx_detect(struct intel_dvo_device *dvo)
230 ch7xxx_readb(dvo, CH7xxx_PM, &orig_pm);
236 ch7xxx_writeb(dvo, CH7xxx_PM, pm);
238 ch7xxx_readb(dvo, CH7xxx_CONNECTION_DETECT, &cdet);
240 ch7xxx_writeb(dvo, CH7xxx_PM, orig_pm);
247 static enum drm_mode_status ch7xxx_mode_valid(struct intel_dvo_device *dvo,
256 static void ch7xxx_mode_set(struct intel_dvo_device *dvo,
274 ch7xxx_writeb(dvo, CH7xxx_TCTL, 0x00);
275 ch7xxx_writeb(dvo, CH7xxx_TVCO, tvco);
276 ch7xxx_writeb(dvo, CH7xxx_TPCP, tpcp);
277 ch7xxx_writeb(dvo, CH7xxx_TPD, tpd);
278 ch7xxx_writeb(dvo, CH7xxx_TPVT, 0x30);
279 ch7xxx_writeb(dvo, CH7xxx_TLPF, tlpf);
280 ch7xxx_writeb(dvo, CH7xxx_TCT, 0x00);
282 ch7xxx_readb(dvo, CH7xxx_IDF, &idf);
291 ch7xxx_writeb(dvo, CH7xxx_IDF, idf);
295 static void ch7xxx_dpms(struct intel_dvo_device *dvo, bool enable)
298 ch7xxx_writeb(dvo, CH7xxx_PM, CH7xxx_PM_DVIL | CH7xxx_PM_DVIP);
300 ch7xxx_writeb(dvo, CH7xxx_PM, CH7xxx_PM_FPD);
303 static bool ch7xxx_get_hw_state(struct intel_dvo_device *dvo)
307 ch7xxx_readb(dvo, CH7xxx_PM, &val);
315 static void ch7xxx_dump_regs(struct intel_dvo_device *dvo)
323 ch7xxx_readb(dvo, i, &val);
328 static void ch7xxx_destroy(struct intel_dvo_device *dvo)
330 struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
334 dvo->dev_priv = NULL;