Commit 23d9cec0 authored by Nishanth Menon's avatar Nishanth Menon Committed by Tony Lindgren

pinctrl: dra: dt-bindings: Fix pull enable/disable

The DRA74/72 control module pins have a weak pull up and pull down.
This is configured by bit offset 17. if BIT(17) is 1, a pull up is
selected, else a pull down is selected.

However, this pull resisstor is applied based on BIT(16) -
PULLUDENABLE - if BIT(18) is *0*, then pull as defined in BIT(17) is
applied, else no weak pulls are applied. We defined this in reverse.

Reference: Table 18-5 (Description of the pad configuration register
bits) in Technical Reference Manual Revision (DRA74x revision Q:
SPRUHI2Q Revised June 2014 and DRA72x revision F: SPRUHP2F - Revised
June 2014)

Fixes: 6e58b8f1 ("ARM: dts: DRA7: Add the dts files for dra7 SoC and dra7-evm board")
Signed-off-by: default avatarNishanth Menon <nm@ti.com>
Tested-by: default avatarFelipe Balbi <balbi@ti.com>
Acked-by: default avatarFelipe Balbi <balbi@ti.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent ba394f0b
...@@ -30,7 +30,8 @@ ...@@ -30,7 +30,8 @@
#define MUX_MODE14 0xe #define MUX_MODE14 0xe
#define MUX_MODE15 0xf #define MUX_MODE15 0xf
#define PULL_ENA (1 << 16) #define PULL_ENA (0 << 16)
#define PULL_DIS (1 << 16)
#define PULL_UP (1 << 17) #define PULL_UP (1 << 17)
#define INPUT_EN (1 << 18) #define INPUT_EN (1 << 18)
#define SLEWCONTROL (1 << 19) #define SLEWCONTROL (1 << 19)
...@@ -38,10 +39,10 @@ ...@@ -38,10 +39,10 @@
#define WAKEUP_EVENT (1 << 25) #define WAKEUP_EVENT (1 << 25)
/* Active pin states */ /* Active pin states */
#define PIN_OUTPUT 0 #define PIN_OUTPUT (0 | PULL_DIS)
#define PIN_OUTPUT_PULLUP (PIN_OUTPUT | PULL_ENA | PULL_UP) #define PIN_OUTPUT_PULLUP (PIN_OUTPUT | PULL_ENA | PULL_UP)
#define PIN_OUTPUT_PULLDOWN (PIN_OUTPUT | PULL_ENA) #define PIN_OUTPUT_PULLDOWN (PIN_OUTPUT | PULL_ENA)
#define PIN_INPUT INPUT_EN #define PIN_INPUT (INPUT_EN | PULL_DIS)
#define PIN_INPUT_SLEW (INPUT_EN | SLEWCONTROL) #define PIN_INPUT_SLEW (INPUT_EN | SLEWCONTROL)
#define PIN_INPUT_PULLUP (PULL_ENA | INPUT_EN | PULL_UP) #define PIN_INPUT_PULLUP (PULL_ENA | INPUT_EN | PULL_UP)
#define PIN_INPUT_PULLDOWN (PULL_ENA | INPUT_EN) #define PIN_INPUT_PULLDOWN (PULL_ENA | INPUT_EN)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment