|
@@ -276,7 +276,20 @@ static int wmt_pctl_dt_node_to_map_pull(struct wmt_pinctrl_data *data,
|
|
if (!configs)
|
|
if (!configs)
|
|
return -ENOMEM;
|
|
return -ENOMEM;
|
|
|
|
|
|
- configs[0] = pull;
|
|
|
|
|
|
+ switch (pull) {
|
|
|
|
+ case 0:
|
|
|
|
+ configs[0] = PIN_CONFIG_BIAS_DISABLE;
|
|
|
|
+ break;
|
|
|
|
+ case 1:
|
|
|
|
+ configs[0] = PIN_CONFIG_BIAS_PULL_DOWN;
|
|
|
|
+ break;
|
|
|
|
+ case 2:
|
|
|
|
+ configs[0] = PIN_CONFIG_BIAS_PULL_UP;
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ configs[0] = PIN_CONFIG_BIAS_DISABLE;
|
|
|
|
+ dev_err(data->dev, "invalid pull state %d - disabling\n", pull);
|
|
|
|
+ }
|
|
|
|
|
|
map->type = PIN_MAP_TYPE_CONFIGS_PIN;
|
|
map->type = PIN_MAP_TYPE_CONFIGS_PIN;
|
|
map->data.configs.group_or_pin = data->groups[group];
|
|
map->data.configs.group_or_pin = data->groups[group];
|