slg51002: retry probe if any given gpio is missing

If optional GPIO are provisioned from the device tree, need to retry
probe if can't be acquired. This is to avoid peripherals unable to power
up.

Bug: 317937395
Test: build pass
Change-Id: I2aad8a6be94b969cd137888d44f7914f1b4c4f34
Signed-off-by: Kamal Shafi <kamalshafi@google.com>
(cherry picked from commit 20a5da2b8e1cafbc3bf218e3c3bd4d7e8095b1b2)
diff --git a/drivers/mfd/slg51002-core.c b/drivers/mfd/slg51002-core.c
index e176103..fccb1c0 100644
--- a/drivers/mfd/slg51002-core.c
+++ b/drivers/mfd/slg51002-core.c
@@ -636,6 +636,9 @@
 
 		slg51002->chip_bb_pin = gpio;
 		usleep_range(2000, 2020);
+	} else if (of_property_read_bool(client->dev.of_node, "dlg,bb-gpios")) {
+		/* retry probe if property exist */
+		return gpio;
 	} else {
 		slg51002->chip_bb_pin = -1;
 	}
@@ -655,6 +658,9 @@
 
 		slg51002->chip_buck_pin = gpio;
 		usleep_range(2000, 2020);
+	} else if (of_property_read_bool(client->dev.of_node, "dlg,buck-gpios")) {
+		/* retry probe if property exist */
+		return gpio;
 	} else {
 		slg51002->chip_buck_pin = -1;
 	}