kernel: update 3.14 to 3.14.18
[openwrt/openwrt.git] / target / linux / ipq806x / patches / 0149-pinctrl-qcom-Add-BUS_HOLD-Keeper-bias.patch
1 From b1325bfad3ad0e543ce90a6b08d74500dc96f4b9 Mon Sep 17 00:00:00 2001
2 From: Andy Gross <agross@codeaurora.org>
3 Date: Mon, 16 Jun 2014 16:52:55 -0500
4 Subject: [PATCH 149/182] pinctrl: qcom: Add BUS_HOLD/Keeper bias
5
6 This patch adds the bus_hold bias option for pins.
7
8 Signed-off-by: Andy Gross <agross@codeaurora.org>
9 ---
10 drivers/pinctrl/pinctrl-msm.c | 8 ++++++++
11 1 file changed, 8 insertions(+)
12
13 --- a/drivers/pinctrl/pinctrl-msm.c
14 +++ b/drivers/pinctrl/pinctrl-msm.c
15 @@ -207,6 +207,7 @@ static int msm_config_reg(struct msm_pin
16 case PIN_CONFIG_BIAS_DISABLE:
17 case PIN_CONFIG_BIAS_PULL_DOWN:
18 case PIN_CONFIG_BIAS_PULL_UP:
19 + case PIN_CONFIG_BIAS_BUS_HOLD:
20 *bit = g->pull_bit;
21 *mask = 3;
22 break;
23 @@ -243,6 +244,7 @@ static int msm_config_set(struct pinctrl
24
25 #define MSM_NO_PULL 0
26 #define MSM_PULL_DOWN 1
27 +#define MSM_KEEPER 2
28 #define MSM_PULL_UP 3
29
30 static unsigned msm_regval_to_drive(u32 val)
31 @@ -280,6 +282,9 @@ static int msm_config_group_get(struct p
32 case PIN_CONFIG_BIAS_PULL_DOWN:
33 arg = arg == MSM_PULL_DOWN;
34 break;
35 + case PIN_CONFIG_BIAS_BUS_HOLD:
36 + arg = arg == MSM_KEEPER;
37 + break;
38 case PIN_CONFIG_BIAS_PULL_UP:
39 arg = arg == MSM_PULL_UP;
40 break;
41 @@ -339,6 +344,9 @@ static int msm_config_group_set(struct p
42 case PIN_CONFIG_BIAS_PULL_DOWN:
43 arg = MSM_PULL_DOWN;
44 break;
45 + case PIN_CONFIG_BIAS_BUS_HOLD:
46 + arg = MSM_KEEPER;
47 + break;
48 case PIN_CONFIG_BIAS_PULL_UP:
49 arg = MSM_PULL_UP;
50 break;