diff options
| -rw-r--r-- | drivers/pinctrl/vt8500/pinctrl-wmt.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/drivers/pinctrl/vt8500/pinctrl-wmt.c b/drivers/pinctrl/vt8500/pinctrl-wmt.c index b28d1af9c232..9802b67040cc 100644 --- a/drivers/pinctrl/vt8500/pinctrl-wmt.c +++ b/drivers/pinctrl/vt8500/pinctrl-wmt.c | |||
| @@ -276,7 +276,20 @@ static int wmt_pctl_dt_node_to_map_pull(struct wmt_pinctrl_data *data, | |||
| 276 | if (!configs) | 276 | if (!configs) |
| 277 | return -ENOMEM; | 277 | return -ENOMEM; |
| 278 | 278 | ||
| 279 | configs[0] = pull; | 279 | switch (pull) { |
| 280 | case 0: | ||
| 281 | configs[0] = PIN_CONFIG_BIAS_DISABLE; | ||
| 282 | break; | ||
| 283 | case 1: | ||
| 284 | configs[0] = PIN_CONFIG_BIAS_PULL_DOWN; | ||
| 285 | break; | ||
| 286 | case 2: | ||
| 287 | configs[0] = PIN_CONFIG_BIAS_PULL_UP; | ||
| 288 | break; | ||
| 289 | default: | ||
| 290 | configs[0] = PIN_CONFIG_BIAS_DISABLE; | ||
| 291 | dev_err(data->dev, "invalid pull state %d - disabling\n", pull); | ||
| 292 | } | ||
| 280 | 293 | ||
| 281 | map->type = PIN_MAP_TYPE_CONFIGS_PIN; | 294 | map->type = PIN_MAP_TYPE_CONFIGS_PIN; |
| 282 | map->data.configs.group_or_pin = data->groups[group]; | 295 | map->data.configs.group_or_pin = data->groups[group]; |
