Merge v5.6-rc5 into drm-next
[linux-2.6-microblaze.git] / drivers / gpu / drm / bridge / analogix / analogix-anx6345.c
index 2dfa2fd..694c15b 100644 (file)
@@ -519,11 +519,17 @@ static const struct drm_connector_funcs anx6345_connector_funcs = {
        .atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
 };
 
-static int anx6345_bridge_attach(struct drm_bridge *bridge)
+static int anx6345_bridge_attach(struct drm_bridge *bridge,
+                                enum drm_bridge_attach_flags flags)
 {
        struct anx6345 *anx6345 = bridge_to_anx6345(bridge);
        int err;
 
+       if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR) {
+               DRM_ERROR("Fix bridge driver to make connector optional!");
+               return -EINVAL;
+       }
+
        if (!bridge->encoder) {
                DRM_ERROR("Parent encoder object not found");
                return -ENODEV;
@@ -711,14 +717,14 @@ static int anx6345_i2c_probe(struct i2c_client *client,
                DRM_DEBUG("No panel found\n");
 
        /* 1.2V digital core power regulator  */
-       anx6345->dvdd12 = devm_regulator_get(dev, "dvdd12-supply");
+       anx6345->dvdd12 = devm_regulator_get(dev, "dvdd12");
        if (IS_ERR(anx6345->dvdd12)) {
                DRM_ERROR("dvdd12-supply not found\n");
                return PTR_ERR(anx6345->dvdd12);
        }
 
        /* 2.5V digital core power regulator  */
-       anx6345->dvdd25 = devm_regulator_get(dev, "dvdd25-supply");
+       anx6345->dvdd25 = devm_regulator_get(dev, "dvdd25");
        if (IS_ERR(anx6345->dvdd25)) {
                DRM_ERROR("dvdd25-supply not found\n");
                return PTR_ERR(anx6345->dvdd25);