From 5fb6f65ca74421edf5569ce13ee9f9c364b87d02 Mon Sep 17 00:00:00 2001 From: patacongo Date: Sat, 2 Mar 2013 00:59:28 +0000 Subject: LPC1788 updates from Rommel Marcelo git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5696 42af7a65-404d-4744-a932-0658087f49c3 --- nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) (limited to 'nuttx/arch/arm/src/lpc17xx/lpc17_gpio.c') 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); -- cgit v1.2.3