Some of the code still relies on functions that are deprecated. In
order to switch to the newer ones, replace uses of struct edid
with struct drm_edid.

For SADs, get the raw edid when necessary. Also, update the checks
for digital input to use the drm_edid_is_digital.

Signed-off-by: Joshua Peisach <[email protected]>
---
 drivers/gpu/drm/radeon/radeon_audio.c      |  4 +--
 drivers/gpu/drm/radeon/radeon_combios.c    |  4 +--
 drivers/gpu/drm/radeon/radeon_connectors.c | 30 +++++++++++-----------
 drivers/gpu/drm/radeon/radeon_mode.h       |  4 +--
 4 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_audio.c 
b/drivers/gpu/drm/radeon/radeon_audio.c
index 8d64ba185..52d004973 100644
--- a/drivers/gpu/drm/radeon/radeon_audio.c
+++ b/drivers/gpu/drm/radeon/radeon_audio.c
@@ -311,7 +311,7 @@ static void radeon_audio_write_sad_regs(struct drm_encoder 
*encoder)
        if (!connector)
                return;
 
-       sad_count = drm_edid_to_sad(radeon_connector->edid, &sads);
+       sad_count = drm_edid_to_sad(drm_edid_raw(radeon_connector->edid), 
&sads);
        if (sad_count < 0)
                DRM_ERROR("Couldn't read SADs: %d\n", sad_count);
        if (sad_count <= 0)
@@ -335,7 +335,7 @@ static void radeon_audio_write_speaker_allocation(struct 
drm_encoder *encoder)
        if (!connector)
                return;
 
-       sad_count = drm_edid_to_speaker_allocation(radeon_connector->edid, 
&sadb);
+       sad_count = 
drm_edid_to_speaker_allocation(drm_edid_raw(radeon_connector->edid), &sadb);
        if (sad_count < 0) {
                DRM_DEBUG("Couldn't read Speaker Allocation Data Block: %d\n",
                          sad_count);
diff --git a/drivers/gpu/drm/radeon/radeon_combios.c 
b/drivers/gpu/drm/radeon/radeon_combios.c
index df8d7f56b..f4947acd0 100644
--- a/drivers/gpu/drm/radeon/radeon_combios.c
+++ b/drivers/gpu/drm/radeon/radeon_combios.c
@@ -390,10 +390,10 @@ bool radeon_combios_check_hardcoded_edid(struct 
radeon_device *rdev)
 }
 
 /* this is used for atom LCDs as well */
-struct edid *
+const struct drm_edid *
 radeon_bios_get_hardcoded_edid(struct radeon_device *rdev)
 {
-       return 
drm_edid_duplicate(drm_edid_raw(rdev->mode_info.bios_hardcoded_edid));
+       return drm_edid_dup(rdev->mode_info.bios_hardcoded_edid);
 }
 
 static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct radeon_device 
