diff --git a/ChangeLog b/ChangeLog
index 5ce05b55f3370b05986576959bd4817d45ad4ee9..52298e06d18d4f0466eee13eda5990f06b954d06 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1054,3 +1054,6 @@
 
 5.2 2010-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
 
+	* arch/arm/src/sam3u/sam3u_pio.c - Fix an address calculation error
+	  that caused ports B & C to get mapped to the PIOA base address.
+	  This is an important bugfix! (a patch is available)
diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html
index f98b743380cf5e18fa5e35f0b3b564a6a8c0e0c1..2e3127e68591c91d53a3dddb28ce4a9a4b00b8e5 100644
--- a/Documentation/NuttX.html
+++ b/Documentation/NuttX.html
@@ -1685,6 +1685,10 @@ buildroot-1.8 2009-12-21 &lt;spudmonkey@racsa.co.cr&gt;
 <ul><pre>
 nuttx-5.2 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
 
+	* arch/arm/src/sam3u/sam3u_pio.c - Fix an address calculation error
+	  that caused ports B & C to get mapped to the PIOA base address.
+	  This is an important bugfix! (a patch is available)
+
 pascal-2.1 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
 
 buildroot-1.9 2010-xx-xx <spudmonkey@racsa.co.cr>
diff --git a/arch/arm/src/sam3u/sam3u_pio.c b/arch/arm/src/sam3u/sam3u_pio.c
index ab3d746ba317fdb60e15de108656e0d9b4662391..29eb5e833b15a62d525e75e1f9bdcd8e9b07fc6e 100755
--- a/arch/arm/src/sam3u/sam3u_pio.c
+++ b/arch/arm/src/sam3u/sam3u_pio.c
@@ -80,7 +80,7 @@
 static inline uintptr_t sam3u_gpiobase(uint16_t cfgset)
 {
   int port = (cfgset & GPIO_PORT_MASK) >> GPIO_PORT_SHIFT;
-  return SAM3U_PION_BASE(port >> GPIO_PORT_SHIFT);
+  return SAM3U_PION_BASE(port);
 }
 
 /****************************************************************************