Lines Matching defs:dvo
188 static void ivch_dump_regs(struct intel_dvo_device *dvo);
194 static bool ivch_read(struct intel_dvo_device *dvo, int addr, u16 *data)
196 struct ivch_priv *priv = dvo->dev_priv;
197 struct i2c_adapter *adapter = dvo->i2c_bus;
203 .addr = dvo->target_addr,
214 .addr = dvo->target_addr,
231 addr, adapter->name, dvo->target_addr);
237 static bool ivch_write(struct intel_dvo_device *dvo, int addr, u16 data)
239 struct ivch_priv *priv = dvo->dev_priv;
240 struct i2c_adapter *adapter = dvo->i2c_bus;
243 .addr = dvo->target_addr,
258 addr, adapter->name, dvo->target_addr);
265 static bool ivch_init(struct intel_dvo_device *dvo,
276 dvo->i2c_bus = adapter;
277 dvo->dev_priv = priv;
280 if (!ivch_read(dvo, VR00, &temp))
288 if ((temp & VR00_BASE_ADDRESS_MASK) != dvo->target_addr) {
291 (temp & VR00_BASE_ADDRESS_MASK), dvo->target_addr);
295 ivch_read(dvo, VR20, &priv->width);
296 ivch_read(dvo, VR21, &priv->height);
302 ivch_read(dvo, backup_addresses[i], priv->reg_backup + i);
304 ivch_dump_regs(dvo);
313 static enum drm_connector_status ivch_detect(struct intel_dvo_device *dvo)
318 static enum drm_mode_status ivch_mode_valid(struct intel_dvo_device *dvo,
331 static void ivch_reset(struct intel_dvo_device *dvo)
333 struct ivch_priv *priv = dvo->dev_priv;
338 ivch_write(dvo, VR10, 0x0000);
341 ivch_write(dvo, backup_addresses[i], priv->reg_backup[i]);
345 static void ivch_dpms(struct intel_dvo_device *dvo, bool enable)
350 ivch_reset(dvo);
353 if (!ivch_read(dvo, VR01, &vr01))
361 ivch_write(dvo, VR80, backlight);
368 ivch_write(dvo, VR01, vr01);
372 if (!ivch_read(dvo, VR30, &vr30))
383 static bool ivch_get_hw_state(struct intel_dvo_device *dvo)
387 ivch_reset(dvo);
390 if (!ivch_read(dvo, VR01, &vr01))
399 static void ivch_mode_set(struct intel_dvo_device *dvo,
403 struct ivch_priv *priv = dvo->dev_priv;
408 ivch_reset(dvo);
430 ivch_write(dvo, VR42, x_ratio);
431 ivch_write(dvo, VR41, y_ratio);
438 ivch_write(dvo, VR01, vr01);
439 ivch_write(dvo, VR40, vr40);
442 static void ivch_dump_regs(struct intel_dvo_device *dvo)
446 ivch_read(dvo, VR00, &val);
448 ivch_read(dvo, VR01, &val);
450 ivch_read(dvo, VR10, &val);
452 ivch_read(dvo, VR30, &val);
454 ivch_read(dvo, VR40, &val);
458 ivch_read(dvo, VR80, &val);
460 ivch_read(dvo, VR81, &val);
462 ivch_read(dvo, VR82, &val);
464 ivch_read(dvo, VR83, &val);
466 ivch_read(dvo, VR84, &val);
468 ivch_read(dvo, VR85, &val);
470 ivch_read(dvo, VR86, &val);
472 ivch_read(dvo, VR87, &val);
474 ivch_read(dvo, VR88, &val);
478 ivch_read(dvo, VR8E, &val);
482 ivch_read(dvo, VR8F, &val);
486 static void ivch_destroy(struct intel_dvo_device *dvo)
488 struct ivch_priv *priv = dvo->dev_priv;
492 dvo->dev_priv = NULL;