drm_mm_takedown(&priv->linear);
 }
 
-static int compare_of(struct device *dev, void *data)
-{
-       return dev->of_node == data;
-}
-
-static int compare_dev_name(struct device *dev, void *data)
-{
-       const char *name = data;
-       return !strcmp(dev_name(dev), name);
-}
-
 static void armada_add_endpoints(struct device *dev,
        struct component_match **match, struct device_node *dev_node)
 {
        for_each_endpoint_of_node(dev_node, ep) {
                remote = of_graph_get_remote_port_parent(ep);
                if (remote && of_device_is_available(remote))
-                       drm_of_component_match_add(dev, match, compare_of,
+                       drm_of_component_match_add(dev, match, component_compare_of,
                                                   remote);
                of_node_put(remote);
        }
        struct device *dev = &pdev->dev;
        int ret;
 
-       ret = drm_of_component_probe(dev, compare_dev_name, &armada_master_ops);
+       ret = drm_of_component_probe(dev, component_compare_dev_name, &armada_master_ops);
        if (ret != -EINVAL)
                return ret;
 
                int i;
 
                for (i = 0; devices[i]; i++)
-                       component_match_add(dev, &match, compare_dev_name,
+                       component_match_add(dev, &match, component_compare_dev_name,
                                            devices[i]);
 
                if (i == 0) {