diff options
Diffstat (limited to 'drivers/pinctrl/pinctrl-imx.c')
| -rw-r--r-- | drivers/pinctrl/pinctrl-imx.c | 34 | 
1 files changed, 16 insertions, 18 deletions
diff --git a/drivers/pinctrl/pinctrl-imx.c b/drivers/pinctrl/pinctrl-imx.c index f6e7c670906..dd6d93aa533 100644 --- a/drivers/pinctrl/pinctrl-imx.c +++ b/drivers/pinctrl/pinctrl-imx.c @@ -27,16 +27,16 @@  #include "core.h"  #include "pinctrl-imx.h" -#define IMX_PMX_DUMP(info, p, m, c, n)		\ -{						\ -	int i, j;				\ -	printk("Format: Pin Mux Config\n");	\ -	for (i = 0; i < n; i++) {		\ -		j = p[i];			\ -		printk("%s %d 0x%lx\n",		\ -			info->pins[j].name,	\ -			m[i], c[i]);		\ -	}					\ +#define IMX_PMX_DUMP(info, p, m, c, n)			\ +{							\ +	int i, j;					\ +	printk(KERN_DEBUG "Format: Pin Mux Config\n");	\ +	for (i = 0; i < n; i++) {			\ +		j = p[i];				\ +		printk(KERN_DEBUG "%s %d 0x%lx\n",	\ +			info->pins[j].name,		\ +			m[i], c[i]);			\ +	}						\  }  /* The bits in CONFIG cell defined in binding doc*/ @@ -173,8 +173,10 @@ static int imx_dt_node_to_map(struct pinctrl_dev *pctldev,  	/* create mux map */  	parent = of_get_parent(np); -	if (!parent) +	if (!parent) { +		kfree(new_map);  		return -EINVAL; +	}  	new_map[0].type = PIN_MAP_TYPE_MUX_GROUP;  	new_map[0].data.mux.function = parent->name;  	new_map[0].data.mux.group = np->name; @@ -193,7 +195,7 @@ static int imx_dt_node_to_map(struct pinctrl_dev *pctldev,  	}  	dev_dbg(pctldev->dev, "maps: function %s group %s num %d\n", -		new_map->data.mux.function, new_map->data.mux.group, map_num); +		(*map)->data.mux.function, (*map)->data.mux.group, map_num);  	return 0;  } @@ -201,10 +203,7 @@ static int imx_dt_node_to_map(struct pinctrl_dev *pctldev,  static void imx_dt_free_map(struct pinctrl_dev *pctldev,  				struct pinctrl_map *map, unsigned num_maps)  { -	int i; - -	for (i = 0; i < num_maps; i++) -		kfree(map); +	kfree(map);  }  static struct pinctrl_ops imx_pctrl_ops = { @@ -475,9 +474,8 @@ static int __devinit imx_pinctrl_parse_groups(struct device_node *np,  		grp->configs[j] = config & ~IMX_PAD_SION;  	} -#ifdef DEBUG  	IMX_PMX_DUMP(info, grp->pins, grp->mux_mode, grp->configs, grp->npins); -#endif +  	return 0;  }  |