diff --git a/common/cmd_hnvram.c b/common/cmd_hnvram.c
index 2f4d308..97c2ff2 100644
--- a/common/cmd_hnvram.c
+++ b/common/cmd_hnvram.c
@@ -39,28 +39,29 @@
 #define CONFIG_SF_DEFAULT_MODE SPI_MODE_3
 
 
-// Flash erase block size
-#define HNVRAM_BLOCKSIZE 0x00010000
-
 // Location in DRAM where hnvram variables are stored during boot
 // DRAM is 128 MB [0x80000000 - 0x88000000]
 // Store hnvram at 120 - 122 MB
-#define HNVRAM_DRAM_OFFSET 0x87800000
+#define HNVRAM_DRAM_OFFSET  0x87800000
 
 // Where in flash does hnvram partition start
-#define HNVRAM_MTD_OFFSET 0x00200000
+#define HNVRAM_MTD_OFFSET   UBOOT_PARTITION_OFFSET_HNVRAM
 
 // Total hnvram is 2MB with 4 partitions
-#define MAX_HNVRAM_SIZE     0x00200000
+#define MAX_HNVRAM_SIZE     UBOOT_HNVRAM_PARTITION_SIZE
 
+// Sub-partitions are stored packed, in this order.
+// HNVRAM_RW_SIZE is halved to match HNVRAM_RWB_SIZE, though the offset
+// to RWB remains the same.
 #define HNVRAM_RO_SIZE      0x00100000
-#define HNVRAM_RW_SIZE      0x00040000
+#define HNVRAM_RW_SIZE      0x00020000
+#define HNVRAM_RESERVED_SIZE 0x00020000
 #define HNVRAM_RWB_SIZE     0x00020000
 #define HNVRAM_RAW_FS_SIZE  0x00020000
 
 // B1 and B2 corresponding to RW_OFFSET and RWB_OFFSET
 #define HNVRAM_B1_OFFSET  (HNVRAM_RO_SIZE)
-#define HNVRAM_B2_OFFSET  (HNVRAM_RO_SIZE + HNVRAM_RW_SIZE)
+#define HNVRAM_B2_OFFSET  (HNVRAM_RO_SIZE + HNVRAM_RW_SIZE + HNVRAM_RESERVED_SIZE)
 
 #define CMD_RET_SUCCESS 0
 #define CMD_RET_FAILURE 1
@@ -236,17 +237,18 @@
 
         // Next step: Seek to different parts of the buffer that contain the
         // first, second, and third sections of hnvram.
-        if (_parse_hnvram(buf, HNVRAM_BLOCKSIZE) != 0) {
-                printf("failed parsing hnvram at offset: 0x%p\n", buf);
+        if (_parse_hnvram(buf, HNVRAM_RO_SIZE) != 0) {
+                printf("failed parsing HNVRAM_RO at offset: 0x%p\n", buf);
                 return -1;
         }
-        if (_parse_hnvram(buf+HNVRAM_B1_OFFSET, HNVRAM_BLOCKSIZE) != 0) {
-                printf("failed parsing hnvram at offset: 0x%p\n", buf+HNVRAM_B1_OFFSET);
-                return -1;
-        }
-        if (_parse_hnvram(buf+HNVRAM_B2_OFFSET, HNVRAM_BLOCKSIZE) != 0) {
-                printf("failed parsing hnvram at offset: 0x%p\n", buf+HNVRAM_B2_OFFSET);
-                return -1;
+        // Read from the RWB partition on failure to read RW.
+        if (_parse_hnvram(buf+HNVRAM_B1_OFFSET, HNVRAM_RW_SIZE) != 0) {
+                printf("failed parsing HNVRAM_RW at offset: 0x%p\n", buf+HNVRAM_B1_OFFSET);
+                if (_parse_hnvram(buf+HNVRAM_B2_OFFSET, HNVRAM_RWB_SIZE) != 0) {
+                        printf("failed parsing HNVRAM_RWB at offset: 0x%p\n",
+                               buf+HNVRAM_B2_OFFSET);
+                        return -1;
+                }
         }
 
         return CMD_RET_SUCCESS;
diff --git a/quantenna/common/ruby_partitions.h b/quantenna/common/ruby_partitions.h
index 7d688fe..9a1cb53 100644
--- a/quantenna/common/ruby_partitions.h
+++ b/quantenna/common/ruby_partitions.h
@@ -40,11 +40,12 @@
 
 #define CONFIG_ENV_OFFSET		0x00040000	/* offset of uboot environment */
 
-#define UBOOT_PARTITION_OFFSET_KERNEL0	(UBOOT_TEXT_PARTITION_SIZE + \
+#define UBOOT_PARTITION_OFFSET_HNVRAM   (UBOOT_TEXT_PARTITION_SIZE + \
 					 UBOOT_ENV_PARTITION_SIZE + \
 					 UBOOT_RESERVED_A_PARTITION_SIZE + \
 					 UBOOT_VENDOR_PARTITION_SIZE + \
-					 UBOOT_RESERVED_B_PARTITION_SIZE + \
+					 UBOOT_RESERVED_B_PARTITION_SIZE)
+#define UBOOT_PARTITION_OFFSET_KERNEL0	(UBOOT_PARTITION_OFFSET_HNVRAM + \
 					 UBOOT_HNVRAM_PARTITION_SIZE)
 #define UBOOT_PARTITION_OFFSET_KERNEL1	(UBOOT_PARTITION_OFFSET_KERNEL0 + \
 					 UBOOT_KERNEL_PARTITION_SIZE)
