diff --git a/arch/arm/src/lpc17xx/lpc17_allocateheap.c b/arch/arm/src/lpc17xx/lpc17_allocateheap.c
index bcb701407489401e09f9f953caa80df531d89b3b..9cc3ba353927ff108fb71d033473dfa73a590cda 100755
--- a/arch/arm/src/lpc17xx/lpc17_allocateheap.c
+++ b/arch/arm/src/lpc17xx/lpc17_allocateheap.c
@@ -77,25 +77,11 @@
 
 #ifdef LPC17_HAVE_BANK0
 #  if CONFIG_MM_REGIONS < 2
-#    warning "CONFIG_MM_REGIONS < 2: AHB SRAM Bank0 not included in HEAP"
+#    warning "CONFIG_MM_REGIONS < 2: AHB SRAM Bank(s) not included in HEAP"
 #  endif
 #else
 #  if CONFIG_MM_REGIONS > 1
-#    warning "CONFIG_MM_REGIONS > 1: This MCU has no AHB SRAM Bank0"
-#    undef CONFIG_MM_REGIONS
-#    define CONFIG_MM_REGIONS 1
-#  endif
-#endif
-
-#ifdef LPC17_HAVE_BANK1
-#  if CONFIG_MM_REGIONS < 3
-#    warning "CONFIG_MM_REGIONS < 3: AHB SRAM Bank1 not included in HEAP"
-#  endif
-#else
-#  if CONFIG_MM_REGIONS > 2
-#    warning "CONFIG_MM_REGIONS > 2: This MCU has no AHB SRAM Bank1"
-#    undef CONFIG_MM_REGIONS
-#    define CONFIG_MM_REGIONS 2
+#    warning "CONFIG_MM_REGIONS > 1: This MCU has no AHB SRAM Bank0/1"
 #  endif
 #endif
 
@@ -141,10 +127,16 @@ void up_allocate_heap(FAR void **heap_start, size_t *heap_size)
 #if CONFIG_MM_REGIONS > 1
 void up_addregion(void)
 {
-  mm_addregion((FAR void*)LPC17_HAVE_BANK0, 16*1024);
+  /* Banks 0 and 1 are each 16Kb.  If both are present, they occupy a
+   * contiguous 32Kb memory region.
+   */
 
-#if CONFIG_MM_REGIONS > 2
-  mm_addregion((FAR void*)LPC17_HAVE_BANK1, 16*1024);
+#ifdef LPC17_HAVE_BANK0
+# ifdef LPC17_HAVE_BANK1
+  mm_addregion((FAR void*)LPC17_SRAM_BANK0, 32*1024);
+# else
+  mm_addregion((FAR void*)LPC17_SRAM_BANK0, 16*1024);
+# endif
 #endif
 }
 #endif
diff --git a/arch/arm/src/lpc17xx/lpc17_gpio.c b/arch/arm/src/lpc17xx/lpc17_gpio.c
index be538d85d83fde276ef7bf635acdeafbe581f521..8530286920d2dd0764bf8a18b295bb909f74021d 100755
--- a/arch/arm/src/lpc17xx/lpc17_gpio.c
+++ b/arch/arm/src/lpc17xx/lpc17_gpio.c
@@ -110,9 +110,9 @@ const uint32_t g_fiobase[GPIO_NPORTS] =
 
 const uint32_t g_intbase[GPIO_NPORTS] = 
 {
-  LPC17_GPIOINT0_OFFSET,
+  LPC17_GPIOINT0_BASE,
   0,
-  LPC17_GPIOINT2_OFFSET,
+  LPC17_GPIOINT2_BASE,
   0,
   0
 };
diff --git a/arch/arm/src/lpc17xx/lpc17_memorymap.h b/arch/arm/src/lpc17xx/lpc17_memorymap.h
index b56d35a8dd6996852145e7e7e84990f89fbb2517..f331c958c040673bd42a51993f4db272c05d3141 100755
--- a/arch/arm/src/lpc17xx/lpc17_memorymap.h
+++ b/arch/arm/src/lpc17xx/lpc17_memorymap.h
@@ -54,7 +54,7 @@
 #define LPC17_SRAM_BASE     0x10000000 /* -0x10007fff: On-chip SRAM (devices <=32Kb) */
 #define LPC17_ROM_BASE      0x1fff0000 /* -0x1fffffff: 8Kb Boot ROM with flash services */
 #define LPC17_AHBSRAM_BASE  0x20000000 /* -0x3fffffff: On-chip AHB SRAM (devices >32Kb) */
-#  define LPC17_SRAM_BANK0  0x20070000 /* -0x2007ffff: On-chip AHB SRAM Bank0 (devices >=32Kb) */
+#  define LPC17_SRAM_BANK0  0x2007c000 /* -0x2007ffff: On-chip AHB SRAM Bank0 (devices >=32Kb) */
 #  define LPC17_SRAM_BANK1  0x20080000 /* -0x2008ffff: On-chip AHB SRAM Bank1 (devices 64Kb) */
 #define LPC17_GPIO_BASE     0x2009c000 /* -0x2009ffff: GPIO */
 #define LPC17_APB_BASE      0x40000000 /* -0x5fffffff: APB Peripherals */
diff --git a/configs/nucleus2g/ostest/defconfig b/configs/nucleus2g/ostest/defconfig
index 93a11c454405d6bc79d73d4b6e34fed0865150f2..f2f075bb11b9610e7d7f52db01c0d725e5c51f89 100755
--- a/configs/nucleus2g/ostest/defconfig
+++ b/configs/nucleus2g/ostest/defconfig
@@ -299,7 +299,7 @@ CONFIG_EXAMPLE=ostest
 CONFIG_DEBUG=n
 CONFIG_DEBUG_VERBOSE=n
 CONFIG_DEBUG_SYMBOLS=n
-CONFIG_MM_REGIONS=3
+CONFIG_MM_REGIONS=2
 CONFIG_ARCH_LOWPUTC=y
 CONFIG_RR_INTERVAL=200
 CONFIG_SCHED_INSTRUMENTATION=n