diff options
Diffstat (limited to 'drivers/base/dd.c')
| -rw-r--r-- | drivers/base/dd.c | 7 | 
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/base/dd.c b/drivers/base/dd.c index e3bbed8a617..656310156dd 100644 --- a/drivers/base/dd.c +++ b/drivers/base/dd.c @@ -24,6 +24,7 @@  #include <linux/wait.h>  #include <linux/async.h>  #include <linux/pm_runtime.h> +#include <linux/pinctrl/devinfo.h>  #include "base.h"  #include "power/power.h" @@ -269,6 +270,12 @@ static int really_probe(struct device *dev, struct device_driver *drv)  	WARN_ON(!list_empty(&dev->devres_head));  	dev->driver = drv; + +	/* If using pinctrl, bind pins now before probing */ +	ret = pinctrl_bind_pins(dev); +	if (ret) +		goto probe_failed; +  	if (driver_sysfs_add(dev)) {  		printk(KERN_ERR "%s: driver_sysfs_add(%s) failed\n",  			__func__, dev_name(dev));  |