psb_intel_modes.c 755 B

12345678910111213141516171819202122232425262728293031323334
  1. // SPDX-License-Identifier: GPL-2.0-only
  2. /*
  3. * Copyright (c) 2007 Intel Corporation
  4. *
  5. * Authers: Jesse Barnes <jesse.barnes@intel.com>
  6. */
  7. #include <linux/i2c.h>
  8. #include <drm/drm_edid.h>
  9. #include "psb_intel_drv.h"
  10. /**
  11. * psb_intel_ddc_get_modes - get modelist from monitor
  12. * @connector: DRM connector device to use
  13. * @adapter: Associated I2C adaptor
  14. *
  15. * Fetch the EDID information from @connector using the DDC bus.
  16. */
  17. int psb_intel_ddc_get_modes(struct drm_connector *connector,
  18. struct i2c_adapter *adapter)
  19. {
  20. struct edid *edid;
  21. int ret = 0;
  22. edid = drm_get_edid(connector, adapter);
  23. if (edid) {
  24. drm_connector_update_edid_property(connector, edid);
  25. ret = drm_add_edid_modes(connector, edid);
  26. kfree(edid);
  27. }
  28. return ret;
  29. }