We've used a temporary platform device for firmware EDID loading since
it was introduced in commit da0df92b5731 ("drm: allow loading an EDID as
firmware to override broken monitor"), but there's no explanation why.

Do we need to?

Maybe this fixes the suspend/resume issue?

(Yes, I'll rewrite the commit message if this is the way to go ;)

References: 
https://lore.kernel.org/r/20220727074152.43059-1-matthieu.chare...@gmail.com
Cc: Matthieu CHARETTE <matthieu.chare...@gmail.com>
Cc: Ville Syrjälä <ville.syrj...@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nik...@intel.com>
---
 drivers/gpu/drm/drm_edid_load.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/drm_edid_load.c b/drivers/gpu/drm/drm_edid_load.c
index 37d8ba3ddb46..fbae12130234 100644
--- a/drivers/gpu/drm/drm_edid_load.c
+++ b/drivers/gpu/drm/drm_edid_load.c
@@ -182,18 +182,9 @@ static void *edid_load(struct drm_connector *connector, 
const char *name,
                fwdata = generic_edid[builtin];
                fwsize = sizeof(generic_edid[builtin]);
        } else {
-               struct platform_device *pdev;
                int err;
 
-               pdev = platform_device_register_simple(connector_name, -1, 
NULL, 0);
-               if (IS_ERR(pdev)) {
-                       DRM_ERROR("Failed to register EDID firmware platform 
device "
-                                 "for connector \"%s\"\n", connector_name);
-                       return ERR_CAST(pdev);
-               }
-
-               err = request_firmware(&fw, name, &pdev->dev);
-               platform_device_unregister(pdev);
+               err = request_firmware(&fw, name, connector->dev->dev);
                if (err) {
                        DRM_ERROR("Requesting EDID firmware \"%s\" failed 
(err=%d)\n",
                                  name, err);
-- 
2.34.1

Reply via email to