mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-04 21:57:30 +00:00
drm: bridge: adv7511: Split EDID read to a separate function
To prepare for the implementation of the DRM bridge connector operations, move EDID read out of adv7511_get_modes() to a separate function. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/20200526011505.31884-2-laurent.pinchart+renesas@ideasonboard.com
This commit is contained in:
parent
c9bb9d6685
commit
fed9d35d71
1 changed files with 16 additions and 7 deletions
|
@ -589,11 +589,10 @@ static int adv7511_get_edid_block(void *data, u8 *buf, unsigned int block,
|
|||
* ADV75xx helpers
|
||||
*/
|
||||
|
||||
static int adv7511_get_modes(struct adv7511 *adv7511,
|
||||
struct drm_connector *connector)
|
||||
static struct edid *adv7511_get_edid(struct adv7511 *adv7511,
|
||||
struct drm_connector *connector)
|
||||
{
|
||||
struct edid *edid;
|
||||
unsigned int count;
|
||||
|
||||
/* Reading the EDID only works if the device is powered */
|
||||
if (!adv7511->powered) {
|
||||
|
@ -612,15 +611,25 @@ static int adv7511_get_modes(struct adv7511 *adv7511,
|
|||
if (!adv7511->powered)
|
||||
__adv7511_power_off(adv7511);
|
||||
|
||||
|
||||
drm_connector_update_edid_property(connector, edid);
|
||||
count = drm_add_edid_modes(connector, edid);
|
||||
|
||||
adv7511_set_config_csc(adv7511, connector, adv7511->rgb,
|
||||
drm_detect_hdmi_monitor(edid));
|
||||
|
||||
cec_s_phys_addr_from_edid(adv7511->cec_adap, edid);
|
||||
|
||||
return edid;
|
||||
}
|
||||
|
||||
static int adv7511_get_modes(struct adv7511 *adv7511,
|
||||
struct drm_connector *connector)
|
||||
{
|
||||
struct edid *edid;
|
||||
unsigned int count;
|
||||
|
||||
edid = adv7511_get_edid(adv7511, connector);
|
||||
|
||||
drm_connector_update_edid_property(connector, edid);
|
||||
count = drm_add_edid_modes(connector, edid);
|
||||
|
||||
kfree(edid);
|
||||
|
||||
return count;
|
||||
|
|
Loading…
Add table
Reference in a new issue