*rdev,
diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c 
b/drivers/gpu/drm/radeon/radeon_connectors.c
index 012d8b229..d3a2efbcf 100644
--- a/drivers/gpu/drm/radeon/radeon_connectors.c
+++ b/drivers/gpu/drm/radeon/radeon_connectors.c
@@ -271,8 +271,8 @@ static void radeon_connector_get_edid(struct drm_connector 
*connector)
        if ((radeon_connector_encoder_get_dp_bridge_encoder_id(connector) !=
             ENCODER_OBJECT_ID_NONE) &&
            radeon_connector->ddc_bus->has_aux) {
-               radeon_connector->edid = drm_get_edid(connector,
-                                                     
&radeon_connector->ddc_bus->aux.ddc);
+               radeon_connector->edid = drm_edid_read_ddc(connector,
+                                                          
&radeon_connector->ddc_bus->aux.ddc);
        } else if ((connector->connector_type == 
DRM_MODE_CONNECTOR_DisplayPort) ||
                   (connector->connector_type == DRM_MODE_CONNECTOR_eDP)) {
                struct radeon_connector_atom_dig *dig = 
radeon_connector->con_priv;
@@ -280,19 +280,19 @@ static void radeon_connector_get_edid(struct 
drm_connector *connector)
                if ((dig->dp_sink_type == CONNECTOR_OBJECT_ID_DISPLAYPORT ||
                     dig->dp_sink_type == CONNECTOR_OBJECT_ID_eDP) &&
                    radeon_connector->ddc_bus->has_aux)
-                       radeon_connector->edid = 
drm_get_edid(&radeon_connector->base,
-                                                             
&radeon_connector->ddc_bus->aux.ddc);
+                       radeon_connector->edid = 
drm_edid_read_ddc(&radeon_connector->base,
+                                                                  
&radeon_connector->ddc_bus->aux.ddc);
                else if (radeon_connector->ddc_bus)
-                       radeon_connector->edid = 
drm_get_edid(&radeon_connector->base,
-                                                             
&radeon_connector->ddc_bus->adapter);
+                       radeon_connector->edid = 
drm_edid_read_ddc(&radeon_connector->base,
+                                                                  
&radeon_connector->ddc_bus->adapter);
        } else if (vga_switcheroo_handler_flags() & 
VGA_SWITCHEROO_CAN_SWITCH_DDC &&
                   connector->connector_type == DRM_MODE_CONNECTOR_LVDS &&
                   radeon_connector->ddc_bus) {
-               radeon_connector->edid = 
drm_get_edid_switcheroo(&radeon_connector->base,
-                                                                
&radeon_connector->ddc_bus->adapter);
+               radeon_connector->edid = 
drm_edid_read_switcheroo(&radeon_connector->base,
+                                                                 
&radeon_connector->ddc_bus->adapter);
        } else if (radeon_connector->ddc_bus) {
-               radeon_connector->edid = drm_get_edid(&radeon_connector->base,
-                                                     
&radeon_connector->ddc_bus->adapter);
+               radeon_connector->edid = 
drm_edid_read_ddc(&radeon_connector->base,
+                                                          
&radeon_connector->ddc_bus->adapter);
        }
 
        if (!radeon_connector->edid) {
@@ -328,11 +328,11 @@ static int radeon_ddc_get_modes(struct drm_connector 
*connector)
        int ret;
 
        if (radeon_connector->edid) {
-               drm_connector_update_edid_property(connector, 
radeon_connector->edid);
-               ret = drm_add_edid_modes(connector, radeon_connector->edid);
+               drm_edid_connector_update(connector, radeon_connector->edid);
+               ret = drm_edid_connector_add_modes(connector);
                return ret;
        }
-       drm_connector_update_edid_property(connector, NULL);
+       drm_edid_connector_update(connector, NULL);
        return 0;
 }
 
@@ -1016,7 +1016,7 @@ radeon_vga_detect(struct drm_connector *connector, bool 
force)
                        ret = connector_status_connected;
                } else {
                        radeon_connector->use_digital =
-                               !!(radeon_connector->edid->input & 
DRM_EDID_INPUT_DIGITAL);
+                               drm_edid_is_digital(radeon_connector->edid);
 
                        /* some oems have boards with separate digital and 
analog connectors
                         * with a shared ddc line (often vga + hdmi)
@@ -1271,7 +1271,7 @@ radeon_dvi_detect(struct drm_connector *connector, bool 
force)
                        }
                } else {
                        radeon_connector->use_digital =
-                               !!(radeon_connector->edid->input & 
DRM_EDID_INPUT_DIGITAL);
+                               drm_edid_is_digital(radeon_connector->edid);
 
                        /* some oems have boards with separate digital and 
analog connectors
                         * with a shared ddc line (often vga + hdmi)
diff --git a/drivers/gpu/drm/radeon/radeon_mode.h 
b/drivers/gpu/drm/radeon/radeon_mode.h
index 9e34da2ca..2f1624292 100644
--- a/drivers/gpu/drm/radeon/radeon_mode.h
+++ b/drivers/gpu/drm/radeon/radeon_mode.h
@@ -525,7 +525,7 @@ struct radeon_connector {
        bool use_digital;
        /* we need to mind the EDID between detect
           and get modes due to analog/digital/tvencoder */
-       struct edid *edid;
+       const struct drm_edid *edid;
        void *con_priv;
        bool dac_load_detect;
        bool detected_by_load; /* if the connection status was determined by 
load */
@@ -847,7 +847,7 @@ radeon_get_crtc_scanout_position(struct drm_crtc *crtc, 
bool in_vblank_irq,
                                 const struct drm_display_mode *mode);
 
 extern bool radeon_combios_check_hardcoded_edid(struct radeon_device *rdev);
-extern struct edid *
+extern const struct drm_edid *
 radeon_bios_get_hardcoded_edid(struct radeon_device *rdev);
 extern bool radeon_atom_get_clock_info(struct drm_device *dev);
 extern bool radeon_combios_get_clock_info(struct drm_device *dev);
-- 
2.51.0

Reply via email to