diff --git a/drivers/pinctrl/broadcom/pinctrl-bcm283x.c b/drivers/pinctrl/broadcom/pinctrl-bcm283x.c
index 42e05b0..44a310f 100644
--- a/drivers/pinctrl/broadcom/pinctrl-bcm283x.c
+++ b/drivers/pinctrl/broadcom/pinctrl-bcm283x.c
@@ -104,7 +104,7 @@
 	{}
 };
 
-int bcm283x_pinctl_ofdata_to_platdata(struct udevice *dev)
+int bcm283x_pinctl_of_to_plat(struct udevice *dev)
 {
 	struct bcm283x_pinctrl_priv *priv;
 
@@ -149,7 +149,7 @@
 	.name		= "bcm283x_pinctrl",
 	.id		= UCLASS_PINCTRL,
 	.of_match	= of_match_ptr(bcm2835_pinctrl_id),
-	.ofdata_to_platdata = bcm283x_pinctl_ofdata_to_platdata,
+	.of_to_plat = bcm283x_pinctl_of_to_plat,
 	.priv_auto	= sizeof(struct bcm283x_pinctrl_priv),
 	.ops		= &bcm283x_pinctrl_ops,
 	.probe		= bcm283x_pinctl_probe,
diff --git a/drivers/pinctrl/intel/pinctrl.c b/drivers/pinctrl/intel/pinctrl.c
index 576e1b4..64cde5e 100644
--- a/drivers/pinctrl/intel/pinctrl.c
+++ b/drivers/pinctrl/intel/pinctrl.c
@@ -143,7 +143,7 @@
 
 	/*
 	 * We have to probe each one of these since the community link is only
-	 * attached in intel_pinctrl_ofdata_to_platdata().
+	 * attached in intel_pinctrl_of_to_plat().
 	 */
 	uclass_foreach_dev_probe(UCLASS_PINCTRL, dev) {
 		struct intel_pinctrl_priv *priv = dev_get_priv(dev);
@@ -613,9 +613,8 @@
 	return 0;
 }
 
-int intel_pinctrl_ofdata_to_platdata(struct udevice *dev,
-				     const struct pad_community *comm,
-				     int num_cfgs)
+int intel_pinctrl_of_to_plat(struct udevice *dev,
+			     const struct pad_community *comm, int num_cfgs)
 {
 	struct p2sb_child_platdata *pplat = dev_get_parent_plat(dev);
 	struct intel_pinctrl_priv *priv = dev_get_priv(dev);
diff --git a/drivers/pinctrl/intel/pinctrl_apl.c b/drivers/pinctrl/intel/pinctrl_apl.c
index b34cae6..2432f3f 100644
--- a/drivers/pinctrl/intel/pinctrl_apl.c
+++ b/drivers/pinctrl/intel/pinctrl_apl.c
@@ -136,7 +136,7 @@
 	},
 };
 
-static int apl_pinctrl_ofdata_to_platdata(struct udevice *dev)
+static int apl_pinctrl_of_to_plat(struct udevice *dev)
 {
 	struct p2sb_child_platdata *pplat;
 	const struct pad_community *comm = NULL;
@@ -166,7 +166,7 @@
 			comm = &apl_gpio_communities[i];
 	}
 
-	return intel_pinctrl_ofdata_to_platdata(dev, comm, 2);
+	return intel_pinctrl_of_to_plat(dev, comm, 2);
 }
 
 static const struct udevice_id apl_gpio_ids[] = {
@@ -183,7 +183,7 @@
 #if !CONFIG_IS_ENABLED(OF_PLATDATA)
 	.bind		= dm_scan_fdt_dev,
 #endif
-	.ofdata_to_platdata = apl_pinctrl_ofdata_to_platdata,
+	.of_to_plat = apl_pinctrl_of_to_plat,
 	.priv_auto	= sizeof(struct intel_pinctrl_priv),
 	.plat_auto	= sizeof(struct apl_gpio_platdata),
 };
diff --git a/drivers/pinctrl/mtmips/pinctrl-mt7628.c b/drivers/pinctrl/mtmips/pinctrl-mt7628.c
index 8edab2f..c15da6b 100644
--- a/drivers/pinctrl/mtmips/pinctrl-mt7628.c
+++ b/drivers/pinctrl/mtmips/pinctrl-mt7628.c
@@ -534,7 +534,7 @@
 	return ret;
 }
 
-static int mt7628_pinctrl_ofdata_to_platdata(struct udevice *dev)
+static int mt7628_pinctrl_of_to_plat(struct udevice *dev)
 {
 	struct mt7628_pinctrl_priv *priv = dev_get_priv(dev);
 
@@ -578,7 +578,7 @@
 	.name = "mt7628-pinctrl",
 	.id = UCLASS_PINCTRL,
 	.of_match = mt7628_pinctrl_ids,
-	.ofdata_to_platdata = mt7628_pinctrl_ofdata_to_platdata,
+	.of_to_plat = mt7628_pinctrl_of_to_plat,
 	.ops = &mt7628_pinctrl_ops,
 	.probe = mt7628_pinctrl_probe,
 	.priv_auto	= sizeof(struct mt7628_pinctrl_priv),
diff --git a/drivers/pinctrl/pinctrl-qe-io.c b/drivers/pinctrl/pinctrl-qe-io.c
index 4f7cfaa..5093a52 100644
--- a/drivers/pinctrl/pinctrl-qe-io.c
+++ b/drivers/pinctrl/pinctrl-qe-io.c
@@ -120,7 +120,7 @@
 	qe_cfg_iopin(par_io, port, pin, dir, open_drain, assign);
 }
 #else
-static int qe_io_ofdata_to_platdata(struct udevice *dev)
+static int qe_io_of_to_plat(struct udevice *dev)
 {
 	struct qe_io_platdata *plat = dev->plat;
 	fdt_addr_t addr;
@@ -245,7 +245,7 @@
 	.id = UCLASS_PINCTRL,
 	.of_match = of_match_ptr(par_io_pinctrl_match),
 	.probe = par_io_pinctrl_probe,
-	.ofdata_to_platdata = qe_io_ofdata_to_platdata,
+	.of_to_plat = qe_io_of_to_plat,
 	.plat_auto	= sizeof(struct qe_io_platdata),
 	.ops = &par_io_pinctrl_ops,
 #if CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA)
diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c
index 0a3319c..25d646a 100644
--- a/drivers/pinctrl/pinctrl-single.c
+++ b/drivers/pinctrl/pinctrl-single.c
@@ -148,7 +148,7 @@
 	return len;
 }
 
-static int single_ofdata_to_platdata(struct udevice *dev)
+static int single_of_to_plat(struct udevice *dev)
 {
 	fdt_addr_t addr;
 	u32 of_reg[2];
@@ -192,5 +192,5 @@
 	.of_match = single_pinctrl_match,
 	.ops = &single_pinctrl_ops,
 	.plat_auto	= sizeof(struct single_pdata),
-	.ofdata_to_platdata = single_ofdata_to_platdata,
+	.of_to_plat = single_of_to_plat,
 };
