drm/edid: convert to use match_string() helper
[cascardo/linux.git] / drivers / gpu / drm / drm_edid_load.c
index 698b8c3..9a401ae 100644 (file)
@@ -170,16 +170,11 @@ static void *edid_load(struct drm_connector *connector, const char *name,
        int i, valid_extensions = 0;
        bool print_bad_edid = !connector->bad_edid_counter || (drm_debug & DRM_UT_KMS);
 
-       builtin = 0;
-       for (i = 0; i < GENERIC_EDIDS; i++) {
-               if (strcmp(name, generic_edid_name[i]) == 0) {
-                       fwdata = generic_edid[i];
-                       fwsize = sizeof(generic_edid[i]);
-                       builtin = 1;
-                       break;
-               }
-       }
-       if (!builtin) {
+       builtin = match_string(generic_edid_name, GENERIC_EDIDS, name);
+       if (builtin >= 0) {
+               fwdata = generic_edid[builtin];
+               fwsize = sizeof(generic_edid[builtin]);
+       } else {
                struct platform_device *pdev;
                int err;
 
@@ -252,7 +247,7 @@ static void *edid_load(struct drm_connector *connector, const char *name,
        }
 
        DRM_INFO("Got %s EDID base block and %d extension%s from "
-           "\"%s\" for connector \"%s\"\n", builtin ? "built-in" :
+           "\"%s\" for connector \"%s\"\n", (builtin >= 0) ? "built-in" :
            "external", valid_extensions, valid_extensions == 1 ? "" : "s",
            name, connector_name);