summaryrefslogtreecommitdiff
path: root/nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-03-02 00:59:28 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-03-02 00:59:28 +0000
commit5fb6f65ca74421edf5569ce13ee9f9c364b87d02 (patch)
treed88d85fa390a78eb0815aea74f39bbb5a2b651e1 /nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c
parent3c17616fb76eca92cc0daaa56b8769e381c69330 (diff)
downloadpx4-nuttx-5fb6f65ca74421edf5569ce13ee9f9c364b87d02.tar.gz
px4-nuttx-5fb6f65ca74421edf5569ce13ee9f9c364b87d02.tar.bz2
px4-nuttx-5fb6f65ca74421edf5569ce13ee9f9c364b87d02.zip
LPC1788 updates from Rommel Marcelo
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5696 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c')
-rw-r--r--nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c23
1 files changed, 6 insertions, 17 deletions
diff --git a/nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c b/nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c
index a94eaf999..387875120 100644
--- a/nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c
+++ b/nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c
@@ -273,8 +273,8 @@ static int lpc17_configiocon(unsigned int port, unsigned int pin,
regaddr = LPC17_IOCON_P(port, pin);
regval = getreg32(regaddr);
- regval &= value;
- regval &= ~typemask;
+ regval |= value;
+ regval &= typemask;
putreg32(regval, regaddr);
return OK;
@@ -702,6 +702,10 @@ static int lpc17_configalternate(lpc17_pinset_t cfgset, unsigned int port,
#elif defined(LPC178x)
uint32_t regval = 0;
+ /* Set the alternate pin */
+
+ regval |= (alt & IOCON_FUNC_MASK);
+
/* Select open drain output */
if ((cfgset & GPIO_OPEN_DRAIN) != 0)
@@ -709,21 +713,6 @@ static int lpc17_configalternate(lpc17_pinset_t cfgset, unsigned int port,
regval |= IOCON_OD_MASK;
}
- //~ /* Select slew output */
- //~
- //~ if ((cfgset & GPIO_SLEW) != 0)
- //~ {
- //~ regval |= IOCON_SLEW_MASK;
- //~ }
-
- /* Set pull-up mode */
-
- regval |= ((cfgset & GPIO_PUMODE_MASK) >> GPIO_PINMODE_SHIFT);
-
- /* Set the alternate pin */
-
- regval |= (alt & ~IOCON_FUNC_MASK);
-
/* Set IOCON register */
lpc17_configiocon(port, pin, regval);