bnx2x: Fixed ethtool -d for 578xx
authorVladislav Zolotarov <vladz@broadcom.com>
Thu, 21 Jul 2011 07:57:23 +0000 (07:57 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Jul 2011 19:33:56 +0000 (12:33 -0700)
Registers dump code erroneously treated 578xx as 57712.
This patch fixes the above and also removes unused data
structures.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bnx2x/bnx2x_dump.h
drivers/net/bnx2x/bnx2x_ethtool.c

index 407531a9ab1363eb43c22a85485c107198819be4..b983825d0ee98b2f7d2b9026b8965c8878aa56ec 100644 (file)
 #define RI_E1H                         0x2
 #define RI_E2                          0x4
 #define RI_E3                          0x8
+#define RI_E3B0                                0x10
 #define RI_ONLINE                      0x100
+#define RI_OFFLINE                     0x0
 #define RI_PATH0_DUMP                  0x200
 #define RI_PATH1_DUMP                  0x400
-#define RI_E1_OFFLINE                  (RI_E1)
-#define RI_E1_ONLINE                   (RI_E1 | RI_ONLINE)
-#define RI_E1H_OFFLINE                 (RI_E1H)
-#define RI_E1H_ONLINE                  (RI_E1H | RI_ONLINE)
-#define RI_E2_OFFLINE                  (RI_E2)
-#define RI_E2_ONLINE                   (RI_E2 | RI_ONLINE)
-#define RI_E3_OFFLINE                  (RI_E3)
-#define RI_E3_ONLINE                   (RI_E3 | RI_ONLINE)
-#define RI_E1E1H_OFFLINE               (RI_E1 | RI_E1H)
-#define RI_E1E1H_ONLINE                        (RI_E1 | RI_E1H | RI_ONLINE)
-#define RI_E1E1HE2_OFFLINE             (RI_E1 | RI_E1H | RI_E2)
-#define RI_E1E1HE2_ONLINE              (RI_E1 | RI_E1H | RI_E2 | RI_ONLINE)
-#define RI_E1HE2_OFFLINE               (RI_E2 | RI_E1H)
-#define RI_E1HE2_ONLINE                        (RI_E2 | RI_E1H | RI_ONLINE)
-#define RI_E1E2_OFFLINE                        (RI_E2 | RI_E1)
-#define RI_E1E2_ONLINE                 (RI_E2 | RI_E1 | RI_ONLINE)
-#define RI_E1E3_OFFLINE                        (RI_E1 | RI_E3)
-#define RI_E1E3_ONLINE                 (RI_E1 | RI_E3 | RI_ONLINE)
-#define RI_E1HE3_OFFLINE               (RI_E1H | RI_E3)
-#define RI_E1HE3_ONLINE                        (RI_E1H | RI_E3 | RI_ONLINE)
-#define RI_E2E3_OFFLINE                        (RI_E2 | RI_E3)
-#define RI_E2E3_ONLINE                 (RI_E2 | RI_E3 | RI_ONLINE)
-#define RI_E1E1HE3_OFFLINE             (RI_E1 | RI_E1H | RI_E3)
-#define RI_E1E1HE3_ONLINE              (RI_E1 | RI_E1H | RI_E3 | RI_ONLINE)
-#define RI_E1HE2E3_OFFLINE             (RI_E2 | RI_E1H | RI_E3)
-#define RI_E1HE2E3_ONLINE              (RI_E2 | RI_E1H | RI_E3 | RI_ONLINE)
-#define RI_E1E2E3_OFFLINE              (RI_E2 | RI_E1 | RI_E3)
-#define RI_E1E2E3_ONLINE               (RI_E2 | RI_E1 | RI_E3 | RI_ONLINE)
-#define RI_ALL_OFFLINE                 (RI_E1 | RI_E1H | RI_E2 | RI_E3)
-#define RI_ALL_ONLINE          (RI_E1 | RI_E1H | RI_E2 | RI_E3 | RI_ONLINE)
+
+#define RI_E1_ONLINE           (RI_E1 | RI_ONLINE)
+#define RI_E1H_ONLINE          (RI_E1H | RI_ONLINE)
+#define RI_E1E1H_ONLINE                (RI_E1 | RI_E1H | RI_ONLINE)
+#define RI_E2_ONLINE           (RI_E2 | RI_ONLINE)
+#define RI_E1E2_ONLINE         (RI_E1 | RI_E2 | RI_ONLINE)
+#define RI_E1HE2_ONLINE                (RI_E1H | RI_E2 | RI_ONLINE)
+#define RI_E1E1HE2_ONLINE      (RI_E1 | RI_E1H | RI_E2 | RI_ONLINE)
+#define RI_E3_ONLINE           (RI_E3 | RI_ONLINE)
+#define RI_E1E3_ONLINE         (RI_E1 | RI_E3 | RI_ONLINE)
+#define RI_E1HE3_ONLINE                (RI_E1H | RI_E3 | RI_ONLINE)
+#define RI_E1E1HE3_ONLINE      (RI_E1 | RI_E1H | RI_E3 | RI_ONLINE)
+#define RI_E2E3_ONLINE         (RI_E2 | RI_E3 | RI_ONLINE)
+#define RI_E1E2E3_ONLINE       (RI_E1 | RI_E2 | RI_E3 | RI_ONLINE)
+#define RI_E1HE2E3_ONLINE      (RI_E1H | RI_E2 | RI_E3 | RI_ONLINE)
+#define RI_E1E1HE2E3_ONLINE    (RI_E1 | RI_E1H | RI_E2 | RI_E3 | RI_ONLINE)
+#define RI_E3B0_ONLINE         (RI_E3B0 | RI_ONLINE)
+#define RI_E1E3B0_ONLINE       (RI_E1 | RI_E3B0 | RI_ONLINE)
+#define RI_E1HE3B0_ONLINE      (RI_E1H | RI_E3B0 | RI_ONLINE)
+#define RI_E1E1HE3B0_ONLINE    (RI_E1 | RI_E1H | RI_E3B0 | RI_ONLINE)
+#define RI_E2E3B0_ONLINE       (RI_E2 | RI_E3B0 | RI_ONLINE)
+#define RI_E1E2E3B0_ONLINE     (RI_E1 | RI_E2 | RI_E3B0 | RI_ONLINE)
+#define RI_E1HE2E3B0_ONLINE    (RI_E1H | RI_E2 | RI_E3B0 | RI_ONLINE)
+#define RI_E1E1HE2E3B0_ONLINE  (RI_E1 | RI_E1H | RI_E2 | RI_E3B0 | RI_ONLINE)
+#define RI_E3E3B0_ONLINE       (RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1E3E3B0_ONLINE     (RI_E1 | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1HE3E3B0_ONLINE    (RI_E1H | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1E1HE3E3B0_ONLINE  (RI_E1 | RI_E1H | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E2E3E3B0_ONLINE     (RI_E2 | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1E2E3E3B0_ONLINE   (RI_E1 | RI_E2 | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1HE2E3E3B0_ONLINE  (RI_E1H | RI_E2 | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1E1HE2E3E3B0_ONLINE        \
+       (RI_E1 | RI_E1H | RI_E2 | RI_E3 | RI_E3B0 | RI_ONLINE)
+#define RI_E1_OFFLINE          (RI_E1 | RI_OFFLINE)
+#define RI_E1H_OFFLINE         (RI_E1H | RI_OFFLINE)
+#define RI_E1E1H_OFFLINE       (RI_E1 | RI_E1H | RI_OFFLINE)
+#define RI_E2_OFFLINE          (RI_E2 | RI_OFFLINE)
+#define RI_E1E2_OFFLINE                (RI_E1 | RI_E2 | RI_OFFLINE)
+#define RI_E1HE2_OFFLINE       (RI_E1H | RI_E2 | RI_OFFLINE)
+#define RI_E1E1HE2_OFFLINE     (RI_E1 | RI_E1H | RI_E2 | RI_OFFLINE)
+#define RI_E3_OFFLINE          (RI_E3 | RI_OFFLINE)
+#define RI_E1E3_OFFLINE                (RI_E1 | RI_E3 | RI_OFFLINE)
+#define RI_E1HE3_OFFLINE       (RI_E1H | RI_E3 | RI_OFFLINE)
+#define RI_E1E1HE3_OFFLINE     (RI_E1 | RI_E1H | RI_E3 | RI_OFFLINE)
+#define RI_E2E3_OFFLINE                (RI_E2 | RI_E3 | RI_OFFLINE)
+#define RI_E1E2E3_OFFLINE      (RI_E1 | RI_E2 | RI_E3 | RI_OFFLINE)
+#define RI_E1HE2E3_OFFLINE     (RI_E1H | RI_E2 | RI_E3 | RI_OFFLINE)
+#define RI_E1E1HE2E3_OFFLINE   (RI_E1 | RI_E1H | RI_E2 | RI_E3 | RI_OFFLINE)
+#define RI_E3B0_OFFLINE                (RI_E3B0 | RI_OFFLINE)
+#define RI_E1E3B0_OFFLINE      (RI_E1 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1HE3B0_OFFLINE     (RI_E1H | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E1HE3B0_OFFLINE   (RI_E1 | RI_E1H | RI_E3B0 | RI_OFFLINE)
+#define RI_E2E3B0_OFFLINE      (RI_E2 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E2E3B0_OFFLINE    (RI_E1 | RI_E2 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1HE2E3B0_OFFLINE   (RI_E1H | RI_E2 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E1HE2E3B0_OFFLINE (RI_E1 | RI_E1H | RI_E2 | RI_E3B0 | RI_OFFLINE)
+#define RI_E3E3B0_OFFLINE      (RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E3E3B0_OFFLINE    (RI_E1 | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1HE3E3B0_OFFLINE   (RI_E1H | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E1HE3E3B0_OFFLINE (RI_E1 | RI_E1H | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E2E3E3B0_OFFLINE    (RI_E2 | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E2E3E3B0_OFFLINE  (RI_E1 | RI_E2 | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1HE2E3E3B0_OFFLINE (RI_E1H | RI_E2 | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_E1E1HE2E3E3B0_OFFLINE       \
+       (RI_E1 | RI_E1H | RI_E2 | RI_E3 | RI_E3B0 | RI_OFFLINE)
+#define RI_ALL_ONLINE          RI_E1E1HE2E3E3B0_ONLINE
+#define RI_ALL_OFFLINE         RI_E1E1HE2E3E3B0_OFFLINE
 
 #define DBG_DMP_TRACE_BUFFER_SIZE      0x800
 #define DBG_DMP_TRACE_BUFFER_OFFSET(shmem0_offset) \
@@ -108,716 +147,991 @@ struct wreg_addr {
 };
 
 static const struct reg_addr reg_addrs[] = {
-       { 0x2000, 341, RI_ALL_ONLINE }, { 0x2800, 103, RI_ALL_ONLINE },
-       { 0x3000, 287, RI_ALL_ONLINE }, { 0x3800, 331, RI_ALL_ONLINE },
-       { 0x8800, 6, RI_ALL_ONLINE }, { 0x8818, 1, RI_E1HE2E3_ONLINE },
-       { 0x9000, 147, RI_E2E3_ONLINE }, { 0x924c, 1, RI_E2_ONLINE },
-       { 0x9250, 16, RI_E2E3_ONLINE }, { 0x9400, 33, RI_E2E3_ONLINE },
-       { 0x9484, 5, RI_E3_ONLINE }, { 0xa000, 27, RI_ALL_ONLINE },
-       { 0xa06c, 1, RI_E1E1H_ONLINE }, { 0xa070, 71, RI_ALL_ONLINE },
-       { 0xa18c, 4, RI_E1E1H_ONLINE }, { 0xa19c, 62, RI_ALL_ONLINE },
-       { 0xa294, 2, RI_E1E1H_ONLINE }, { 0xa29c, 2, RI_ALL_ONLINE },
-       { 0xa2a4, 2, RI_E1E1HE2_ONLINE }, { 0xa2ac, 52, RI_ALL_ONLINE },
-       { 0xa39c, 7, RI_E1HE2E3_ONLINE }, { 0xa3b8, 2, RI_E3_ONLINE },
-       { 0xa3c0, 3, RI_E1HE2E3_ONLINE }, { 0xa3d0, 1, RI_E1HE2E3_ONLINE },
-       { 0xa3d8, 1, RI_E1HE2E3_ONLINE }, { 0xa3e0, 1, RI_E1HE2E3_ONLINE },
-       { 0xa3e8, 1, RI_E1HE2E3_ONLINE }, { 0xa3f0, 1, RI_E1HE2E3_ONLINE },
-       { 0xa3f8, 1, RI_E1HE2E3_ONLINE }, { 0xa400, 40, RI_ALL_ONLINE },
-       { 0xa4a0, 1, RI_E1E1HE2_ONLINE }, { 0xa4a4, 2, RI_ALL_ONLINE },
-       { 0xa4ac, 2, RI_E1E1H_ONLINE }, { 0xa4b4, 1, RI_E1E1HE2_ONLINE },
-       { 0xa4b8, 2, RI_E1E1H_ONLINE }, { 0xa4c0, 3, RI_ALL_ONLINE },
-       { 0xa4cc, 5, RI_E1E1H_ONLINE }, { 0xa4e0, 3, RI_ALL_ONLINE },
-       { 0xa4fc, 2, RI_ALL_ONLINE }, { 0xa504, 1, RI_E1E1H_ONLINE },
-       { 0xa508, 3, RI_ALL_ONLINE }, { 0xa518, 1, RI_ALL_ONLINE },
-       { 0xa520, 1, RI_ALL_ONLINE }, { 0xa528, 1, RI_ALL_ONLINE },
-       { 0xa530, 1, RI_ALL_ONLINE }, { 0xa538, 1, RI_ALL_ONLINE },
-       { 0xa540, 1, RI_ALL_ONLINE }, { 0xa548, 1, RI_E1E1H_ONLINE },
-       { 0xa550, 1, RI_E1E1H_ONLINE }, { 0xa558, 1, RI_E1E1H_ONLINE },
-       { 0xa560, 1, RI_E1E1H_ONLINE }, { 0xa568, 1, RI_E1E1H_ONLINE },
-       { 0xa570, 1, RI_ALL_ONLINE }, { 0xa580, 1, RI_ALL_ONLINE },
-       { 0xa590, 1, RI_ALL_ONLINE }, { 0xa5a0, 1, RI_E1E1HE2_ONLINE },
-       { 0xa5c0, 1, RI_ALL_ONLINE }, { 0xa5e0, 1, RI_E1HE2E3_ONLINE },
-       { 0xa5e8, 1, RI_E1HE2E3_ONLINE }, { 0xa5f0, 1, RI_E1HE2E3_ONLINE },
-       { 0xa5f8, 1, RI_E1HE2_ONLINE }, { 0xa5fc, 9, RI_E1HE2E3_ONLINE },
-       { 0xa620, 6, RI_E2E3_ONLINE }, { 0xa638, 20, RI_E2_ONLINE },
-       { 0xa688, 42, RI_E2E3_ONLINE }, { 0xa730, 1, RI_E2_ONLINE },
-       { 0xa734, 2, RI_E2E3_ONLINE }, { 0xa73c, 4, RI_E2_ONLINE },
-       { 0xa74c, 5, RI_E2E3_ONLINE }, { 0xa760, 5, RI_E2_ONLINE },
-       { 0xa774, 7, RI_E2E3_ONLINE }, { 0xa790, 15, RI_E2_ONLINE },
-       { 0xa7cc, 4, RI_E2E3_ONLINE }, { 0xa7e0, 6, RI_E3_ONLINE },
-       { 0xa800, 18, RI_E2_ONLINE }, { 0xa848, 33, RI_E2E3_ONLINE },
-       { 0xa8cc, 2, RI_E3_ONLINE }, { 0xa8d4, 4, RI_E2E3_ONLINE },
-       { 0xa8e4, 1, RI_E3_ONLINE }, { 0xa8e8, 1, RI_E2E3_ONLINE },
-       { 0xa8f0, 1, RI_E2E3_ONLINE }, { 0xa8f8, 30, RI_E3_ONLINE },
-       { 0xa974, 73, RI_E3_ONLINE }, { 0xac30, 1, RI_E3_ONLINE },
-       { 0xac40, 1, RI_E3_ONLINE }, { 0xac50, 1, RI_E3_ONLINE },
-       { 0x10000, 9, RI_ALL_ONLINE }, { 0x10024, 1, RI_E1E1HE2_ONLINE },
-       { 0x10028, 5, RI_ALL_ONLINE }, { 0x1003c, 6, RI_E1E1HE2_ONLINE },
-       { 0x10054, 20, RI_ALL_ONLINE }, { 0x100a4, 4, RI_E1E1HE2_ONLINE },
-       { 0x100b4, 11, RI_ALL_ONLINE }, { 0x100e0, 4, RI_E1E1HE2_ONLINE },
-       { 0x100f0, 8, RI_ALL_ONLINE }, { 0x10110, 6, RI_E1E1HE2_ONLINE },
-       { 0x10128, 110, RI_ALL_ONLINE }, { 0x102e0, 4, RI_E1E1HE2_ONLINE },
-       { 0x102f0, 18, RI_ALL_ONLINE }, { 0x10338, 20, RI_E1E1HE2_ONLINE },
-       { 0x10388, 10, RI_ALL_ONLINE }, { 0x10400, 6, RI_E1E1HE2_ONLINE },
-       { 0x10418, 6, RI_ALL_ONLINE }, { 0x10430, 10, RI_E1E1HE2_ONLINE },
-       { 0x10458, 22, RI_ALL_ONLINE }, { 0x104b0, 12, RI_E1E1HE2_ONLINE },
-       { 0x104e0, 1, RI_ALL_ONLINE }, { 0x104e8, 2, RI_ALL_ONLINE },
-       { 0x104f4, 2, RI_ALL_ONLINE }, { 0x10500, 146, RI_ALL_ONLINE },
-       { 0x10750, 2, RI_E1E1HE2_ONLINE }, { 0x10760, 2, RI_E1E1HE2_ONLINE },
-       { 0x10770, 2, RI_E1E1HE2_ONLINE }, { 0x10780, 2, RI_E1E1HE2_ONLINE },
-       { 0x10790, 2, RI_ALL_ONLINE }, { 0x107a0, 2, RI_E1E1HE2_ONLINE },
-       { 0x107b0, 2, RI_E1E1HE2_ONLINE }, { 0x107c0, 2, RI_E1E1HE2_ONLINE },
-       { 0x107d0, 2, RI_E1E1HE2_ONLINE }, { 0x107e0, 2, RI_ALL_ONLINE },
-       { 0x10880, 2, RI_ALL_ONLINE }, { 0x10900, 2, RI_ALL_ONLINE },
-       { 0x16000, 1, RI_E1HE2_ONLINE }, { 0x16004, 25, RI_E1HE2E3_ONLINE },
-       { 0x16070, 18, RI_E1HE2E3_ONLINE }, { 0x160c0, 7, RI_E1HE2E3_ONLINE },
-       { 0x160dc, 2, RI_E1HE2_ONLINE }, { 0x160e4, 10, RI_E1HE2E3_ONLINE },
-       { 0x1610c, 2, RI_E1HE2_ONLINE }, { 0x16114, 6, RI_E1HE2E3_ONLINE },
-       { 0x16140, 48, RI_E1HE2E3_ONLINE }, { 0x16204, 5, RI_E1HE2E3_ONLINE },
-       { 0x18000, 1, RI_E1HE2E3_ONLINE }, { 0x18008, 1, RI_E1HE2E3_ONLINE },
-       { 0x18010, 35, RI_E2E3_ONLINE }, { 0x180a4, 2, RI_E2E3_ONLINE },
-       { 0x180c0, 109, RI_E2E3_ONLINE }, { 0x18274, 1, RI_E2_ONLINE },
-       { 0x18278, 81, RI_E2E3_ONLINE }, { 0x18440, 63, RI_E2E3_ONLINE },
-       { 0x18570, 42, RI_E3_ONLINE }, { 0x20000, 24, RI_ALL_ONLINE },
-       { 0x20060, 8, RI_ALL_ONLINE }, { 0x20080, 94, RI_ALL_ONLINE },
-       { 0x201f8, 1, RI_E1E1H_ONLINE }, { 0x201fc, 1, RI_ALL_ONLINE },
-       { 0x20200, 1, RI_E1E1H_ONLINE }, { 0x20204, 1, RI_ALL_ONLINE },
-       { 0x20208, 1, RI_E1E1H_ONLINE }, { 0x2020c, 39, RI_ALL_ONLINE },
-       { 0x202c8, 1, RI_E2E3_ONLINE }, { 0x202d8, 4, RI_E2E3_ONLINE },
-       { 0x20400, 2, RI_ALL_ONLINE }, { 0x2040c, 8, RI_ALL_ONLINE },
-       { 0x2042c, 18, RI_E1HE2E3_ONLINE }, { 0x20480, 1, RI_ALL_ONLINE },
-       { 0x20500, 1, RI_ALL_ONLINE }, { 0x20600, 1, RI_ALL_ONLINE },
-       { 0x28000, 1, RI_ALL_ONLINE }, { 0x28004, 8191, RI_ALL_OFFLINE },
-       { 0x30000, 1, RI_ALL_ONLINE }, { 0x30004, 16383, RI_ALL_OFFLINE },
-       { 0x40000, 98, RI_ALL_ONLINE }, { 0x401a8, 8, RI_E1HE2E3_ONLINE },
-       { 0x401c8, 1, RI_E1H_ONLINE }, { 0x401cc, 2, RI_E1HE2E3_ONLINE },
-       { 0x401d4, 2, RI_E2E3_ONLINE }, { 0x40200, 4, RI_ALL_ONLINE },
-       { 0x40220, 18, RI_E2E3_ONLINE }, { 0x40268, 2, RI_E3_ONLINE },
-       { 0x40400, 43, RI_ALL_ONLINE }, { 0x404cc, 3, RI_E1HE2E3_ONLINE },
-       { 0x404e0, 1, RI_E2E3_ONLINE }, { 0x40500, 2, RI_ALL_ONLINE },
-       { 0x40510, 2, RI_ALL_ONLINE }, { 0x40520, 2, RI_ALL_ONLINE },
-       { 0x40530, 2, RI_ALL_ONLINE }, { 0x40540, 2, RI_ALL_ONLINE },
-       { 0x40550, 10, RI_E2E3_ONLINE }, { 0x40610, 2, RI_E2E3_ONLINE },
-       { 0x42000, 164, RI_ALL_ONLINE }, { 0x422c0, 4, RI_E2E3_ONLINE },
-       { 0x422d4, 5, RI_E1HE2E3_ONLINE }, { 0x422e8, 1, RI_E2E3_ONLINE },
-       { 0x42400, 49, RI_ALL_ONLINE }, { 0x424c8, 38, RI_ALL_ONLINE },
-       { 0x42568, 2, RI_ALL_ONLINE }, { 0x42640, 5, RI_E2E3_ONLINE },
-       { 0x42800, 1, RI_ALL_ONLINE }, { 0x50000, 1, RI_ALL_ONLINE },
-       { 0x50004, 19, RI_ALL_ONLINE }, { 0x50050, 8, RI_ALL_ONLINE },
-       { 0x50070, 88, RI_ALL_ONLINE }, { 0x501f0, 4, RI_E1HE2E3_ONLINE },
-       { 0x50200, 2, RI_ALL_ONLINE }, { 0x5020c, 7, RI_ALL_ONLINE },
-       { 0x50228, 6, RI_E1HE2E3_ONLINE }, { 0x50240, 1, RI_ALL_ONLINE },
-       { 0x50280, 1, RI_ALL_ONLINE }, { 0x50300, 1, RI_E2E3_ONLINE },
-       { 0x5030c, 1, RI_E2E3_ONLINE }, { 0x50318, 1, RI_E2E3_ONLINE },
-       { 0x5031c, 1, RI_E2E3_ONLINE }, { 0x50320, 2, RI_E2E3_ONLINE },
-       { 0x52000, 1, RI_ALL_ONLINE }, { 0x54000, 1, RI_ALL_ONLINE },
-       { 0x54004, 3327, RI_ALL_OFFLINE }, { 0x58000, 1, RI_ALL_ONLINE },
-       { 0x58004, 8191, RI_E1E1H_OFFLINE }, { 0x60000, 26, RI_ALL_ONLINE },
-       { 0x60068, 8, RI_E1E1H_ONLINE }, { 0x60088, 12, RI_ALL_ONLINE },
-       { 0x600b8, 9, RI_E1E1H_ONLINE }, { 0x600dc, 1, RI_ALL_ONLINE },
-       { 0x600e0, 5, RI_E1E1H_ONLINE }, { 0x600f4, 1, RI_E1E1HE2_ONLINE },
-       { 0x600f8, 1, RI_E1E1H_ONLINE }, { 0x600fc, 8, RI_ALL_ONLINE },
-       { 0x6013c, 24, RI_E1H_ONLINE }, { 0x6019c, 2, RI_E2E3_ONLINE },
-       { 0x601ac, 18, RI_E2E3_ONLINE }, { 0x60200, 1, RI_ALL_ONLINE },
-       { 0x60204, 2, RI_ALL_OFFLINE }, { 0x60210, 13, RI_E2E3_ONLINE },
-       { 0x61000, 1, RI_ALL_ONLINE }, { 0x61004, 511, RI_ALL_OFFLINE },
-       { 0x61800, 512, RI_E3_OFFLINE }, { 0x70000, 8, RI_ALL_ONLINE },
-       { 0x70020, 8184, RI_ALL_OFFLINE }, { 0x78000, 8192, RI_E3_OFFLINE },
-       { 0x85000, 3, RI_ALL_ONLINE }, { 0x8501c, 7, RI_ALL_ONLINE },
-       { 0x85048, 1, RI_ALL_ONLINE }, { 0x85200, 32, RI_ALL_ONLINE },
+       { 0x2000, 341, RI_ALL_ONLINE },
+       { 0x2800, 103, RI_ALL_ONLINE },
+       { 0x3000, 287, RI_ALL_ONLINE },
+       { 0x3800, 331, RI_ALL_ONLINE },
+       { 0x8800, 6, RI_ALL_ONLINE },
+       { 0x8818, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x9000, 147, RI_E2E3E3B0_ONLINE },
+       { 0x924c, 1, RI_E2_ONLINE },
+       { 0x9250, 16, RI_E2E3E3B0_ONLINE },
+       { 0x9400, 33, RI_E2E3E3B0_ONLINE },
+       { 0x9484, 5, RI_E3E3B0_ONLINE },
+       { 0xa000, 27, RI_ALL_ONLINE },
+       { 0xa06c, 1, RI_E1E1H_ONLINE },
+       { 0xa070, 71, RI_ALL_ONLINE },
+       { 0xa18c, 4, RI_E1E1H_ONLINE },
+       { 0xa19c, 62, RI_ALL_ONLINE },
+       { 0xa294, 2, RI_E1E1H_ONLINE },
+       { 0xa29c, 2, RI_ALL_ONLINE },
+       { 0xa2a4, 2, RI_E1E1HE2_ONLINE },
+       { 0xa2ac, 52, RI_ALL_ONLINE },
+       { 0xa39c, 7, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3b8, 2, RI_E3E3B0_ONLINE },
+       { 0xa3c0, 3, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3d0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3d8, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3e0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3e8, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3f0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa3f8, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa400, 40, RI_ALL_ONLINE },
+       { 0xa4a0, 1, RI_E1E1HE2_ONLINE },
+       { 0xa4a4, 2, RI_ALL_ONLINE },
+       { 0xa4ac, 2, RI_E1E1H_ONLINE },
+       { 0xa4b4, 1, RI_E1E1HE2_ONLINE },
+       { 0xa4b8, 2, RI_E1E1H_ONLINE },
+       { 0xa4c0, 3, RI_ALL_ONLINE },
+       { 0xa4cc, 5, RI_E1E1H_ONLINE },
+       { 0xa4e0, 3, RI_ALL_ONLINE },
+       { 0xa4fc, 2, RI_ALL_ONLINE },
+       { 0xa504, 1, RI_E1E1H_ONLINE },
+       { 0xa508, 3, RI_ALL_ONLINE },
+       { 0xa518, 1, RI_ALL_ONLINE },
+       { 0xa520, 1, RI_ALL_ONLINE },
+       { 0xa528, 1, RI_ALL_ONLINE },
+       { 0xa530, 1, RI_ALL_ONLINE },
+       { 0xa538, 1, RI_ALL_ONLINE },
+       { 0xa540, 1, RI_ALL_ONLINE },
+       { 0xa548, 1, RI_E1E1H_ONLINE },
+       { 0xa550, 1, RI_E1E1H_ONLINE },
+       { 0xa558, 1, RI_E1E1H_ONLINE },
+       { 0xa560, 1, RI_E1E1H_ONLINE },
+       { 0xa568, 1, RI_E1E1H_ONLINE },
+       { 0xa570, 1, RI_ALL_ONLINE },
+       { 0xa580, 1, RI_ALL_ONLINE },
+       { 0xa590, 1, RI_ALL_ONLINE },
+       { 0xa5a0, 1, RI_E1E1HE2_ONLINE },
+       { 0xa5c0, 1, RI_ALL_ONLINE },
+       { 0xa5e0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa5e8, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa5f0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa5f8, 1, RI_E1HE2_ONLINE },
+       { 0xa5fc, 9, RI_E1HE2E3E3B0_ONLINE },
+       { 0xa620, 6, RI_E2E3E3B0_ONLINE },
+       { 0xa638, 20, RI_E2_ONLINE },
+       { 0xa688, 42, RI_E2E3E3B0_ONLINE },
+       { 0xa730, 1, RI_E2_ONLINE },
+       { 0xa734, 2, RI_E2E3E3B0_ONLINE },
+       { 0xa73c, 4, RI_E2_ONLINE },
+       { 0xa74c, 5, RI_E2E3E3B0_ONLINE },
+       { 0xa760, 5, RI_E2_ONLINE },
+       { 0xa774, 7, RI_E2E3E3B0_ONLINE },
+       { 0xa790, 15, RI_E2_ONLINE },
+       { 0xa7cc, 4, RI_E2E3E3B0_ONLINE },
+       { 0xa7e0, 6, RI_E3E3B0_ONLINE },
+       { 0xa800, 18, RI_E2_ONLINE },
+       { 0xa848, 33, RI_E2E3E3B0_ONLINE },
+       { 0xa8cc, 2, RI_E3E3B0_ONLINE },
+       { 0xa8d4, 4, RI_E2E3E3B0_ONLINE },
+       { 0xa8e4, 1, RI_E3E3B0_ONLINE },
+       { 0xa8e8, 1, RI_E2E3E3B0_ONLINE },
+       { 0xa8f0, 1, RI_E2E3E3B0_ONLINE },
+       { 0xa8f8, 30, RI_E3E3B0_ONLINE },
+       { 0xa974, 73, RI_E3E3B0_ONLINE },
+       { 0xac30, 1, RI_E3E3B0_ONLINE },
+       { 0xac40, 1, RI_E3E3B0_ONLINE },
+       { 0xac50, 1, RI_E3E3B0_ONLINE },
+       { 0xac60, 1, RI_E3B0_ONLINE },
+       { 0x10000, 9, RI_ALL_ONLINE },
+       { 0x10024, 1, RI_E1E1HE2_ONLINE },
+       { 0x10028, 5, RI_ALL_ONLINE },
+       { 0x1003c, 6, RI_E1E1HE2_ONLINE },
+       { 0x10054, 20, RI_ALL_ONLINE },
+       { 0x100a4, 4, RI_E1E1HE2_ONLINE },
+       { 0x100b4, 11, RI_ALL_ONLINE },
+       { 0x100e0, 4, RI_E1E1HE2_ONLINE },
+       { 0x100f0, 8, RI_ALL_ONLINE },
+       { 0x10110, 6, RI_E1E1HE2_ONLINE },
+       { 0x10128, 110, RI_ALL_ONLINE },
+       { 0x102e0, 4, RI_E1E1HE2_ONLINE },
+       { 0x102f0, 18, RI_ALL_ONLINE },
+       { 0x10338, 20, RI_E1E1HE2_ONLINE },
+       { 0x10388, 10, RI_ALL_ONLINE },
+       { 0x10400, 6, RI_E1E1HE2_ONLINE },
+       { 0x10418, 6, RI_ALL_ONLINE },
+       { 0x10430, 10, RI_E1E1HE2_ONLINE },
+       { 0x10458, 22, RI_ALL_ONLINE },
+       { 0x104b0, 12, RI_E1E1HE2_ONLINE },
+       { 0x104e0, 1, RI_ALL_ONLINE },
+       { 0x104e8, 2, RI_ALL_ONLINE },
+       { 0x104f4, 2, RI_ALL_ONLINE },
+       { 0x10500, 146, RI_ALL_ONLINE },
+       { 0x10750, 2, RI_E1E1HE2_ONLINE },
+       { 0x10760, 2, RI_E1E1HE2_ONLINE },
+       { 0x10770, 2, RI_E1E1HE2_ONLINE },
+       { 0x10780, 2, RI_E1E1HE2_ONLINE },
+       { 0x10790, 2, RI_ALL_ONLINE },
+       { 0x107a0, 2, RI_E1E1HE2_ONLINE },
+       { 0x107b0, 2, RI_E1E1HE2_ONLINE },
+       { 0x107c0, 2, RI_E1E1HE2_ONLINE },
+       { 0x107d0, 2, RI_E1E1HE2_ONLINE },
+       { 0x107e0, 2, RI_ALL_ONLINE },
+       { 0x10880, 2, RI_ALL_ONLINE },
+       { 0x10900, 2, RI_ALL_ONLINE },
+       { 0x16000, 1, RI_E1HE2_ONLINE },
+       { 0x16004, 25, RI_E1HE2E3E3B0_ONLINE },
+       { 0x16070, 8, RI_E1HE2E3E3B0_ONLINE },
+       { 0x16090, 4, RI_E1HE2E3_ONLINE },
+       { 0x160a0, 6, RI_E1HE2E3E3B0_ONLINE },
+       { 0x160c0, 7, RI_E1HE2E3E3B0_ONLINE },
+       { 0x160dc, 2, RI_E1HE2_ONLINE },
+       { 0x160e4, 10, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1610c, 2, RI_E1HE2_ONLINE },
+       { 0x16114, 6, RI_E1HE2E3E3B0_ONLINE },
+       { 0x16140, 48, RI_E1HE2E3E3B0_ONLINE },
+       { 0x16204, 5, RI_E1HE2E3E3B0_ONLINE },
+       { 0x18000, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x18008, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x18010, 35, RI_E2E3E3B0_ONLINE },
+       { 0x180a4, 2, RI_E2E3E3B0_ONLINE },
+       { 0x180c0, 9, RI_E2E3E3B0_ONLINE },
+       { 0x180e4, 1, RI_E2E3_ONLINE },
+       { 0x180e8, 2, RI_E2E3E3B0_ONLINE },
+       { 0x180f0, 1, RI_E2E3_ONLINE },
+       { 0x180f4, 79, RI_E2E3E3B0_ONLINE },
+       { 0x18230, 1, RI_E2E3_ONLINE },
+       { 0x18234, 2, RI_E2E3E3B0_ONLINE },
+       { 0x1823c, 1, RI_E2E3_ONLINE },
+       { 0x18240, 13, RI_E2E3E3B0_ONLINE },
+       { 0x18274, 1, RI_E2_ONLINE },
+       { 0x18278, 81, RI_E2E3E3B0_ONLINE },
+       { 0x18440, 63, RI_E2E3E3B0_ONLINE },
+       { 0x18570, 42, RI_E3E3B0_ONLINE },
+       { 0x18618, 25, RI_E3B0_ONLINE },
+       { 0x18680, 44, RI_E3B0_ONLINE },
+       { 0x18748, 12, RI_E3B0_ONLINE },
+       { 0x18788, 1, RI_E3B0_ONLINE },
+       { 0x1879c, 6, RI_E3B0_ONLINE },
+       { 0x187c4, 51, RI_E3B0_ONLINE },
+       { 0x18a00, 48, RI_E3B0_ONLINE },
+       { 0x20000, 24, RI_ALL_ONLINE },
+       { 0x20060, 8, RI_ALL_ONLINE },
+       { 0x20080, 94, RI_ALL_ONLINE },
+       { 0x201f8, 1, RI_E1E1H_ONLINE },
+       { 0x201fc, 1, RI_ALL_ONLINE },
+       { 0x20200, 1, RI_E1E1H_ONLINE },
+       { 0x20204, 1, RI_ALL_ONLINE },
+       { 0x20208, 1, RI_E1E1H_ONLINE },
+       { 0x2020c, 39, RI_ALL_ONLINE },
+       { 0x202c8, 1, RI_E2E3E3B0_ONLINE },
+       { 0x202d8, 4, RI_E2E3E3B0_ONLINE },
+       { 0x202f0, 1, RI_E3B0_ONLINE },
+       { 0x20400, 2, RI_ALL_ONLINE },
+       { 0x2040c, 8, RI_ALL_ONLINE },
+       { 0x2042c, 18, RI_E1HE2E3E3B0_ONLINE },
+       { 0x20480, 1, RI_ALL_ONLINE },
+       { 0x20500, 1, RI_ALL_ONLINE },
+       { 0x20600, 1, RI_ALL_ONLINE },
+       { 0x28000, 1, RI_ALL_ONLINE },
+       { 0x28004, 8191, RI_ALL_OFFLINE },
+       { 0x30000, 1, RI_ALL_ONLINE },
+       { 0x30004, 16383, RI_ALL_OFFLINE },
+       { 0x40000, 98, RI_ALL_ONLINE },
+       { 0x401a8, 8, RI_E1HE2E3E3B0_ONLINE },
+       { 0x401c8, 1, RI_E1H_ONLINE },
+       { 0x401cc, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x401d4, 2, RI_E2E3E3B0_ONLINE },
+       { 0x40200, 4, RI_ALL_ONLINE },
+       { 0x40220, 6, RI_E2E3E3B0_ONLINE },
+       { 0x40238, 8, RI_E2E3_ONLINE },
+       { 0x40258, 4, RI_E2E3E3B0_ONLINE },
+       { 0x40268, 2, RI_E3E3B0_ONLINE },
+       { 0x40270, 17, RI_E3B0_ONLINE },
+       { 0x40400, 43, RI_ALL_ONLINE },
+       { 0x404cc, 3, RI_E1HE2E3E3B0_ONLINE },
+       { 0x404e0, 1, RI_E2E3E3B0_ONLINE },
+       { 0x40500, 2, RI_ALL_ONLINE },
+       { 0x40510, 2, RI_ALL_ONLINE },
+       { 0x40520, 2, RI_ALL_ONLINE },
+       { 0x40530, 2, RI_ALL_ONLINE },
+       { 0x40540, 2, RI_ALL_ONLINE },
+       { 0x40550, 10, RI_E2E3E3B0_ONLINE },
+       { 0x40610, 2, RI_E2E3E3B0_ONLINE },
+       { 0x42000, 164, RI_ALL_ONLINE },
+       { 0x422c0, 4, RI_E2E3E3B0_ONLINE },
+       { 0x422d4, 5, RI_E1HE2E3E3B0_ONLINE },
+       { 0x422e8, 1, RI_E2E3E3B0_ONLINE },
+       { 0x42400, 49, RI_ALL_ONLINE },
+       { 0x424c8, 38, RI_ALL_ONLINE },
+       { 0x42568, 2, RI_ALL_ONLINE },
+       { 0x42640, 5, RI_E2E3E3B0_ONLINE },
+       { 0x42800, 1, RI_ALL_ONLINE },
+       { 0x50000, 1, RI_ALL_ONLINE },
+       { 0x50004, 19, RI_ALL_ONLINE },
+       { 0x50050, 8, RI_ALL_ONLINE },
+       { 0x50070, 88, RI_ALL_ONLINE },
+       { 0x501f0, 4, RI_E1HE2E3E3B0_ONLINE },
+       { 0x50200, 2, RI_ALL_ONLINE },
+       { 0x5020c, 7, RI_ALL_ONLINE },
+       { 0x50228, 6, RI_E1HE2E3E3B0_ONLINE },
+       { 0x50240, 1, RI_ALL_ONLINE },
+       { 0x50280, 1, RI_ALL_ONLINE },
+       { 0x50300, 1, RI_E2E3E3B0_ONLINE },
+       { 0x5030c, 1, RI_E2E3E3B0_ONLINE },
+       { 0x50318, 1, RI_E2E3E3B0_ONLINE },
+       { 0x5031c, 1, RI_E2E3E3B0_ONLINE },
+       { 0x50320, 2, RI_E2E3E3B0_ONLINE },
+       { 0x50330, 1, RI_E3B0_ONLINE },
+       { 0x52000, 1, RI_ALL_ONLINE },
+       { 0x54000, 1, RI_ALL_ONLINE },
+       { 0x54004, 3327, RI_ALL_OFFLINE },
+       { 0x58000, 1, RI_ALL_ONLINE },
+       { 0x58004, 8191, RI_E1E1H_OFFLINE },
+       { 0x60000, 26, RI_ALL_ONLINE },
+       { 0x60068, 8, RI_E1E1H_ONLINE },
+       { 0x60088, 12, RI_ALL_ONLINE },
+       { 0x600b8, 9, RI_E1E1H_ONLINE },
+       { 0x600dc, 1, RI_ALL_ONLINE },
+       { 0x600e0, 5, RI_E1E1H_ONLINE },
+       { 0x600f4, 1, RI_E1E1HE2_ONLINE },
+       { 0x600f8, 1, RI_E1E1H_ONLINE },
+       { 0x600fc, 8, RI_ALL_ONLINE },
+       { 0x6013c, 24, RI_E1H_ONLINE },
+       { 0x6019c, 2, RI_E2E3E3B0_ONLINE },
+       { 0x601ac, 18, RI_E2E3E3B0_ONLINE },
+       { 0x60200, 1, RI_ALL_ONLINE },
+       { 0x60204, 2, RI_ALL_OFFLINE },
+       { 0x60210, 13, RI_E2E3E3B0_ONLINE },
+       { 0x60244, 16, RI_E3B0_ONLINE },
+       { 0x61000, 1, RI_ALL_ONLINE },
+       { 0x61004, 511, RI_ALL_OFFLINE },
+       { 0x61800, 512, RI_E3E3B0_OFFLINE },
+       { 0x70000, 8, RI_ALL_ONLINE },
+       { 0x70020, 8184, RI_ALL_OFFLINE },
+       { 0x78000, 8192, RI_E3E3B0_OFFLINE },
+       { 0x85000, 3, RI_ALL_ONLINE },
+       { 0x8501c, 7, RI_ALL_ONLINE },
+       { 0x85048, 1, RI_ALL_ONLINE },
+       { 0x85200, 32, RI_ALL_ONLINE },
        { 0xb0000, 16384, RI_E1H_ONLINE },
-       { 0xc1000, 7, RI_ALL_ONLINE }, { 0xc103c, 2, RI_E2E3_ONLINE },
-       { 0xc1800, 2, RI_ALL_ONLINE }, { 0xc2000, 164, RI_ALL_ONLINE },
-       { 0xc22c0, 5, RI_E2E3_ONLINE }, { 0xc22d8, 4, RI_E2E3_ONLINE },
-       { 0xc2400, 49, RI_ALL_ONLINE }, { 0xc24c8, 38, RI_ALL_ONLINE },
-       { 0xc2568, 2, RI_ALL_ONLINE }, { 0xc2600, 1, RI_ALL_ONLINE },
-       { 0xc4000, 165, RI_ALL_ONLINE }, { 0xc42d8, 2, RI_E2E3_ONLINE },
-       { 0xc42e0, 7, RI_E1HE2E3_ONLINE }, { 0xc42fc, 1, RI_E2E3_ONLINE },
-       { 0xc4400, 51, RI_ALL_ONLINE }, { 0xc44d0, 38, RI_ALL_ONLINE },
-       { 0xc4570, 2, RI_ALL_ONLINE }, { 0xc4578, 5, RI_E2E3_ONLINE },
-       { 0xc4600, 1, RI_ALL_ONLINE }, { 0xd0000, 19, RI_ALL_ONLINE },
-       { 0xd004c, 8, RI_ALL_ONLINE }, { 0xd006c, 91, RI_ALL_ONLINE },
-       { 0xd01fc, 1, RI_E2E3_ONLINE }, { 0xd0200, 2, RI_ALL_ONLINE },
-       { 0xd020c, 7, RI_ALL_ONLINE }, { 0xd0228, 18, RI_E1HE2E3_ONLINE },
-       { 0xd0280, 1, RI_ALL_ONLINE }, { 0xd0300, 1, RI_ALL_ONLINE },
-       { 0xd0400, 1, RI_ALL_ONLINE }, { 0xd4000, 1, RI_ALL_ONLINE },
-       { 0xd4004, 2559, RI_ALL_OFFLINE }, { 0xd8000, 1, RI_ALL_ONLINE },
-       { 0xd8004, 8191, RI_ALL_OFFLINE }, { 0xe0000, 21, RI_ALL_ONLINE },
-       { 0xe0054, 8, RI_ALL_ONLINE }, { 0xe0074, 49, RI_ALL_ONLINE },
-       { 0xe0138, 1, RI_E1E1H_ONLINE }, { 0xe013c, 35, RI_ALL_ONLINE },
-       { 0xe01f4, 1, RI_E2_ONLINE }, { 0xe01f8, 1, RI_E2E3_ONLINE },
-       { 0xe0200, 2, RI_ALL_ONLINE }, { 0xe020c, 8, RI_ALL_ONLINE },
-       { 0xe022c, 18, RI_E1HE2E3_ONLINE }, { 0xe0280, 1, RI_ALL_ONLINE },
-       { 0xe0300, 1, RI_ALL_ONLINE }, { 0xe1000, 1, RI_ALL_ONLINE },
-       { 0xe2000, 1, RI_ALL_ONLINE }, { 0xe2004, 2047, RI_ALL_OFFLINE },
-       { 0xf0000, 1, RI_ALL_ONLINE }, { 0xf0004, 16383, RI_ALL_OFFLINE },
-       { 0x101000, 12, RI_ALL_ONLINE }, { 0x101050, 1, RI_E1HE2E3_ONLINE },
-       { 0x101054, 3, RI_E2E3_ONLINE }, { 0x101100, 1, RI_ALL_ONLINE },
-       { 0x101800, 8, RI_ALL_ONLINE }, { 0x102000, 18, RI_ALL_ONLINE },
-       { 0x102068, 6, RI_E2E3_ONLINE }, { 0x102080, 17, RI_ALL_ONLINE },
-       { 0x1020c8, 8, RI_E1H_ONLINE }, { 0x1020e8, 9, RI_E2E3_ONLINE },
-       { 0x102400, 1, RI_ALL_ONLINE }, { 0x103000, 26, RI_ALL_ONLINE },
-       { 0x103098, 5, RI_E1HE2E3_ONLINE }, { 0x1030ac, 2, RI_E2E3_ONLINE },
-       { 0x1030b4, 1, RI_E2_ONLINE }, { 0x1030b8, 7, RI_E2E3_ONLINE },
-       { 0x1030d8, 8, RI_E2E3_ONLINE }, { 0x103400, 1, RI_E2E3_ONLINE },
-       { 0x103404, 135, RI_E2E3_OFFLINE }, { 0x103800, 8, RI_ALL_ONLINE },
-       { 0x104000, 63, RI_ALL_ONLINE }, { 0x10411c, 16, RI_E2E3_ONLINE },
-       { 0x104200, 17, RI_ALL_ONLINE }, { 0x104400, 64, RI_ALL_ONLINE },
-       { 0x104500, 192, RI_ALL_OFFLINE }, { 0x104800, 64, RI_ALL_ONLINE },
-       { 0x104900, 192, RI_ALL_OFFLINE }, { 0x105000, 256, RI_ALL_ONLINE },
-       { 0x105400, 768, RI_ALL_OFFLINE }, { 0x107000, 7, RI_E2E3_ONLINE },
-       { 0x10701c, 1, RI_E3_ONLINE }, { 0x108000, 33, RI_E1E1H_ONLINE },
-       { 0x1080ac, 5, RI_E1H_ONLINE }, { 0x108100, 5, RI_E1E1H_ONLINE },
-       { 0x108120, 5, RI_E1E1H_ONLINE }, { 0x108200, 74, RI_E1E1H_ONLINE },
-       { 0x108400, 74, RI_E1E1H_ONLINE }, { 0x108800, 152, RI_E1E1H_ONLINE },
-       { 0x110000, 111, RI_E2E3_ONLINE }, { 0x1101dc, 1, RI_E3_ONLINE },
-       { 0x110200, 4, RI_E2E3_ONLINE }, { 0x120000, 2, RI_ALL_ONLINE },
-       { 0x120008, 4, RI_ALL_ONLINE }, { 0x120018, 3, RI_ALL_ONLINE },
-       { 0x120024, 4, RI_ALL_ONLINE }, { 0x120034, 3, RI_ALL_ONLINE },
-       { 0x120040, 4, RI_ALL_ONLINE }, { 0x120050, 3, RI_ALL_ONLINE },
-       { 0x12005c, 4, RI_ALL_ONLINE }, { 0x12006c, 3, RI_ALL_ONLINE },
-       { 0x120078, 4, RI_ALL_ONLINE }, { 0x120088, 3, RI_ALL_ONLINE },
-       { 0x120094, 4, RI_ALL_ONLINE }, { 0x1200a4, 3, RI_ALL_ONLINE },
-       { 0x1200b0, 4, RI_ALL_ONLINE }, { 0x1200c0, 3, RI_ALL_ONLINE },
-       { 0x1200cc, 4, RI_ALL_ONLINE }, { 0x1200dc, 3, RI_ALL_ONLINE },
-       { 0x1200e8, 4, RI_ALL_ONLINE }, { 0x1200f8, 3, RI_ALL_ONLINE },
-       { 0x120104, 4, RI_ALL_ONLINE }, { 0x120114, 1, RI_ALL_ONLINE },
-       { 0x120118, 22, RI_ALL_ONLINE }, { 0x120170, 2, RI_E1E1H_ONLINE },
-       { 0x120178, 243, RI_ALL_ONLINE }, { 0x120544, 4, RI_E1E1H_ONLINE },
-       { 0x120554, 6, RI_ALL_ONLINE }, { 0x12059c, 6, RI_E1HE2E3_ONLINE },
-       { 0x1205b4, 1, RI_E1HE2E3_ONLINE }, { 0x1205b8, 15, RI_E1HE2E3_ONLINE },
-       { 0x1205f4, 1, RI_E1HE2_ONLINE }, { 0x1205f8, 4, RI_E2E3_ONLINE },
-       { 0x120618, 1, RI_E2E3_ONLINE }, { 0x12061c, 20, RI_E1HE2E3_ONLINE },
-       { 0x12066c, 11, RI_E1HE2E3_ONLINE }, { 0x120698, 3, RI_E2E3_ONLINE },
-       { 0x1206a4, 1, RI_E2_ONLINE }, { 0x1206a8, 1, RI_E2E3_ONLINE },
-       { 0x1206b0, 75, RI_E2E3_ONLINE }, { 0x1207dc, 1, RI_E2_ONLINE },
-       { 0x1207fc, 1, RI_E2E3_ONLINE }, { 0x12080c, 65, RI_ALL_ONLINE },
-       { 0x120910, 7, RI_E2E3_ONLINE }, { 0x120930, 9, RI_E2E3_ONLINE },
-       { 0x12095c, 37, RI_E3_ONLINE }, { 0x120a00, 2, RI_E1E1HE2_ONLINE },
-       { 0x120b00, 1, RI_E3_ONLINE }, { 0x122000, 2, RI_ALL_ONLINE },
-       { 0x122008, 2046, RI_E1_OFFLINE }, { 0x128000, 2, RI_E1HE2E3_ONLINE },
-       { 0x128008, 6142, RI_E1HE2E3_OFFLINE },
-       { 0x130000, 35, RI_E2E3_ONLINE },
-       { 0x130100, 29, RI_E2E3_ONLINE }, { 0x130180, 1, RI_E2E3_ONLINE },
-       { 0x130200, 1, RI_E2E3_ONLINE }, { 0x130280, 1, RI_E2E3_ONLINE },
-       { 0x130300, 5, RI_E2E3_ONLINE }, { 0x130380, 1, RI_E2E3_ONLINE },
-       { 0x130400, 1, RI_E2E3_ONLINE }, { 0x130480, 5, RI_E2E3_ONLINE },
-       { 0x130800, 72, RI_E2E3_ONLINE }, { 0x131000, 136, RI_E2E3_ONLINE },
-       { 0x132000, 148, RI_E2E3_ONLINE }, { 0x134000, 544, RI_E2E3_ONLINE },
-       { 0x140000, 64, RI_ALL_ONLINE }, { 0x140100, 5, RI_E1E1H_ONLINE },
-       { 0x140114, 45, RI_ALL_ONLINE }, { 0x140200, 6, RI_ALL_ONLINE },
-       { 0x140220, 4, RI_E2E3_ONLINE }, { 0x140240, 4, RI_E2E3_ONLINE },
-       { 0x140260, 4, RI_E2E3_ONLINE }, { 0x140280, 4, RI_E2E3_ONLINE },
-       { 0x1402a0, 4, RI_E2E3_ONLINE }, { 0x1402c0, 4, RI_E2E3_ONLINE },
-       { 0x1402e0, 13, RI_E2E3_ONLINE }, { 0x144000, 4, RI_E1E1H_ONLINE },
-       { 0x148000, 4, RI_E1E1H_ONLINE }, { 0x14c000, 4, RI_E1E1H_ONLINE },
-       { 0x150000, 4, RI_E1E1H_ONLINE }, { 0x154000, 4, RI_E1E1H_ONLINE },
-       { 0x158000, 4, RI_E1E1H_ONLINE }, { 0x15c000, 2, RI_E1HE2E3_ONLINE },
-       { 0x15c008, 5, RI_E1H_ONLINE }, { 0x15c020, 27, RI_E2E3_ONLINE },
-       { 0x15c090, 13, RI_E2E3_ONLINE }, { 0x15c0c8, 34, RI_E2E3_ONLINE },
-       { 0x15c150, 4, RI_E3_ONLINE }, { 0x160004, 6, RI_E3_ONLINE },
-       { 0x160040, 6, RI_E3_ONLINE }, { 0x16005c, 6, RI_E3_ONLINE },
-       { 0x160078, 2, RI_E3_ONLINE }, { 0x160300, 8, RI_E3_ONLINE },
-       { 0x160330, 6, RI_E3_ONLINE }, { 0x160404, 6, RI_E3_ONLINE },
-       { 0x160440, 6, RI_E3_ONLINE }, { 0x16045c, 6, RI_E3_ONLINE },
-       { 0x160478, 2, RI_E3_ONLINE }, { 0x160700, 8, RI_E3_ONLINE },
-       { 0x160730, 6, RI_E3_ONLINE }, { 0x161000, 7, RI_ALL_ONLINE },
-       { 0x16103c, 2, RI_E2E3_ONLINE }, { 0x161800, 2, RI_ALL_ONLINE },
-       { 0x162000, 54, RI_E3_ONLINE }, { 0x162200, 60, RI_E3_ONLINE },
-       { 0x162400, 54, RI_E3_ONLINE }, { 0x162600, 60, RI_E3_ONLINE },
-       { 0x162800, 54, RI_E3_ONLINE }, { 0x162a00, 60, RI_E3_ONLINE },
-       { 0x162c00, 54, RI_E3_ONLINE }, { 0x162e00, 60, RI_E3_ONLINE },
-       { 0x163000, 1, RI_E3_ONLINE }, { 0x163008, 1, RI_E3_ONLINE },
-       { 0x163010, 1, RI_E3_ONLINE }, { 0x163018, 1, RI_E3_ONLINE },
-       { 0x163020, 5, RI_E3_ONLINE }, { 0x163038, 3, RI_E3_ONLINE },
-       { 0x163048, 3, RI_E3_ONLINE }, { 0x163058, 1, RI_E3_ONLINE },
-       { 0x163060, 1, RI_E3_ONLINE }, { 0x163068, 1, RI_E3_ONLINE },
-       { 0x163070, 3, RI_E3_ONLINE }, { 0x163080, 1, RI_E3_ONLINE },
-       { 0x163088, 3, RI_E3_ONLINE }, { 0x163098, 1, RI_E3_ONLINE },
-       { 0x1630a0, 1, RI_E3_ONLINE }, { 0x1630a8, 1, RI_E3_ONLINE },
-       { 0x1630c0, 1, RI_E3_ONLINE }, { 0x1630c8, 1, RI_E3_ONLINE },
-       { 0x1630d0, 1, RI_E3_ONLINE }, { 0x1630d8, 1, RI_E3_ONLINE },
-       { 0x1630e0, 2, RI_E3_ONLINE }, { 0x163110, 1, RI_E3_ONLINE },
-       { 0x163120, 2, RI_E3_ONLINE }, { 0x163420, 4, RI_E3_ONLINE },
-       { 0x163438, 2, RI_E3_ONLINE }, { 0x163488, 2, RI_E3_ONLINE },
-       { 0x163520, 2, RI_E3_ONLINE }, { 0x163800, 1, RI_E3_ONLINE },
-       { 0x163808, 1, RI_E3_ONLINE }, { 0x163810, 1, RI_E3_ONLINE },
-       { 0x163818, 1, RI_E3_ONLINE }, { 0x163820, 5, RI_E3_ONLINE },
-       { 0x163838, 3, RI_E3_ONLINE }, { 0x163848, 3, RI_E3_ONLINE },
-       { 0x163858, 1, RI_E3_ONLINE }, { 0x163860, 1, RI_E3_ONLINE },
-       { 0x163868, 1, RI_E3_ONLINE }, { 0x163870, 3, RI_E3_ONLINE },
-       { 0x163880, 1, RI_E3_ONLINE }, { 0x163888, 3, RI_E3_ONLINE },
-       { 0x163898, 1, RI_E3_ONLINE }, { 0x1638a0, 1, RI_E3_ONLINE },
-       { 0x1638a8, 1, RI_E3_ONLINE }, { 0x1638c0, 1, RI_E3_ONLINE },
-       { 0x1638c8, 1, RI_E3_ONLINE }, { 0x1638d0, 1, RI_E3_ONLINE },
-       { 0x1638d8, 1, RI_E3_ONLINE }, { 0x1638e0, 2, RI_E3_ONLINE },
-       { 0x163910, 1, RI_E3_ONLINE }, { 0x163920, 2, RI_E3_ONLINE },
-       { 0x163c20, 4, RI_E3_ONLINE }, { 0x163c38, 2, RI_E3_ONLINE },
-       { 0x163c88, 2, RI_E3_ONLINE }, { 0x163d20, 2, RI_E3_ONLINE },
-       { 0x164000, 60, RI_ALL_ONLINE }, { 0x164110, 2, RI_E1HE2E3_ONLINE },
-       { 0x164118, 15, RI_E2E3_ONLINE }, { 0x164200, 1, RI_ALL_ONLINE },
-       { 0x164208, 1, RI_ALL_ONLINE }, { 0x164210, 1, RI_ALL_ONLINE },
-       { 0x164218, 1, RI_ALL_ONLINE }, { 0x164220, 1, RI_ALL_ONLINE },
-       { 0x164228, 1, RI_ALL_ONLINE }, { 0x164230, 1, RI_ALL_ONLINE },
-       { 0x164238, 1, RI_ALL_ONLINE }, { 0x164240, 1, RI_ALL_ONLINE },
-       { 0x164248, 1, RI_ALL_ONLINE }, { 0x164250, 1, RI_ALL_ONLINE },
-       { 0x164258, 1, RI_ALL_ONLINE }, { 0x164260, 1, RI_ALL_ONLINE },
-       { 0x164270, 2, RI_ALL_ONLINE }, { 0x164280, 2, RI_ALL_ONLINE },
-       { 0x164800, 2, RI_ALL_ONLINE }, { 0x165000, 2, RI_ALL_ONLINE },
-       { 0x166000, 164, RI_ALL_ONLINE }, { 0x1662cc, 7, RI_E2E3_ONLINE },
-       { 0x166400, 49, RI_ALL_ONLINE }, { 0x1664c8, 38, RI_ALL_ONLINE },
-       { 0x166568, 2, RI_ALL_ONLINE }, { 0x166570, 5, RI_E2E3_ONLINE },
-       { 0x166800, 1, RI_ALL_ONLINE }, { 0x168000, 137, RI_ALL_ONLINE },
-       { 0x168224, 2, RI_E1E1H_ONLINE }, { 0x16822c, 29, RI_ALL_ONLINE },
-       { 0x1682a0, 12, RI_E1E1H_ONLINE }, { 0x1682d0, 12, RI_ALL_ONLINE },
-       { 0x168300, 2, RI_E1E1H_ONLINE }, { 0x168308, 68, RI_ALL_ONLINE },
-       { 0x168418, 2, RI_E1E1H_ONLINE }, { 0x168420, 6, RI_ALL_ONLINE },
-       { 0x168800, 19, RI_ALL_ONLINE }, { 0x168900, 1, RI_ALL_ONLINE },
-       { 0x168a00, 128, RI_ALL_ONLINE }, { 0x16a000, 1, RI_ALL_ONLINE },
-       { 0x16a004, 1535, RI_ALL_OFFLINE }, { 0x16c000, 1, RI_ALL_ONLINE },
-       { 0x16c004, 1535, RI_ALL_OFFLINE }, { 0x16e000, 16, RI_E1H_ONLINE },
-       { 0x16e040, 8, RI_E2E3_ONLINE }, { 0x16e100, 1, RI_E1H_ONLINE },
-       { 0x16e200, 2, RI_E1H_ONLINE }, { 0x16e400, 161, RI_E1H_ONLINE },
-       { 0x16e684, 2, RI_E1HE2E3_ONLINE }, { 0x16e68c, 12, RI_E1H_ONLINE },
-       { 0x16e6bc, 4, RI_E1HE2E3_ONLINE }, { 0x16e6cc, 4, RI_E1H_ONLINE },
-       { 0x16e6e0, 12, RI_E2E3_ONLINE }, { 0x16e768, 17, RI_E2E3_ONLINE },
-       { 0x170000, 24, RI_ALL_ONLINE }, { 0x170060, 4, RI_E1E1H_ONLINE },
-       { 0x170070, 65, RI_ALL_ONLINE }, { 0x170194, 11, RI_E2E3_ONLINE },
-       { 0x1701c4, 1, RI_E2E3_ONLINE }, { 0x1701cc, 7, RI_E2E3_ONLINE },
-       { 0x1701e8, 1, RI_E3_ONLINE }, { 0x1701ec, 1, RI_E2E3_ONLINE },
-       { 0x1701f4, 1, RI_E2E3_ONLINE }, { 0x170200, 4, RI_ALL_ONLINE },
-       { 0x170214, 1, RI_ALL_ONLINE }, { 0x170218, 77, RI_E2E3_ONLINE },
-       { 0x170400, 64, RI_E2E3_ONLINE }, { 0x178000, 1, RI_ALL_ONLINE },
-       { 0x180000, 61, RI_ALL_ONLINE }, { 0x18013c, 2, RI_E1HE2E3_ONLINE },
-       { 0x180200, 58, RI_ALL_ONLINE }, { 0x180340, 4, RI_ALL_ONLINE },
-       { 0x180380, 1, RI_E2E3_ONLINE }, { 0x180388, 1, RI_E2E3_ONLINE },
-       { 0x180390, 1, RI_E2E3_ONLINE }, { 0x180398, 1, RI_E2E3_ONLINE },
-       { 0x1803a0, 5, RI_E2E3_ONLINE }, { 0x1803b4, 2, RI_E3_ONLINE },
-       { 0x180400, 1, RI_ALL_ONLINE }, { 0x180404, 255, RI_E1E1H_OFFLINE },
-       { 0x181000, 4, RI_ALL_ONLINE }, { 0x181010, 1020, RI_ALL_OFFLINE },
-       { 0x182000, 4, RI_E3_ONLINE }, { 0x1a0000, 1, RI_ALL_ONLINE },
+       { 0xc1000, 7, RI_ALL_ONLINE },
+       { 0xc103c, 2, RI_E2E3E3B0_ONLINE },
+       { 0xc1800, 2, RI_ALL_ONLINE },
+       { 0xc2000, 164, RI_ALL_ONLINE },
+       { 0xc22c0, 5, RI_E2E3E3B0_ONLINE },
+       { 0xc22d8, 4, RI_E2E3E3B0_ONLINE },
+       { 0xc2400, 49, RI_ALL_ONLINE },
+       { 0xc24c8, 38, RI_ALL_ONLINE },
+       { 0xc2568, 2, RI_ALL_ONLINE },
+       { 0xc2600, 1, RI_ALL_ONLINE },
+       { 0xc4000, 165, RI_ALL_ONLINE },
+       { 0xc42d8, 2, RI_E2E3E3B0_ONLINE },
+       { 0xc42e0, 7, RI_E1HE2E3E3B0_ONLINE },
+       { 0xc42fc, 1, RI_E2E3E3B0_ONLINE },
+       { 0xc4400, 51, RI_ALL_ONLINE },
+       { 0xc44d0, 38, RI_ALL_ONLINE },
+       { 0xc4570, 2, RI_ALL_ONLINE },
+       { 0xc4578, 5, RI_E2E3E3B0_ONLINE },
+       { 0xc4600, 1, RI_ALL_ONLINE },
+       { 0xd0000, 19, RI_ALL_ONLINE },
+       { 0xd004c, 8, RI_ALL_ONLINE },
+       { 0xd006c, 91, RI_ALL_ONLINE },
+       { 0xd01fc, 1, RI_E2E3E3B0_ONLINE },
+       { 0xd0200, 2, RI_ALL_ONLINE },
+       { 0xd020c, 7, RI_ALL_ONLINE },
+       { 0xd0228, 18, RI_E1HE2E3E3B0_ONLINE },
+       { 0xd0280, 1, RI_ALL_ONLINE },
+       { 0xd0300, 1, RI_ALL_ONLINE },
+       { 0xd0400, 1, RI_ALL_ONLINE },
+       { 0xd0818, 1, RI_E3B0_ONLINE },
+       { 0xd4000, 1, RI_ALL_ONLINE },
+       { 0xd4004, 2559, RI_ALL_OFFLINE },
+       { 0xd8000, 1, RI_ALL_ONLINE },
+       { 0xd8004, 8191, RI_ALL_OFFLINE },
+       { 0xe0000, 21, RI_ALL_ONLINE },
+       { 0xe0054, 8, RI_ALL_ONLINE },
+       { 0xe0074, 49, RI_ALL_ONLINE },
+       { 0xe0138, 1, RI_E1E1H_ONLINE },
+       { 0xe013c, 35, RI_ALL_ONLINE },
+       { 0xe01f4, 1, RI_E2_ONLINE },
+       { 0xe01f8, 1, RI_E2E3E3B0_ONLINE },
+       { 0xe0200, 2, RI_ALL_ONLINE },
+       { 0xe020c, 8, RI_ALL_ONLINE },
+       { 0xe022c, 18, RI_E1HE2E3E3B0_ONLINE },
+       { 0xe0280, 1, RI_ALL_ONLINE },
+       { 0xe0300, 1, RI_ALL_ONLINE },
+       { 0xe0400, 1, RI_E3B0_ONLINE },
+       { 0xe1000, 1, RI_ALL_ONLINE },
+       { 0xe2000, 1, RI_ALL_ONLINE },
+       { 0xe2004, 2047, RI_ALL_OFFLINE },
+       { 0xf0000, 1, RI_ALL_ONLINE },
+       { 0xf0004, 16383, RI_ALL_OFFLINE },
+       { 0x101000, 12, RI_ALL_ONLINE },
+       { 0x101050, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x101054, 3, RI_E2E3E3B0_ONLINE },
+       { 0x101100, 1, RI_ALL_ONLINE },
+       { 0x101800, 8, RI_ALL_ONLINE },
+       { 0x102000, 18, RI_ALL_ONLINE },
+       { 0x102068, 6, RI_E2E3E3B0_ONLINE },
+       { 0x102080, 17, RI_ALL_ONLINE },
+       { 0x1020c8, 8, RI_E1H_ONLINE },
+       { 0x1020e8, 9, RI_E2E3E3B0_ONLINE },
+       { 0x102400, 1, RI_ALL_ONLINE },
+       { 0x103000, 26, RI_ALL_ONLINE },
+       { 0x103098, 5, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1030ac, 2, RI_E2E3E3B0_ONLINE },
+       { 0x1030b4, 1, RI_E2_ONLINE },
+       { 0x1030b8, 7, RI_E2E3E3B0_ONLINE },
+       { 0x1030d8, 8, RI_E2E3E3B0_ONLINE },
+       { 0x103400, 1, RI_E2E3E3B0_ONLINE },
+       { 0x103404, 135, RI_E2E3E3B0_OFFLINE },
+       { 0x103800, 8, RI_ALL_ONLINE },
+       { 0x104000, 63, RI_ALL_ONLINE },
+       { 0x10411c, 16, RI_E2E3E3B0_ONLINE },
+       { 0x104200, 17, RI_ALL_ONLINE },
+       { 0x104400, 64, RI_ALL_ONLINE },
+       { 0x104500, 192, RI_ALL_OFFLINE },
+       { 0x104800, 64, RI_ALL_ONLINE },
+       { 0x104900, 192, RI_ALL_OFFLINE },
+       { 0x105000, 256, RI_ALL_ONLINE },
+       { 0x105400, 768, RI_ALL_OFFLINE },
+       { 0x107000, 7, RI_E2E3E3B0_ONLINE },
+       { 0x10701c, 1, RI_E3E3B0_ONLINE },
+       { 0x108000, 33, RI_E1E1H_ONLINE },
+       { 0x1080ac, 5, RI_E1H_ONLINE },
+       { 0x108100, 5, RI_E1E1H_ONLINE },
+       { 0x108120, 5, RI_E1E1H_ONLINE },
+       { 0x108200, 74, RI_E1E1H_ONLINE },
+       { 0x108400, 74, RI_E1E1H_ONLINE },
+       { 0x108800, 152, RI_E1E1H_ONLINE },
+       { 0x110000, 111, RI_E2E3E3B0_ONLINE },
+       { 0x1101dc, 1, RI_E3E3B0_ONLINE },
+       { 0x110200, 4, RI_E2E3E3B0_ONLINE },
+       { 0x120000, 2, RI_ALL_ONLINE },
+       { 0x120008, 4, RI_ALL_ONLINE },
+       { 0x120018, 3, RI_ALL_ONLINE },
+       { 0x120024, 4, RI_ALL_ONLINE },
+       { 0x120034, 3, RI_ALL_ONLINE },
+       { 0x120040, 4, RI_ALL_ONLINE },
+       { 0x120050, 3, RI_ALL_ONLINE },
+       { 0x12005c, 4, RI_ALL_ONLINE },
+       { 0x12006c, 3, RI_ALL_ONLINE },
+       { 0x120078, 4, RI_ALL_ONLINE },
+       { 0x120088, 3, RI_ALL_ONLINE },
+       { 0x120094, 4, RI_ALL_ONLINE },
+       { 0x1200a4, 3, RI_ALL_ONLINE },
+       { 0x1200b0, 4, RI_ALL_ONLINE },
+       { 0x1200c0, 3, RI_ALL_ONLINE },
+       { 0x1200cc, 4, RI_ALL_ONLINE },
+       { 0x1200dc, 3, RI_ALL_ONLINE },
+       { 0x1200e8, 4, RI_ALL_ONLINE },
+       { 0x1200f8, 3, RI_ALL_ONLINE },
+       { 0x120104, 4, RI_ALL_ONLINE },
+       { 0x120114, 1, RI_ALL_ONLINE },
+       { 0x120118, 22, RI_ALL_ONLINE },
+       { 0x120170, 2, RI_E1E1H_ONLINE },
+       { 0x120178, 243, RI_ALL_ONLINE },
+       { 0x120544, 4, RI_E1E1H_ONLINE },
+       { 0x120554, 6, RI_ALL_ONLINE },
+       { 0x12059c, 6, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1205b4, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1205b8, 15, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1205f4, 1, RI_E1HE2_ONLINE },
+       { 0x1205f8, 4, RI_E2E3E3B0_ONLINE },
+       { 0x120618, 1, RI_E2E3E3B0_ONLINE },
+       { 0x12061c, 20, RI_E1HE2E3E3B0_ONLINE },
+       { 0x12066c, 11, RI_E1HE2E3E3B0_ONLINE },
+       { 0x120698, 3, RI_E2E3E3B0_ONLINE },
+       { 0x1206a4, 1, RI_E2_ONLINE },
+       { 0x1206a8, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1206b0, 75, RI_E2E3E3B0_ONLINE },
+       { 0x1207dc, 1, RI_E2_ONLINE },
+       { 0x1207fc, 1, RI_E2E3E3B0_ONLINE },
+       { 0x12080c, 65, RI_ALL_ONLINE },
+       { 0x120910, 7, RI_E2E3E3B0_ONLINE },
+       { 0x120930, 9, RI_E2E3E3B0_ONLINE },
+       { 0x12095c, 37, RI_E3E3B0_ONLINE },
+       { 0x120a00, 2, RI_E1E1HE2_ONLINE },
+       { 0x120b00, 1, RI_E3E3B0_ONLINE },
+       { 0x122000, 2, RI_ALL_ONLINE },
+       { 0x122008, 2046, RI_E1_OFFLINE },
+       { 0x128000, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x128008, 6142, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x130000, 35, RI_E2E3E3B0_ONLINE },
+       { 0x130100, 29, RI_E2E3E3B0_ONLINE },
+       { 0x130180, 1, RI_E2E3E3B0_ONLINE },
+       { 0x130200, 1, RI_E2E3E3B0_ONLINE },
+       { 0x130280, 1, RI_E2E3E3B0_ONLINE },
+       { 0x130300, 5, RI_E2E3E3B0_ONLINE },
+       { 0x130380, 1, RI_E2E3E3B0_ONLINE },
+       { 0x130400, 1, RI_E2E3E3B0_ONLINE },
+       { 0x130480, 5, RI_E2E3E3B0_ONLINE },
+       { 0x130800, 72, RI_E2E3E3B0_ONLINE },
+       { 0x131000, 136, RI_E2E3E3B0_ONLINE },
+       { 0x132000, 148, RI_E2E3E3B0_ONLINE },
+       { 0x134000, 544, RI_E2E3E3B0_ONLINE },
+       { 0x140000, 1, RI_ALL_ONLINE },
+       { 0x140004, 9, RI_E1E1HE2E3_ONLINE },
+       { 0x140028, 8, RI_ALL_ONLINE },
+       { 0x140048, 10, RI_E1E1HE2E3_ONLINE },
+       { 0x140070, 1, RI_ALL_ONLINE },
+       { 0x140074, 10, RI_E1E1HE2E3_ONLINE },
+       { 0x14009c, 1, RI_ALL_ONLINE },
+       { 0x1400a0, 5, RI_E1E1HE2E3_ONLINE },
+       { 0x1400b4, 7, RI_ALL_ONLINE },
+       { 0x1400d0, 10, RI_E1E1HE2E3_ONLINE },
+       { 0x1400f8, 2, RI_ALL_ONLINE },
+       { 0x140100, 5, RI_E1E1H_ONLINE },
+       { 0x140114, 5, RI_E1E1HE2E3_ONLINE },
+       { 0x140128, 7, RI_ALL_ONLINE },
+       { 0x140144, 9, RI_E1E1HE2E3_ONLINE },
+       { 0x140168, 8, RI_ALL_ONLINE },
+       { 0x140188, 3, RI_E1E1HE2E3_ONLINE },
+       { 0x140194, 13, RI_ALL_ONLINE },
+       { 0x140200, 6, RI_E1E1HE2E3_ONLINE },
+       { 0x140220, 4, RI_E2E3_ONLINE },
+       { 0x140240, 4, RI_E2E3_ONLINE },
+       { 0x140260, 4, RI_E2E3_ONLINE },
+       { 0x140280, 4, RI_E2E3_ONLINE },
+       { 0x1402a0, 4, RI_E2E3_ONLINE },
+       { 0x1402c0, 4, RI_E2E3_ONLINE },
+       { 0x1402e0, 2, RI_E2E3_ONLINE },
+       { 0x1402e8, 2, RI_E2E3E3B0_ONLINE },
+       { 0x1402f0, 9, RI_E2E3_ONLINE },
+       { 0x140314, 44, RI_E3B0_ONLINE },
+       { 0x1403d0, 70, RI_E3B0_ONLINE },
+       { 0x144000, 4, RI_E1E1H_ONLINE },
+       { 0x148000, 4, RI_E1E1H_ONLINE },
+       { 0x14c000, 4, RI_E1E1H_ONLINE },
+       { 0x150000, 4, RI_E1E1H_ONLINE },
+       { 0x154000, 4, RI_E1E1H_ONLINE },
+       { 0x158000, 4, RI_E1E1H_ONLINE },
+       { 0x15c000, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x15c008, 5, RI_E1H_ONLINE },
+       { 0x15c020, 8, RI_E2E3E3B0_ONLINE },
+       { 0x15c040, 1, RI_E2E3_ONLINE },
+       { 0x15c044, 2, RI_E2E3E3B0_ONLINE },
+       { 0x15c04c, 8, RI_E2E3_ONLINE },
+       { 0x15c06c, 8, RI_E2E3E3B0_ONLINE },
+       { 0x15c090, 13, RI_E2E3E3B0_ONLINE },
+       { 0x15c0c8, 24, RI_E2E3E3B0_ONLINE },
+       { 0x15c128, 2, RI_E2E3_ONLINE },
+       { 0x15c130, 8, RI_E2E3E3B0_ONLINE },
+       { 0x15c150, 2, RI_E3E3B0_ONLINE },
+       { 0x15c158, 2, RI_E3_ONLINE },
+       { 0x15c160, 149, RI_E3B0_ONLINE },
+       { 0x161000, 7, RI_ALL_ONLINE },
+       { 0x16103c, 2, RI_E2E3E3B0_ONLINE },
+       { 0x161800, 2, RI_ALL_ONLINE },
+       { 0x162000, 54, RI_E3E3B0_ONLINE },
+       { 0x162200, 60, RI_E3E3B0_ONLINE },
+       { 0x162400, 54, RI_E3E3B0_ONLINE },
+       { 0x162600, 60, RI_E3E3B0_ONLINE },
+       { 0x162800, 54, RI_E3E3B0_ONLINE },
+       { 0x162a00, 60, RI_E3E3B0_ONLINE },
+       { 0x162c00, 54, RI_E3E3B0_ONLINE },
+       { 0x162e00, 60, RI_E3E3B0_ONLINE },
+       { 0x164000, 60, RI_ALL_ONLINE },
+       { 0x164110, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x164118, 15, RI_E2E3E3B0_ONLINE },
+       { 0x164200, 1, RI_ALL_ONLINE },
+       { 0x164208, 1, RI_ALL_ONLINE },
+       { 0x164210, 1, RI_ALL_ONLINE },
+       { 0x164218, 1, RI_ALL_ONLINE },
+       { 0x164220, 1, RI_ALL_ONLINE },
+       { 0x164228, 1, RI_ALL_ONLINE },
+       { 0x164230, 1, RI_ALL_ONLINE },
+       { 0x164238, 1, RI_ALL_ONLINE },
+       { 0x164240, 1, RI_ALL_ONLINE },
+       { 0x164248, 1, RI_ALL_ONLINE },
+       { 0x164250, 1, RI_ALL_ONLINE },
+       { 0x164258, 1, RI_ALL_ONLINE },
+       { 0x164260, 1, RI_ALL_ONLINE },
+       { 0x164270, 2, RI_ALL_ONLINE },
+       { 0x164280, 2, RI_ALL_ONLINE },
+       { 0x164800, 2, RI_ALL_ONLINE },
+       { 0x165000, 2, RI_ALL_ONLINE },
+       { 0x166000, 164, RI_ALL_ONLINE },
+       { 0x1662cc, 7, RI_E2E3E3B0_ONLINE },
+       { 0x166400, 49, RI_ALL_ONLINE },
+       { 0x1664c8, 38, RI_ALL_ONLINE },
+       { 0x166568, 2, RI_ALL_ONLINE },
+       { 0x166570, 5, RI_E2E3E3B0_ONLINE },
+       { 0x166800, 1, RI_ALL_ONLINE },
+       { 0x168000, 137, RI_ALL_ONLINE },
+       { 0x168224, 2, RI_E1E1H_ONLINE },
+       { 0x16822c, 29, RI_ALL_ONLINE },
+       { 0x1682a0, 12, RI_E1E1H_ONLINE },
+       { 0x1682d0, 12, RI_ALL_ONLINE },
+       { 0x168300, 2, RI_E1E1H_ONLINE },
+       { 0x168308, 68, RI_ALL_ONLINE },
+       { 0x168418, 2, RI_E1E1H_ONLINE },
+       { 0x168420, 6, RI_ALL_ONLINE },
+       { 0x168800, 19, RI_ALL_ONLINE },
+       { 0x168900, 1, RI_ALL_ONLINE },
+       { 0x168a00, 128, RI_ALL_ONLINE },
+       { 0x16a000, 1, RI_ALL_ONLINE },
+       { 0x16a004, 1535, RI_ALL_OFFLINE },
+       { 0x16c000, 1, RI_ALL_ONLINE },
+       { 0x16c004, 1535, RI_ALL_OFFLINE },
+       { 0x16e000, 16, RI_E1H_ONLINE },
+       { 0x16e040, 8, RI_E2E3E3B0_ONLINE },
+       { 0x16e100, 1, RI_E1H_ONLINE },
+       { 0x16e200, 2, RI_E1H_ONLINE },
+       { 0x16e400, 161, RI_E1H_ONLINE },
+       { 0x16e684, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x16e68c, 12, RI_E1H_ONLINE },
+       { 0x16e6bc, 4, RI_E1HE2E3E3B0_ONLINE },
+       { 0x16e6cc, 4, RI_E1H_ONLINE },
+       { 0x16e6e0, 2, RI_E2E3E3B0_ONLINE },
+       { 0x16e6e8, 5, RI_E2E3_ONLINE },
+       { 0x16e6fc, 5, RI_E2E3E3B0_ONLINE },
+       { 0x16e768, 17, RI_E2E3E3B0_ONLINE },
+       { 0x16e7ac, 12, RI_E3B0_ONLINE },
+       { 0x170000, 24, RI_ALL_ONLINE },
+       { 0x170060, 4, RI_E1E1H_ONLINE },
+       { 0x170070, 65, RI_ALL_ONLINE },
+       { 0x170194, 11, RI_E2E3E3B0_ONLINE },
+       { 0x1701c4, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1701cc, 7, RI_E2E3E3B0_ONLINE },
+       { 0x1701e8, 1, RI_E3E3B0_ONLINE },
+       { 0x1701ec, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1701f4, 1, RI_E2E3E3B0_ONLINE },
+       { 0x170200, 4, RI_ALL_ONLINE },
+       { 0x170214, 1, RI_ALL_ONLINE },
+       { 0x170218, 77, RI_E2E3E3B0_ONLINE },
+       { 0x170400, 64, RI_E2E3E3B0_ONLINE },
+       { 0x178000, 1, RI_ALL_ONLINE },
+       { 0x180000, 61, RI_ALL_ONLINE },
+       { 0x18013c, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x180200, 58, RI_ALL_ONLINE },
+       { 0x180340, 4, RI_ALL_ONLINE },
+       { 0x180380, 1, RI_E2E3E3B0_ONLINE },
+       { 0x180388, 1, RI_E2E3E3B0_ONLINE },
+       { 0x180390, 1, RI_E2E3E3B0_ONLINE },
+       { 0x180398, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1803a0, 5, RI_E2E3E3B0_ONLINE },
+       { 0x1803b4, 2, RI_E3E3B0_ONLINE },
+       { 0x180400, 1, RI_ALL_ONLINE },
+       { 0x180404, 255, RI_E1E1H_OFFLINE },
+       { 0x181000, 4, RI_ALL_ONLINE },
+       { 0x181010, 1020, RI_ALL_OFFLINE },
+       { 0x182000, 4, RI_E3E3B0_ONLINE },
+       { 0x1a0000, 1, RI_ALL_ONLINE },
        { 0x1a0004, 5631, RI_ALL_OFFLINE },
-       { 0x1a5800, 2560, RI_E1HE2E3_OFFLINE },
-       { 0x1a8000, 1, RI_ALL_ONLINE }, { 0x1a8004, 8191, RI_E1HE2E3_OFFLINE },
-       { 0x1b0000, 1, RI_ALL_ONLINE }, { 0x1b0004, 15, RI_E1H_OFFLINE },
-       { 0x1b0040, 1, RI_E1HE2E3_ONLINE }, { 0x1b0044, 239, RI_E1H_OFFLINE },
-       { 0x1b0400, 1, RI_ALL_ONLINE }, { 0x1b0404, 255, RI_E1H_OFFLINE },
-       { 0x1b0800, 1, RI_ALL_ONLINE }, { 0x1b0840, 1, RI_E1HE2E3_ONLINE },
-       { 0x1b0c00, 1, RI_ALL_ONLINE }, { 0x1b1000, 1, RI_ALL_ONLINE },
-       { 0x1b1040, 1, RI_E1HE2E3_ONLINE }, { 0x1b1400, 1, RI_ALL_ONLINE },
-       { 0x1b1440, 1, RI_E1HE2E3_ONLINE }, { 0x1b1480, 1, RI_E1HE2E3_ONLINE },
-       { 0x1b14c0, 1, RI_E1HE2E3_ONLINE }, { 0x1b1800, 128, RI_ALL_OFFLINE },
-       { 0x1b1c00, 128, RI_ALL_OFFLINE }, { 0x1b2000, 1, RI_ALL_ONLINE },
-       { 0x1b2400, 1, RI_E1HE2E3_ONLINE }, { 0x1b2404, 5631, RI_E2E3_OFFLINE },
-       { 0x1b8000, 1, RI_ALL_ONLINE }, { 0x1b8040, 1, RI_ALL_ONLINE },
-       { 0x1b8080, 1, RI_ALL_ONLINE }, { 0x1b80c0, 1, RI_ALL_ONLINE },
-       { 0x1b8100, 1, RI_ALL_ONLINE }, { 0x1b8140, 1, RI_ALL_ONLINE },
-       { 0x1b8180, 1, RI_ALL_ONLINE }, { 0x1b81c0, 1, RI_ALL_ONLINE },
-       { 0x1b8200, 1, RI_ALL_ONLINE }, { 0x1b8240, 1, RI_ALL_ONLINE },
-       { 0x1b8280, 1, RI_ALL_ONLINE }, { 0x1b82c0, 1, RI_ALL_ONLINE },
-       { 0x1b8300, 1, RI_ALL_ONLINE }, { 0x1b8340, 1, RI_ALL_ONLINE },
-       { 0x1b8380, 1, RI_ALL_ONLINE }, { 0x1b83c0, 1, RI_ALL_ONLINE },
-       { 0x1b8400, 1, RI_ALL_ONLINE }, { 0x1b8440, 1, RI_ALL_ONLINE },
-       { 0x1b8480, 1, RI_ALL_ONLINE }, { 0x1b84c0, 1, RI_ALL_ONLINE },
-       { 0x1b8500, 1, RI_ALL_ONLINE }, { 0x1b8540, 1, RI_ALL_ONLINE },
-       { 0x1b8580, 1, RI_ALL_ONLINE }, { 0x1b85c0, 19, RI_E2E3_ONLINE },
-       { 0x1b8800, 1, RI_ALL_ONLINE }, { 0x1b8840, 1, RI_ALL_ONLINE },
-       { 0x1b8880, 1, RI_ALL_ONLINE }, { 0x1b88c0, 1, RI_ALL_ONLINE },
-       { 0x1b8900, 1, RI_ALL_ONLINE }, { 0x1b8940, 1, RI_ALL_ONLINE },
-       { 0x1b8980, 1, RI_ALL_ONLINE }, { 0x1b89c0, 1, RI_ALL_ONLINE },
-       { 0x1b8a00, 1, RI_ALL_ONLINE }, { 0x1b8a40, 1, RI_ALL_ONLINE },
-       { 0x1b8a80, 1, RI_ALL_ONLINE }, { 0x1b8ac0, 1, RI_ALL_ONLINE },
-       { 0x1b8b00, 1, RI_ALL_ONLINE }, { 0x1b8b40, 1, RI_ALL_ONLINE },
-       { 0x1b8b80, 1, RI_ALL_ONLINE }, { 0x1b8bc0, 1, RI_ALL_ONLINE },
-       { 0x1b8c00, 1, RI_ALL_ONLINE }, { 0x1b8c40, 1, RI_ALL_ONLINE },
-       { 0x1b8c80, 1, RI_ALL_ONLINE }, { 0x1b8cc0, 1, RI_ALL_ONLINE },
-       { 0x1b8cc4, 1, RI_E2E3_ONLINE }, { 0x1b8d00, 1, RI_ALL_ONLINE },
-       { 0x1b8d40, 1, RI_ALL_ONLINE }, { 0x1b8d80, 1, RI_ALL_ONLINE },
-       { 0x1b8dc0, 1, RI_ALL_ONLINE }, { 0x1b8e00, 1, RI_ALL_ONLINE },
-       { 0x1b8e40, 1, RI_ALL_ONLINE }, { 0x1b8e80, 1, RI_ALL_ONLINE },
-       { 0x1b8e84, 1, RI_E2E3_ONLINE }, { 0x1b8ec0, 1, RI_E1HE2E3_ONLINE },
-       { 0x1b8f00, 1, RI_E1HE2E3_ONLINE }, { 0x1b8f40, 1, RI_E1HE2E3_ONLINE },
-       { 0x1b8f80, 1, RI_E1HE2E3_ONLINE }, { 0x1b8fc0, 1, RI_E1HE2E3_ONLINE },
-       { 0x1b8fc4, 2, RI_E2E3_ONLINE }, { 0x1b8fd0, 6, RI_E2E3_ONLINE },
-       { 0x1b8fe8, 2, RI_E3_ONLINE }, { 0x1b9000, 1, RI_E2E3_ONLINE },
-       { 0x1b9040, 3, RI_E2E3_ONLINE }, { 0x1b905c, 1, RI_E3_ONLINE },
-       { 0x1b9400, 14, RI_E2E3_ONLINE }, { 0x1b943c, 19, RI_E2E3_ONLINE },
-       { 0x1b9490, 10, RI_E2E3_ONLINE }, { 0x1c0000, 2, RI_ALL_ONLINE },
-       { 0x200000, 65, RI_ALL_ONLINE }, { 0x20014c, 2, RI_E1HE2E3_ONLINE },
-       { 0x200200, 58, RI_ALL_ONLINE }, { 0x200340, 4, RI_ALL_ONLINE },
-       { 0x200380, 1, RI_E2E3_ONLINE }, { 0x200388, 1, RI_E2E3_ONLINE },
-       { 0x200390, 1, RI_E2E3_ONLINE }, { 0x200398, 1, RI_E2E3_ONLINE },
-       { 0x2003a0, 1, RI_E2E3_ONLINE }, { 0x2003a8, 2, RI_E2E3_ONLINE },
-       { 0x200400, 1, RI_ALL_ONLINE }, { 0x200404, 255, RI_E1E1H_OFFLINE },
-       { 0x202000, 4, RI_ALL_ONLINE }, { 0x202010, 2044, RI_ALL_OFFLINE },
-       { 0x204000, 4, RI_E3_ONLINE }, { 0x220000, 1, RI_ALL_ONLINE },
+       { 0x1a5800, 2560, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x1a8000, 1, RI_ALL_ONLINE },
+       { 0x1a8004, 8191, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x1b0000, 1, RI_ALL_ONLINE },
+       { 0x1b0004, 15, RI_E1H_OFFLINE },
+       { 0x1b0040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b0044, 239, RI_E1H_OFFLINE },
+       { 0x1b0400, 1, RI_ALL_ONLINE },
+       { 0x1b0404, 255, RI_E1H_OFFLINE },
+       { 0x1b0800, 1, RI_ALL_ONLINE },
+       { 0x1b0840, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b0c00, 1, RI_ALL_ONLINE },
+       { 0x1b1000, 1, RI_ALL_ONLINE },
+       { 0x1b1040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b1400, 1, RI_ALL_ONLINE },
+       { 0x1b1440, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b1480, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b14c0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b1800, 128, RI_ALL_OFFLINE },
+       { 0x1b1c00, 128, RI_ALL_OFFLINE },
+       { 0x1b2000, 1, RI_ALL_ONLINE },
+       { 0x1b2400, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b2404, 5631, RI_E2E3E3B0_OFFLINE },
+       { 0x1b8000, 1, RI_ALL_ONLINE },
+       { 0x1b8040, 1, RI_ALL_ONLINE },
+       { 0x1b8080, 1, RI_ALL_ONLINE },
+       { 0x1b80c0, 1, RI_ALL_ONLINE },
+       { 0x1b8100, 1, RI_ALL_ONLINE },
+       { 0x1b8140, 1, RI_ALL_ONLINE },
+       { 0x1b8180, 1, RI_ALL_ONLINE },
+       { 0x1b81c0, 1, RI_ALL_ONLINE },
+       { 0x1b8200, 1, RI_ALL_ONLINE },
+       { 0x1b8240, 1, RI_ALL_ONLINE },
+       { 0x1b8280, 1, RI_ALL_ONLINE },
+       { 0x1b82c0, 1, RI_ALL_ONLINE },
+       { 0x1b8300, 1, RI_ALL_ONLINE },
+       { 0x1b8340, 1, RI_ALL_ONLINE },
+       { 0x1b8380, 1, RI_ALL_ONLINE },
+       { 0x1b83c0, 1, RI_ALL_ONLINE },
+       { 0x1b8400, 1, RI_ALL_ONLINE },
+       { 0x1b8440, 1, RI_ALL_ONLINE },
+       { 0x1b8480, 1, RI_ALL_ONLINE },
+       { 0x1b84c0, 1, RI_ALL_ONLINE },
+       { 0x1b8500, 1, RI_ALL_ONLINE },
+       { 0x1b8540, 1, RI_ALL_ONLINE },
+       { 0x1b8580, 1, RI_ALL_ONLINE },
+       { 0x1b85c0, 19, RI_E2E3E3B0_ONLINE },
+       { 0x1b8800, 1, RI_ALL_ONLINE },
+       { 0x1b8840, 1, RI_ALL_ONLINE },
+       { 0x1b8880, 1, RI_ALL_ONLINE },
+       { 0x1b88c0, 1, RI_ALL_ONLINE },
+       { 0x1b8900, 1, RI_ALL_ONLINE },
+       { 0x1b8940, 1, RI_ALL_ONLINE },
+       { 0x1b8980, 1, RI_ALL_ONLINE },
+       { 0x1b89c0, 1, RI_ALL_ONLINE },
+       { 0x1b8a00, 1, RI_ALL_ONLINE },
+       { 0x1b8a40, 1, RI_ALL_ONLINE },
+       { 0x1b8a80, 1, RI_ALL_ONLINE },
+       { 0x1b8ac0, 1, RI_ALL_ONLINE },
+       { 0x1b8b00, 1, RI_ALL_ONLINE },
+       { 0x1b8b40, 1, RI_ALL_ONLINE },
+       { 0x1b8b80, 1, RI_ALL_ONLINE },
+       { 0x1b8bc0, 1, RI_ALL_ONLINE },
+       { 0x1b8c00, 1, RI_ALL_ONLINE },
+       { 0x1b8c40, 1, RI_ALL_ONLINE },
+       { 0x1b8c80, 1, RI_ALL_ONLINE },
+       { 0x1b8cc0, 1, RI_ALL_ONLINE },
+       { 0x1b8cc4, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1b8d00, 1, RI_ALL_ONLINE },
+       { 0x1b8d40, 1, RI_ALL_ONLINE },
+       { 0x1b8d80, 1, RI_ALL_ONLINE },
+       { 0x1b8dc0, 1, RI_ALL_ONLINE },
+       { 0x1b8e00, 1, RI_ALL_ONLINE },
+       { 0x1b8e40, 1, RI_ALL_ONLINE },
+       { 0x1b8e80, 1, RI_ALL_ONLINE },
+       { 0x1b8e84, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1b8ec0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b8f00, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b8f40, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b8f80, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b8fc0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x1b8fc4, 2, RI_E2E3E3B0_ONLINE },
+       { 0x1b8fd0, 6, RI_E2E3E3B0_ONLINE },
+       { 0x1b8fe8, 2, RI_E3E3B0_ONLINE },
+       { 0x1b9000, 1, RI_E2E3E3B0_ONLINE },
+       { 0x1b9040, 3, RI_E2E3E3B0_ONLINE },
+       { 0x1b905c, 1, RI_E3E3B0_ONLINE },
+       { 0x1b9064, 1, RI_E3B0_ONLINE },
+       { 0x1b9080, 10, RI_E3B0_ONLINE },
+       { 0x1b9400, 14, RI_E2E3E3B0_ONLINE },
+       { 0x1b943c, 19, RI_E2E3E3B0_ONLINE },
+       { 0x1b9490, 10, RI_E2E3E3B0_ONLINE },
+       { 0x1c0000, 2, RI_ALL_ONLINE },
+       { 0x200000, 65, RI_ALL_ONLINE },
+       { 0x20014c, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x200200, 58, RI_ALL_ONLINE },
+       { 0x200340, 4, RI_ALL_ONLINE },
+       { 0x200380, 1, RI_E2E3E3B0_ONLINE },
+       { 0x200388, 1, RI_E2E3E3B0_ONLINE },
+       { 0x200390, 1, RI_E2E3E3B0_ONLINE },
+       { 0x200398, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2003a0, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2003a8, 2, RI_E2E3E3B0_ONLINE },
+       { 0x200400, 1, RI_ALL_ONLINE },
+       { 0x200404, 255, RI_E1E1H_OFFLINE },
+       { 0x202000, 4, RI_ALL_ONLINE },
+       { 0x202010, 2044, RI_ALL_OFFLINE },
+       { 0x204000, 4, RI_E3E3B0_ONLINE },
+       { 0x220000, 1, RI_ALL_ONLINE },
        { 0x220004, 5631, RI_ALL_OFFLINE },
-       { 0x225800, 2560, RI_E1HE2E3_OFFLINE },
-       { 0x228000, 1, RI_ALL_ONLINE }, { 0x228004, 8191, RI_E1HE2E3_OFFLINE },
-       { 0x230000, 1, RI_ALL_ONLINE }, { 0x230004, 15, RI_E1H_OFFLINE },
-       { 0x230040, 1, RI_E1HE2E3_ONLINE }, { 0x230044, 239, RI_E1H_OFFLINE },
-       { 0x230400, 1, RI_ALL_ONLINE }, { 0x230404, 255, RI_E1H_OFFLINE },
-       { 0x230800, 1, RI_ALL_ONLINE }, { 0x230840, 1, RI_E1HE2E3_ONLINE },
-       { 0x230c00, 1, RI_ALL_ONLINE }, { 0x231000, 1, RI_ALL_ONLINE },
-       { 0x231040, 1, RI_E1HE2E3_ONLINE }, { 0x231400, 1, RI_ALL_ONLINE },
-       { 0x231440, 1, RI_E1HE2E3_ONLINE }, { 0x231480, 1, RI_E1HE2E3_ONLINE },
-       { 0x2314c0, 1, RI_E1HE2E3_ONLINE }, { 0x231800, 128, RI_ALL_OFFLINE },
-       { 0x231c00, 128, RI_ALL_OFFLINE }, { 0x232000, 1, RI_ALL_ONLINE },
-       { 0x232400, 1, RI_E1HE2E3_ONLINE }, { 0x232404, 5631, RI_E2E3_OFFLINE },
-       { 0x238000, 1, RI_ALL_ONLINE }, { 0x238040, 1, RI_ALL_ONLINE },
-       { 0x238080, 1, RI_ALL_ONLINE }, { 0x2380c0, 1, RI_ALL_ONLINE },
-       { 0x238100, 1, RI_ALL_ONLINE }, { 0x238140, 1, RI_ALL_ONLINE },
-       { 0x238180, 1, RI_ALL_ONLINE }, { 0x2381c0, 1, RI_ALL_ONLINE },
-       { 0x238200, 1, RI_ALL_ONLINE }, { 0x238240, 1, RI_ALL_ONLINE },
-       { 0x238280, 1, RI_ALL_ONLINE }, { 0x2382c0, 1, RI_ALL_ONLINE },
-       { 0x238300, 1, RI_ALL_ONLINE }, { 0x238340, 1, RI_ALL_ONLINE },
-       { 0x238380, 1, RI_ALL_ONLINE }, { 0x2383c0, 1, RI_ALL_ONLINE },
-       { 0x238400, 1, RI_ALL_ONLINE }, { 0x238440, 1, RI_ALL_ONLINE },
-       { 0x238480, 1, RI_ALL_ONLINE }, { 0x2384c0, 1, RI_ALL_ONLINE },
-       { 0x238500, 1, RI_ALL_ONLINE }, { 0x238540, 1, RI_ALL_ONLINE },
-       { 0x238580, 1, RI_ALL_ONLINE }, { 0x2385c0, 19, RI_E2E3_ONLINE },
-       { 0x238800, 1, RI_ALL_ONLINE }, { 0x238840, 1, RI_ALL_ONLINE },
-       { 0x238880, 1, RI_ALL_ONLINE }, { 0x2388c0, 1, RI_ALL_ONLINE },
-       { 0x238900, 1, RI_ALL_ONLINE }, { 0x238940, 1, RI_ALL_ONLINE },
-       { 0x238980, 1, RI_ALL_ONLINE }, { 0x2389c0, 1, RI_ALL_ONLINE },
-       { 0x238a00, 1, RI_ALL_ONLINE }, { 0x238a40, 1, RI_ALL_ONLINE },
-       { 0x238a80, 1, RI_ALL_ONLINE }, { 0x238ac0, 1, RI_ALL_ONLINE },
-       { 0x238b00, 1, RI_ALL_ONLINE }, { 0x238b40, 1, RI_ALL_ONLINE },
-       { 0x238b80, 1, RI_ALL_ONLINE }, { 0x238bc0, 1, RI_ALL_ONLINE },
-       { 0x238c00, 1, RI_ALL_ONLINE }, { 0x238c40, 1, RI_ALL_ONLINE },
-       { 0x238c80, 1, RI_ALL_ONLINE }, { 0x238cc0, 1, RI_ALL_ONLINE },
-       { 0x238cc4, 1, RI_E2E3_ONLINE }, { 0x238d00, 1, RI_ALL_ONLINE },
-       { 0x238d40, 1, RI_ALL_ONLINE }, { 0x238d80, 1, RI_ALL_ONLINE },
-       { 0x238dc0, 1, RI_ALL_ONLINE }, { 0x238e00, 1, RI_ALL_ONLINE },
-       { 0x238e40, 1, RI_ALL_ONLINE }, { 0x238e80, 1, RI_ALL_ONLINE },
-       { 0x238e84, 1, RI_E2E3_ONLINE }, { 0x238ec0, 1, RI_E1HE2E3_ONLINE },
-       { 0x238f00, 1, RI_E1HE2E3_ONLINE }, { 0x238f40, 1, RI_E1HE2E3_ONLINE },
-       { 0x238f80, 1, RI_E1HE2E3_ONLINE }, { 0x238fc0, 1, RI_E1HE2E3_ONLINE },
-       { 0x238fc4, 2, RI_E2E3_ONLINE }, { 0x238fd0, 6, RI_E2E3_ONLINE },
-       { 0x238fe8, 2, RI_E3_ONLINE }, { 0x239000, 1, RI_E2E3_ONLINE },
-       { 0x239040, 3, RI_E2E3_ONLINE }, { 0x23905c, 1, RI_E3_ONLINE },
-       { 0x240000, 2, RI_ALL_ONLINE }, { 0x280000, 65, RI_ALL_ONLINE },
-       { 0x28014c, 2, RI_E1HE2E3_ONLINE }, { 0x280200, 58, RI_ALL_ONLINE },
-       { 0x280340, 4, RI_ALL_ONLINE }, { 0x280380, 1, RI_E2E3_ONLINE },
-       { 0x280388, 1, RI_E2E3_ONLINE }, { 0x280390, 1, RI_E2E3_ONLINE },
-       { 0x280398, 1, RI_E2E3_ONLINE }, { 0x2803a0, 1, RI_E2E3_ONLINE },
-       { 0x2803a8, 2, RI_E2E3_ONLINE }, { 0x280400, 1, RI_ALL_ONLINE },
-       { 0x280404, 255, RI_E1E1H_OFFLINE }, { 0x282000, 4, RI_ALL_ONLINE },
-       { 0x282010, 2044, RI_ALL_OFFLINE }, { 0x284000, 4, RI_E3_ONLINE },
-       { 0x2a0000, 1, RI_ALL_ONLINE }, { 0x2a0004, 5631, RI_ALL_OFFLINE },
-       { 0x2a5800, 2560, RI_E1HE2E3_OFFLINE }, { 0x2a8000, 1, RI_ALL_ONLINE },
-       { 0x2a8004, 8191, RI_E1HE2E3_OFFLINE }, { 0x2b0000, 1, RI_ALL_ONLINE },
-       { 0x2b0004, 15, RI_E1H_OFFLINE }, { 0x2b0040, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b0044, 239, RI_E1H_OFFLINE }, { 0x2b0400, 1, RI_ALL_ONLINE },
-       { 0x2b0404, 255, RI_E1H_OFFLINE }, { 0x2b0800, 1, RI_ALL_ONLINE },
-       { 0x2b0840, 1, RI_E1HE2E3_ONLINE }, { 0x2b0c00, 1, RI_ALL_ONLINE },
-       { 0x2b1000, 1, RI_ALL_ONLINE }, { 0x2b1040, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b1400, 1, RI_ALL_ONLINE }, { 0x2b1440, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b1480, 1, RI_E1HE2E3_ONLINE }, { 0x2b14c0, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b1800, 128, RI_ALL_OFFLINE }, { 0x2b1c00, 128, RI_ALL_OFFLINE },
-       { 0x2b2000, 1, RI_ALL_ONLINE }, { 0x2b2400, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b2404, 5631, RI_E2E3_OFFLINE }, { 0x2b8000, 1, RI_ALL_ONLINE },
-       { 0x2b8040, 1, RI_ALL_ONLINE }, { 0x2b8080, 1, RI_ALL_ONLINE },
-       { 0x2b80c0, 1, RI_ALL_ONLINE }, { 0x2b8100, 1, RI_ALL_ONLINE },
-       { 0x2b8140, 1, RI_ALL_ONLINE }, { 0x2b8180, 1, RI_ALL_ONLINE },
-       { 0x2b81c0, 1, RI_ALL_ONLINE }, { 0x2b8200, 1, RI_ALL_ONLINE },
-       { 0x2b8240, 1, RI_ALL_ONLINE }, { 0x2b8280, 1, RI_ALL_ONLINE },
-       { 0x2b82c0, 1, RI_ALL_ONLINE }, { 0x2b8300, 1, RI_ALL_ONLINE },
-       { 0x2b8340, 1, RI_ALL_ONLINE }, { 0x2b8380, 1, RI_ALL_ONLINE },
-       { 0x2b83c0, 1, RI_ALL_ONLINE }, { 0x2b8400, 1, RI_ALL_ONLINE },
-       { 0x2b8440, 1, RI_ALL_ONLINE }, { 0x2b8480, 1, RI_ALL_ONLINE },
-       { 0x2b84c0, 1, RI_ALL_ONLINE }, { 0x2b8500, 1, RI_ALL_ONLINE },
-       { 0x2b8540, 1, RI_ALL_ONLINE }, { 0x2b8580, 1, RI_ALL_ONLINE },
-       { 0x2b85c0, 19, RI_E2E3_ONLINE }, { 0x2b8800, 1, RI_ALL_ONLINE },
-       { 0x2b8840, 1, RI_ALL_ONLINE }, { 0x2b8880, 1, RI_ALL_ONLINE },
-       { 0x2b88c0, 1, RI_ALL_ONLINE }, { 0x2b8900, 1, RI_ALL_ONLINE },
-       { 0x2b8940, 1, RI_ALL_ONLINE }, { 0x2b8980, 1, RI_ALL_ONLINE },
-       { 0x2b89c0, 1, RI_ALL_ONLINE }, { 0x2b8a00, 1, RI_ALL_ONLINE },
-       { 0x2b8a40, 1, RI_ALL_ONLINE }, { 0x2b8a80, 1, RI_ALL_ONLINE },
-       { 0x2b8ac0, 1, RI_ALL_ONLINE }, { 0x2b8b00, 1, RI_ALL_ONLINE },
-       { 0x2b8b40, 1, RI_ALL_ONLINE }, { 0x2b8b80, 1, RI_ALL_ONLINE },
-       { 0x2b8bc0, 1, RI_ALL_ONLINE }, { 0x2b8c00, 1, RI_ALL_ONLINE },
-       { 0x2b8c40, 1, RI_ALL_ONLINE }, { 0x2b8c80, 1, RI_ALL_ONLINE },
-       { 0x2b8cc0, 1, RI_ALL_ONLINE }, { 0x2b8cc4, 1, RI_E2E3_ONLINE },
-       { 0x2b8d00, 1, RI_ALL_ONLINE }, { 0x2b8d40, 1, RI_ALL_ONLINE },
-       { 0x2b8d80, 1, RI_ALL_ONLINE }, { 0x2b8dc0, 1, RI_ALL_ONLINE },
-       { 0x2b8e00, 1, RI_ALL_ONLINE }, { 0x2b8e40, 1, RI_ALL_ONLINE },
-       { 0x2b8e80, 1, RI_ALL_ONLINE }, { 0x2b8e84, 1, RI_E2E3_ONLINE },
-       { 0x2b8ec0, 1, RI_E1HE2E3_ONLINE }, { 0x2b8f00, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b8f40, 1, RI_E1HE2E3_ONLINE }, { 0x2b8f80, 1, RI_E1HE2E3_ONLINE },
-       { 0x2b8fc0, 1, RI_E1HE2E3_ONLINE }, { 0x2b8fc4, 2, RI_E2E3_ONLINE },
-       { 0x2b8fd0, 6, RI_E2E3_ONLINE }, { 0x2b8fe8, 2, RI_E3_ONLINE },
-       { 0x2b9000, 1, RI_E2E3_ONLINE }, { 0x2b9040, 3, RI_E2E3_ONLINE },
-       { 0x2b905c, 1, RI_E3_ONLINE }, { 0x2b9400, 14, RI_E2E3_ONLINE },
-       { 0x2b943c, 19, RI_E2E3_ONLINE }, { 0x2b9490, 10, RI_E2E3_ONLINE },
-       { 0x2c0000, 2, RI_ALL_ONLINE }, { 0x300000, 65, RI_ALL_ONLINE },
-       { 0x30014c, 2, RI_E1HE2E3_ONLINE }, { 0x300200, 58, RI_ALL_ONLINE },
-       { 0x300340, 4, RI_ALL_ONLINE }, { 0x300380, 1, RI_E2E3_ONLINE },
-       { 0x300388, 1, RI_E2E3_ONLINE }, { 0x300390, 1, RI_E2E3_ONLINE },
-       { 0x300398, 1, RI_E2E3_ONLINE }, { 0x3003a0, 1, RI_E2E3_ONLINE },
-       { 0x3003a8, 2, RI_E2E3_ONLINE }, { 0x300400, 1, RI_ALL_ONLINE },
-       { 0x300404, 255, RI_E1E1H_OFFLINE }, { 0x302000, 4, RI_ALL_ONLINE },
-       { 0x302010, 2044, RI_ALL_OFFLINE }, { 0x304000, 4, RI_E3_ONLINE },
-       { 0x320000, 1, RI_ALL_ONLINE }, { 0x320004, 5631, RI_ALL_OFFLINE },
-       { 0x325800, 2560, RI_E1HE2E3_OFFLINE }, { 0x328000, 1, RI_ALL_ONLINE },
-       { 0x328004, 8191, RI_E1HE2E3_OFFLINE }, { 0x330000, 1, RI_ALL_ONLINE },
-       { 0x330004, 15, RI_E1H_OFFLINE }, { 0x330040, 1, RI_E1HE2E3_ONLINE },
-       { 0x330044, 239, RI_E1H_OFFLINE }, { 0x330400, 1, RI_ALL_ONLINE },
-       { 0x330404, 255, RI_E1H_OFFLINE }, { 0x330800, 1, RI_ALL_ONLINE },
-       { 0x330840, 1, RI_E1HE2E3_ONLINE }, { 0x330c00, 1, RI_ALL_ONLINE },
-       { 0x331000, 1, RI_ALL_ONLINE }, { 0x331040, 1, RI_E1HE2E3_ONLINE },
-       { 0x331400, 1, RI_ALL_ONLINE }, { 0x331440, 1, RI_E1HE2E3_ONLINE },
-       { 0x331480, 1, RI_E1HE2E3_ONLINE }, { 0x3314c0, 1, RI_E1HE2E3_ONLINE },
-       { 0x331800, 128, RI_ALL_OFFLINE }, { 0x331c00, 128, RI_ALL_OFFLINE },
-       { 0x332000, 1, RI_ALL_ONLINE }, { 0x332400, 1, RI_E1HE2E3_ONLINE },
-       { 0x332404, 5631, RI_E2E3_OFFLINE }, { 0x338000, 1, RI_ALL_ONLINE },
-       { 0x338040, 1, RI_ALL_ONLINE }, { 0x338080, 1, RI_ALL_ONLINE },
-       { 0x3380c0, 1, RI_ALL_ONLINE }, { 0x338100, 1, RI_ALL_ONLINE },
-       { 0x338140, 1, RI_ALL_ONLINE }, { 0x338180, 1, RI_ALL_ONLINE },
-       { 0x3381c0, 1, RI_ALL_ONLINE }, { 0x338200, 1, RI_ALL_ONLINE },
-       { 0x338240, 1, RI_ALL_ONLINE }, { 0x338280, 1, RI_ALL_ONLINE },
-       { 0x3382c0, 1, RI_ALL_ONLINE }, { 0x338300, 1, RI_ALL_ONLINE },
-       { 0x338340, 1, RI_ALL_ONLINE }, { 0x338380, 1, RI_ALL_ONLINE },
-       { 0x3383c0, 1, RI_ALL_ONLINE }, { 0x338400, 1, RI_ALL_ONLINE },
-       { 0x338440, 1, RI_ALL_ONLINE }, { 0x338480, 1, RI_ALL_ONLINE },
-       { 0x3384c0, 1, RI_ALL_ONLINE }, { 0x338500, 1, RI_ALL_ONLINE },
-       { 0x338540, 1, RI_ALL_ONLINE }, { 0x338580, 1, RI_ALL_ONLINE },
-       { 0x3385c0, 19, RI_E2E3_ONLINE }, { 0x338800, 1, RI_ALL_ONLINE },
-       { 0x338840, 1, RI_ALL_ONLINE }, { 0x338880, 1, RI_ALL_ONLINE },
-       { 0x3388c0, 1, RI_ALL_ONLINE }, { 0x338900, 1, RI_ALL_ONLINE },
-       { 0x338940, 1, RI_ALL_ONLINE }, { 0x338980, 1, RI_ALL_ONLINE },
-       { 0x3389c0, 1, RI_ALL_ONLINE }, { 0x338a00, 1, RI_ALL_ONLINE },
-       { 0x338a40, 1, RI_ALL_ONLINE }, { 0x338a80, 1, RI_ALL_ONLINE },
-       { 0x338ac0, 1, RI_ALL_ONLINE }, { 0x338b00, 1, RI_ALL_ONLINE },
-       { 0x338b40, 1, RI_ALL_ONLINE }, { 0x338b80, 1, RI_ALL_ONLINE },
-       { 0x338bc0, 1, RI_ALL_ONLINE }, { 0x338c00, 1, RI_ALL_ONLINE },
-       { 0x338c40, 1, RI_ALL_ONLINE }, { 0x338c80, 1, RI_ALL_ONLINE },
-       { 0x338cc0, 1, RI_ALL_ONLINE }, { 0x338cc4, 1, RI_E2E3_ONLINE },
-       { 0x338d00, 1, RI_ALL_ONLINE }, { 0x338d40, 1, RI_ALL_ONLINE },
-       { 0x338d80, 1, RI_ALL_ONLINE }, { 0x338dc0, 1, RI_ALL_ONLINE },
-       { 0x338e00, 1, RI_ALL_ONLINE }, { 0x338e40, 1, RI_ALL_ONLINE },
-       { 0x338e80, 1, RI_ALL_ONLINE }, { 0x338e84, 1, RI_E2E3_ONLINE },
-       { 0x338ec0, 1, RI_E1HE2E3_ONLINE }, { 0x338f00, 1, RI_E1HE2E3_ONLINE },
-       { 0x338f40, 1, RI_E1HE2E3_ONLINE }, { 0x338f80, 1, RI_E1HE2E3_ONLINE },
-       { 0x338fc0, 1, RI_E1HE2E3_ONLINE }, { 0x338fc4, 2, RI_E2E3_ONLINE },
-       { 0x338fd0, 6, RI_E2E3_ONLINE }, { 0x338fe8, 2, RI_E3_ONLINE },
-       { 0x339000, 1, RI_E2E3_ONLINE }, { 0x339040, 3, RI_E2E3_ONLINE },
-       { 0x33905c, 1, RI_E3_ONLINE }, { 0x340000, 2, RI_ALL_ONLINE },
+       { 0x225800, 2560, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x228000, 1, RI_ALL_ONLINE },
+       { 0x228004, 8191, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x230000, 1, RI_ALL_ONLINE },
+       { 0x230004, 15, RI_E1H_OFFLINE },
+       { 0x230040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x230044, 239, RI_E1H_OFFLINE },
+       { 0x230400, 1, RI_ALL_ONLINE },
+       { 0x230404, 255, RI_E1H_OFFLINE },
+       { 0x230800, 1, RI_ALL_ONLINE },
+       { 0x230840, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x230c00, 1, RI_ALL_ONLINE },
+       { 0x231000, 1, RI_ALL_ONLINE },
+       { 0x231040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x231400, 1, RI_ALL_ONLINE },
+       { 0x231440, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x231480, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2314c0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x231800, 128, RI_ALL_OFFLINE },
+       { 0x231c00, 128, RI_ALL_OFFLINE },
+       { 0x232000, 1, RI_ALL_ONLINE },
+       { 0x232400, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x232404, 5631, RI_E2E3E3B0_OFFLINE },
+       { 0x238000, 1, RI_ALL_ONLINE },
+       { 0x238040, 1, RI_ALL_ONLINE },
+       { 0x238080, 1, RI_ALL_ONLINE },
+       { 0x2380c0, 1, RI_ALL_ONLINE },
+       { 0x238100, 1, RI_ALL_ONLINE },
+       { 0x238140, 1, RI_ALL_ONLINE },
+       { 0x238180, 1, RI_ALL_ONLINE },
+       { 0x2381c0, 1, RI_ALL_ONLINE },
+       { 0x238200, 1, RI_ALL_ONLINE },
+       { 0x238240, 1, RI_ALL_ONLINE },
+       { 0x238280, 1, RI_ALL_ONLINE },
+       { 0x2382c0, 1, RI_ALL_ONLINE },
+       { 0x238300, 1, RI_ALL_ONLINE },
+       { 0x238340, 1, RI_ALL_ONLINE },
+       { 0x238380, 1, RI_ALL_ONLINE },
+       { 0x2383c0, 1, RI_ALL_ONLINE },
+       { 0x238400, 1, RI_ALL_ONLINE },
+       { 0x238440, 1, RI_ALL_ONLINE },
+       { 0x238480, 1, RI_ALL_ONLINE },
+       { 0x2384c0, 1, RI_ALL_ONLINE },
+       { 0x238500, 1, RI_ALL_ONLINE },
+       { 0x238540, 1, RI_ALL_ONLINE },
+       { 0x238580, 1, RI_ALL_ONLINE },
+       { 0x2385c0, 19, RI_E2E3E3B0_ONLINE },
+       { 0x238800, 1, RI_ALL_ONLINE },
+       { 0x238840, 1, RI_ALL_ONLINE },
+       { 0x238880, 1, RI_ALL_ONLINE },
+       { 0x2388c0, 1, RI_ALL_ONLINE },
+       { 0x238900, 1, RI_ALL_ONLINE },
+       { 0x238940, 1, RI_ALL_ONLINE },
+       { 0x238980, 1, RI_ALL_ONLINE },
+       { 0x2389c0, 1, RI_ALL_ONLINE },
+       { 0x238a00, 1, RI_ALL_ONLINE },
+       { 0x238a40, 1, RI_ALL_ONLINE },
+       { 0x238a80, 1, RI_ALL_ONLINE },
+       { 0x238ac0, 1, RI_ALL_ONLINE },
+       { 0x238b00, 1, RI_ALL_ONLINE },
+       { 0x238b40, 1, RI_ALL_ONLINE },
+       { 0x238b80, 1, RI_ALL_ONLINE },
+       { 0x238bc0, 1, RI_ALL_ONLINE },
+       { 0x238c00, 1, RI_ALL_ONLINE },
+       { 0x238c40, 1, RI_ALL_ONLINE },
+       { 0x238c80, 1, RI_ALL_ONLINE },
+       { 0x238cc0, 1, RI_ALL_ONLINE },
+       { 0x238cc4, 1, RI_E2E3E3B0_ONLINE },
+       { 0x238d00, 1, RI_ALL_ONLINE },
+       { 0x238d40, 1, RI_ALL_ONLINE },
+       { 0x238d80, 1, RI_ALL_ONLINE },
+       { 0x238dc0, 1, RI_ALL_ONLINE },
+       { 0x238e00, 1, RI_ALL_ONLINE },
+       { 0x238e40, 1, RI_ALL_ONLINE },
+       { 0x238e80, 1, RI_ALL_ONLINE },
+       { 0x238e84, 1, RI_E2E3E3B0_ONLINE },
+       { 0x238ec0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x238f00, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x238f40, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x238f80, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x238fc0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x238fc4, 2, RI_E2E3E3B0_ONLINE },
+       { 0x238fd0, 6, RI_E2E3E3B0_ONLINE },
+       { 0x238fe8, 2, RI_E3E3B0_ONLINE },
+       { 0x239000, 1, RI_E2E3E3B0_ONLINE },
+       { 0x239040, 3, RI_E2E3E3B0_ONLINE },
+       { 0x23905c, 1, RI_E3E3B0_ONLINE },
+       { 0x239064, 1, RI_E3B0_ONLINE },
+       { 0x239080, 10, RI_E3B0_ONLINE },
+       { 0x240000, 2, RI_ALL_ONLINE },
+       { 0x280000, 65, RI_ALL_ONLINE },
+       { 0x28014c, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x280200, 58, RI_ALL_ONLINE },
+       { 0x280340, 4, RI_ALL_ONLINE },
+       { 0x280380, 1, RI_E2E3E3B0_ONLINE },
+       { 0x280388, 1, RI_E2E3E3B0_ONLINE },
+       { 0x280390, 1, RI_E2E3E3B0_ONLINE },
+       { 0x280398, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2803a0, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2803a8, 2, RI_E2E3E3B0_ONLINE },
+       { 0x280400, 1, RI_ALL_ONLINE },
+       { 0x280404, 255, RI_E1E1H_OFFLINE },
+       { 0x282000, 4, RI_ALL_ONLINE },
+       { 0x282010, 2044, RI_ALL_OFFLINE },
+       { 0x284000, 4, RI_E3E3B0_ONLINE },
+       { 0x2a0000, 1, RI_ALL_ONLINE },
+       { 0x2a0004, 5631, RI_ALL_OFFLINE },
+       { 0x2a5800, 2560, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x2a8000, 1, RI_ALL_ONLINE },
+       { 0x2a8004, 8191, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x2b0000, 1, RI_ALL_ONLINE },
+       { 0x2b0004, 15, RI_E1H_OFFLINE },
+       { 0x2b0040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b0044, 239, RI_E1H_OFFLINE },
+       { 0x2b0400, 1, RI_ALL_ONLINE },
+       { 0x2b0404, 255, RI_E1H_OFFLINE },
+       { 0x2b0800, 1, RI_ALL_ONLINE },
+       { 0x2b0840, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b0c00, 1, RI_ALL_ONLINE },
+       { 0x2b1000, 1, RI_ALL_ONLINE },
+       { 0x2b1040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b1400, 1, RI_ALL_ONLINE },
+       { 0x2b1440, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b1480, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b14c0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b1800, 128, RI_ALL_OFFLINE },
+       { 0x2b1c00, 128, RI_ALL_OFFLINE },
+       { 0x2b2000, 1, RI_ALL_ONLINE },
+       { 0x2b2400, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b2404, 5631, RI_E2E3E3B0_OFFLINE },
+       { 0x2b8000, 1, RI_ALL_ONLINE },
+       { 0x2b8040, 1, RI_ALL_ONLINE },
+       { 0x2b8080, 1, RI_ALL_ONLINE },
+       { 0x2b80c0, 1, RI_ALL_ONLINE },
+       { 0x2b8100, 1, RI_ALL_ONLINE },
+       { 0x2b8140, 1, RI_ALL_ONLINE },
+       { 0x2b8180, 1, RI_ALL_ONLINE },
+       { 0x2b81c0, 1, RI_ALL_ONLINE },
+       { 0x2b8200, 1, RI_ALL_ONLINE },
+       { 0x2b8240, 1, RI_ALL_ONLINE },
+       { 0x2b8280, 1, RI_ALL_ONLINE },
+       { 0x2b82c0, 1, RI_ALL_ONLINE },
+       { 0x2b8300, 1, RI_ALL_ONLINE },
+       { 0x2b8340, 1, RI_ALL_ONLINE },
+       { 0x2b8380, 1, RI_ALL_ONLINE },
+       { 0x2b83c0, 1, RI_ALL_ONLINE },
+       { 0x2b8400, 1, RI_ALL_ONLINE },
+       { 0x2b8440, 1, RI_ALL_ONLINE },
+       { 0x2b8480, 1, RI_ALL_ONLINE },
+       { 0x2b84c0, 1, RI_ALL_ONLINE },
+       { 0x2b8500, 1, RI_ALL_ONLINE },
+       { 0x2b8540, 1, RI_ALL_ONLINE },
+       { 0x2b8580, 1, RI_ALL_ONLINE },
+       { 0x2b85c0, 19, RI_E2E3E3B0_ONLINE },
+       { 0x2b8800, 1, RI_ALL_ONLINE },
+       { 0x2b8840, 1, RI_ALL_ONLINE },
+       { 0x2b8880, 1, RI_ALL_ONLINE },
+       { 0x2b88c0, 1, RI_ALL_ONLINE },
+       { 0x2b8900, 1, RI_ALL_ONLINE },
+       { 0x2b8940, 1, RI_ALL_ONLINE },
+       { 0x2b8980, 1, RI_ALL_ONLINE },
+       { 0x2b89c0, 1, RI_ALL_ONLINE },
+       { 0x2b8a00, 1, RI_ALL_ONLINE },
+       { 0x2b8a40, 1, RI_ALL_ONLINE },
+       { 0x2b8a80, 1, RI_ALL_ONLINE },
+       { 0x2b8ac0, 1, RI_ALL_ONLINE },
+       { 0x2b8b00, 1, RI_ALL_ONLINE },
+       { 0x2b8b40, 1, RI_ALL_ONLINE },
+       { 0x2b8b80, 1, RI_ALL_ONLINE },
+       { 0x2b8bc0, 1, RI_ALL_ONLINE },
+       { 0x2b8c00, 1, RI_ALL_ONLINE },
+       { 0x2b8c40, 1, RI_ALL_ONLINE },
+       { 0x2b8c80, 1, RI_ALL_ONLINE },
+       { 0x2b8cc0, 1, RI_ALL_ONLINE },
+       { 0x2b8cc4, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2b8d00, 1, RI_ALL_ONLINE },
+       { 0x2b8d40, 1, RI_ALL_ONLINE },
+       { 0x2b8d80, 1, RI_ALL_ONLINE },
+       { 0x2b8dc0, 1, RI_ALL_ONLINE },
+       { 0x2b8e00, 1, RI_ALL_ONLINE },
+       { 0x2b8e40, 1, RI_ALL_ONLINE },
+       { 0x2b8e80, 1, RI_ALL_ONLINE },
+       { 0x2b8e84, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2b8ec0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b8f00, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b8f40, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b8f80, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b8fc0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x2b8fc4, 2, RI_E2E3E3B0_ONLINE },
+       { 0x2b8fd0, 6, RI_E2E3E3B0_ONLINE },
+       { 0x2b8fe8, 2, RI_E3E3B0_ONLINE },
+       { 0x2b9000, 1, RI_E2E3E3B0_ONLINE },
+       { 0x2b9040, 3, RI_E2E3E3B0_ONLINE },
+       { 0x2b905c, 1, RI_E3E3B0_ONLINE },
+       { 0x2b9064, 1, RI_E3B0_ONLINE },
+       { 0x2b9080, 10, RI_E3B0_ONLINE },
+       { 0x2b9400, 14, RI_E2E3E3B0_ONLINE },
+       { 0x2b943c, 19, RI_E2E3E3B0_ONLINE },
+       { 0x2b9490, 10, RI_E2E3E3B0_ONLINE },
+       { 0x2c0000, 2, RI_ALL_ONLINE },
+       { 0x300000, 65, RI_ALL_ONLINE },
+       { 0x30014c, 2, RI_E1HE2E3E3B0_ONLINE },
+       { 0x300200, 58, RI_ALL_ONLINE },
+       { 0x300340, 4, RI_ALL_ONLINE },
+       { 0x300380, 1, RI_E2E3E3B0_ONLINE },
+       { 0x300388, 1, RI_E2E3E3B0_ONLINE },
+       { 0x300390, 1, RI_E2E3E3B0_ONLINE },
+       { 0x300398, 1, RI_E2E3E3B0_ONLINE },
+       { 0x3003a0, 1, RI_E2E3E3B0_ONLINE },
+       { 0x3003a8, 2, RI_E2E3E3B0_ONLINE },
+       { 0x300400, 1, RI_ALL_ONLINE },
+       { 0x300404, 255, RI_E1E1H_OFFLINE },
+       { 0x302000, 4, RI_ALL_ONLINE },
+       { 0x302010, 2044, RI_ALL_OFFLINE },
+       { 0x304000, 4, RI_E3E3B0_ONLINE },
+       { 0x320000, 1, RI_ALL_ONLINE },
+       { 0x320004, 5631, RI_ALL_OFFLINE },
+       { 0x325800, 2560, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x328000, 1, RI_ALL_ONLINE },
+       { 0x328004, 8191, RI_E1HE2E3E3B0_OFFLINE },
+       { 0x330000, 1, RI_ALL_ONLINE },
+       { 0x330004, 15, RI_E1H_OFFLINE },
+       { 0x330040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x330044, 239, RI_E1H_OFFLINE },
+       { 0x330400, 1, RI_ALL_ONLINE },
+       { 0x330404, 255, RI_E1H_OFFLINE },
+       { 0x330800, 1, RI_ALL_ONLINE },
+       { 0x330840, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x330c00, 1, RI_ALL_ONLINE },
+       { 0x331000, 1, RI_ALL_ONLINE },
+       { 0x331040, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x331400, 1, RI_ALL_ONLINE },
+       { 0x331440, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x331480, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x3314c0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x331800, 128, RI_ALL_OFFLINE },
+       { 0x331c00, 128, RI_ALL_OFFLINE },
+       { 0x332000, 1, RI_ALL_ONLINE },
+       { 0x332400, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x332404, 5631, RI_E2E3E3B0_OFFLINE },
+       { 0x338000, 1, RI_ALL_ONLINE },
+       { 0x338040, 1, RI_ALL_ONLINE },
+       { 0x338080, 1, RI_ALL_ONLINE },
+       { 0x3380c0, 1, RI_ALL_ONLINE },
+       { 0x338100, 1, RI_ALL_ONLINE },
+       { 0x338140, 1, RI_ALL_ONLINE },
+       { 0x338180, 1, RI_ALL_ONLINE },
+       { 0x3381c0, 1, RI_ALL_ONLINE },
+       { 0x338200, 1, RI_ALL_ONLINE },
+       { 0x338240, 1, RI_ALL_ONLINE },
+       { 0x338280, 1, RI_ALL_ONLINE },
+       { 0x3382c0, 1, RI_ALL_ONLINE },
+       { 0x338300, 1, RI_ALL_ONLINE },
+       { 0x338340, 1, RI_ALL_ONLINE },
+       { 0x338380, 1, RI_ALL_ONLINE },
+       { 0x3383c0, 1, RI_ALL_ONLINE },
+       { 0x338400, 1, RI_ALL_ONLINE },
+       { 0x338440, 1, RI_ALL_ONLINE },
+       { 0x338480, 1, RI_ALL_ONLINE },
+       { 0x3384c0, 1, RI_ALL_ONLINE },
+       { 0x338500, 1, RI_ALL_ONLINE },
+       { 0x338540, 1, RI_ALL_ONLINE },
+       { 0x338580, 1, RI_ALL_ONLINE },
+       { 0x3385c0, 19, RI_E2E3E3B0_ONLINE },
+       { 0x338800, 1, RI_ALL_ONLINE },
+       { 0x338840, 1, RI_ALL_ONLINE },
+       { 0x338880, 1, RI_ALL_ONLINE },
+       { 0x3388c0, 1, RI_ALL_ONLINE },
+       { 0x338900, 1, RI_ALL_ONLINE },
+       { 0x338940, 1, RI_ALL_ONLINE },
+       { 0x338980, 1, RI_ALL_ONLINE },
+       { 0x3389c0, 1, RI_ALL_ONLINE },
+       { 0x338a00, 1, RI_ALL_ONLINE },
+       { 0x338a40, 1, RI_ALL_ONLINE },
+       { 0x338a80, 1, RI_ALL_ONLINE },
+       { 0x338ac0, 1, RI_ALL_ONLINE },
+       { 0x338b00, 1, RI_ALL_ONLINE },
+       { 0x338b40, 1, RI_ALL_ONLINE },
+       { 0x338b80, 1, RI_ALL_ONLINE },
+       { 0x338bc0, 1, RI_ALL_ONLINE },
+       { 0x338c00, 1, RI_ALL_ONLINE },
+       { 0x338c40, 1, RI_ALL_ONLINE },
+       { 0x338c80, 1, RI_ALL_ONLINE },
+       { 0x338cc0, 1, RI_ALL_ONLINE },
+       { 0x338cc4, 1, RI_E2E3E3B0_ONLINE },
+       { 0x338d00, 1, RI_ALL_ONLINE },
+       { 0x338d40, 1, RI_ALL_ONLINE },
+       { 0x338d80, 1, RI_ALL_ONLINE },
+       { 0x338dc0, 1, RI_ALL_ONLINE },
+       { 0x338e00, 1, RI_ALL_ONLINE },
+       { 0x338e40, 1, RI_ALL_ONLINE },
+       { 0x338e80, 1, RI_ALL_ONLINE },
+       { 0x338e84, 1, RI_E2E3E3B0_ONLINE },
+       { 0x338ec0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x338f00, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x338f40, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x338f80, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x338fc0, 1, RI_E1HE2E3E3B0_ONLINE },
+       { 0x338fc4, 2, RI_E2E3E3B0_ONLINE },
+       { 0x338fd0, 6, RI_E2E3E3B0_ONLINE },
+       { 0x338fe8, 2, RI_E3E3B0_ONLINE },
+       { 0x339000, 1, RI_E2E3E3B0_ONLINE },
+       { 0x339040, 3, RI_E2E3E3B0_ONLINE },
+       { 0x33905c, 1, RI_E3E3B0_ONLINE },
+       { 0x339064, 1, RI_E3B0_ONLINE },
+       { 0x339080, 10, RI_E3B0_ONLINE },
+       { 0x340000, 2, RI_ALL_ONLINE },
 };
 #define REGS_COUNT                     ARRAY_SIZE(reg_addrs)
 
-static const struct reg_addr idle_addrs[] = {
-       { 0x2104, 1, RI_ALL_ONLINE }, { 0x2110, 2, RI_ALL_ONLINE },
-       { 0x211c, 8, RI_ALL_ONLINE }, { 0x2814, 1, RI_ALL_ONLINE },
-       { 0x281c, 2, RI_ALL_ONLINE }, { 0x2854, 1, RI_ALL_ONLINE },
-       { 0x285c, 1, RI_ALL_ONLINE }, { 0x3040, 1, RI_ALL_ONLINE },
-       { 0x9010, 7, RI_E2E3_ONLINE }, { 0x9030, 1, RI_E2E3_ONLINE },
-       { 0x9068, 16, RI_E2E3_ONLINE }, { 0x9230, 2, RI_E2E3_ONLINE },
-       { 0x9244, 1, RI_E2E3_ONLINE }, { 0x9298, 1, RI_E2E3_ONLINE },
-       { 0x92a8, 1, RI_E2E3_ONLINE }, { 0xa38c, 1, RI_ALL_ONLINE },
-       { 0xa3c4, 1, RI_E1HE2E3_ONLINE }, { 0xa404, 3, RI_ALL_ONLINE },
-       { 0xa42c, 12, RI_ALL_ONLINE }, { 0xa600, 5, RI_E1HE2E3_ONLINE },
-       { 0xa618, 1, RI_E1HE2E3_ONLINE }, { 0xa714, 1, RI_E2E3_ONLINE },
-       { 0xa720, 1, RI_E2E3_ONLINE }, { 0xa750, 1, RI_E2E3_ONLINE },
-       { 0xc09c, 1, RI_E1E1H_ONLINE }, { 0x103b0, 1, RI_ALL_ONLINE },
-       { 0x103c0, 1, RI_ALL_ONLINE }, { 0x103d0, 1, RI_E1H_ONLINE },
-       { 0x10418, 1, RI_ALL_ONLINE }, { 0x10420, 1, RI_ALL_ONLINE },
-       { 0x10428, 1, RI_ALL_ONLINE }, { 0x10460, 1, RI_ALL_ONLINE },
-       { 0x10474, 1, RI_ALL_ONLINE }, { 0x104e0, 1, RI_ALL_ONLINE },
-       { 0x104ec, 1, RI_ALL_ONLINE }, { 0x104f8, 1, RI_ALL_ONLINE },
-       { 0x10508, 1, RI_ALL_ONLINE }, { 0x10530, 1, RI_ALL_ONLINE },
-       { 0x10538, 1, RI_ALL_ONLINE }, { 0x10548, 1, RI_ALL_ONLINE },
-       { 0x10558, 1, RI_ALL_ONLINE }, { 0x182a8, 1, RI_E2E3_ONLINE },
-       { 0x182b8, 1, RI_E2E3_ONLINE }, { 0x18308, 1, RI_E2E3_ONLINE },
-       { 0x18318, 1, RI_E2E3_ONLINE }, { 0x18338, 1, RI_E2E3_ONLINE },
-       { 0x18348, 1, RI_E2E3_ONLINE }, { 0x183bc, 1, RI_E2E3_ONLINE },
-       { 0x183cc, 1, RI_E2E3_ONLINE }, { 0x18570, 1, RI_E3_ONLINE },
-       { 0x18578, 1, RI_E3_ONLINE }, { 0x1858c, 1, RI_E3_ONLINE },
-       { 0x18594, 1, RI_E3_ONLINE }, { 0x2021c, 11, RI_ALL_ONLINE },
-       { 0x202a8, 1, RI_ALL_ONLINE }, { 0x202b8, 1, RI_ALL_ONLINE },
-       { 0x20404, 1, RI_ALL_ONLINE }, { 0x2040c, 2, RI_ALL_ONLINE },
-       { 0x2041c, 2, RI_ALL_ONLINE }, { 0x40154, 14, RI_ALL_ONLINE },
-       { 0x40198, 1, RI_ALL_ONLINE }, { 0x404ac, 1, RI_ALL_ONLINE },
-       { 0x404bc, 1, RI_ALL_ONLINE }, { 0x42290, 1, RI_ALL_ONLINE },
-       { 0x422a0, 1, RI_ALL_ONLINE }, { 0x422b0, 1, RI_ALL_ONLINE },
-       { 0x42548, 1, RI_ALL_ONLINE }, { 0x42550, 1, RI_ALL_ONLINE },
-       { 0x42558, 1, RI_ALL_ONLINE }, { 0x50160, 8, RI_ALL_ONLINE },
-       { 0x501d0, 1, RI_ALL_ONLINE }, { 0x501e0, 1, RI_ALL_ONLINE },
-       { 0x50204, 1, RI_ALL_ONLINE }, { 0x5020c, 2, RI_ALL_ONLINE },
-       { 0x5021c, 1, RI_ALL_ONLINE }, { 0x60090, 1, RI_ALL_ONLINE },
-       { 0x6011c, 1, RI_ALL_ONLINE }, { 0x6012c, 1, RI_ALL_ONLINE },
-       { 0xc101c, 1, RI_ALL_ONLINE }, { 0xc102c, 1, RI_ALL_ONLINE },
-       { 0xc2290, 1, RI_ALL_ONLINE }, { 0xc22a0, 1, RI_ALL_ONLINE },
-       { 0xc22b0, 1, RI_ALL_ONLINE }, { 0xc2548, 1, RI_ALL_ONLINE },
-       { 0xc2550, 1, RI_ALL_ONLINE }, { 0xc2558, 1, RI_ALL_ONLINE },
-       { 0xc4294, 1, RI_ALL_ONLINE }, { 0xc42a4, 1, RI_ALL_ONLINE },
-       { 0xc42b4, 1, RI_ALL_ONLINE }, { 0xc4550, 1, RI_ALL_ONLINE },
-       { 0xc4558, 1, RI_ALL_ONLINE }, { 0xc4560, 1, RI_ALL_ONLINE },
-       { 0xd016c, 8, RI_ALL_ONLINE }, { 0xd01d8, 1, RI_ALL_ONLINE },
-       { 0xd01e8, 1, RI_ALL_ONLINE }, { 0xd0204, 1, RI_ALL_ONLINE },
-       { 0xd020c, 3, RI_ALL_ONLINE }, { 0xe0154, 8, RI_ALL_ONLINE },
-       { 0xe01c8, 1, RI_ALL_ONLINE }, { 0xe01d8, 1, RI_ALL_ONLINE },
-       { 0xe0204, 1, RI_ALL_ONLINE }, { 0xe020c, 2, RI_ALL_ONLINE },
-       { 0xe021c, 2, RI_ALL_ONLINE }, { 0x101014, 1, RI_ALL_ONLINE },
-       { 0x101030, 1, RI_ALL_ONLINE }, { 0x101040, 1, RI_ALL_ONLINE },
-       { 0x102058, 1, RI_ALL_ONLINE }, { 0x102080, 16, RI_ALL_ONLINE },
-       { 0x103004, 2, RI_ALL_ONLINE }, { 0x103068, 1, RI_ALL_ONLINE },
-       { 0x103078, 1, RI_ALL_ONLINE }, { 0x103088, 1, RI_ALL_ONLINE },
-       { 0x10309c, 2, RI_E1HE2E3_ONLINE }, { 0x1030b8, 2, RI_E2E3_ONLINE },
-       { 0x1030cc, 1, RI_E2E3_ONLINE }, { 0x1030e0, 1, RI_E2E3_ONLINE },
-       { 0x104004, 1, RI_ALL_ONLINE }, { 0x104018, 1, RI_ALL_ONLINE },
-       { 0x104020, 1, RI_ALL_ONLINE }, { 0x10403c, 1, RI_ALL_ONLINE },
-       { 0x1040fc, 1, RI_ALL_ONLINE }, { 0x10410c, 1, RI_ALL_ONLINE },
-       { 0x104400, 64, RI_ALL_ONLINE }, { 0x104800, 64, RI_ALL_ONLINE },
-       { 0x105000, 256, RI_ALL_ONLINE }, { 0x108094, 1, RI_E1E1H_ONLINE },
-       { 0x1201b0, 2, RI_ALL_ONLINE }, { 0x12032c, 1, RI_ALL_ONLINE },
-       { 0x12036c, 3, RI_ALL_ONLINE }, { 0x120408, 2, RI_ALL_ONLINE },
-       { 0x120414, 15, RI_ALL_ONLINE }, { 0x120478, 2, RI_ALL_ONLINE },
-       { 0x12052c, 1, RI_ALL_ONLINE }, { 0x120564, 3, RI_ALL_ONLINE },
-       { 0x12057c, 1, RI_ALL_ONLINE }, { 0x12058c, 1, RI_ALL_ONLINE },
-       { 0x120608, 1, RI_E1HE2E3_ONLINE }, { 0x120778, 2, RI_E2E3_ONLINE },
-       { 0x120808, 3, RI_ALL_ONLINE }, { 0x120818, 1, RI_ALL_ONLINE },
-       { 0x120820, 1, RI_ALL_ONLINE }, { 0x120828, 1, RI_ALL_ONLINE },
-       { 0x120830, 1, RI_ALL_ONLINE }, { 0x120838, 1, RI_ALL_ONLINE },
-       { 0x120840, 1, RI_ALL_ONLINE }, { 0x120848, 1, RI_ALL_ONLINE },
-       { 0x120850, 1, RI_ALL_ONLINE }, { 0x120858, 1, RI_ALL_ONLINE },
-       { 0x120860, 1, RI_ALL_ONLINE }, { 0x120868, 1, RI_ALL_ONLINE },
-       { 0x120870, 1, RI_ALL_ONLINE }, { 0x120878, 1, RI_ALL_ONLINE },
-       { 0x120880, 1, RI_ALL_ONLINE }, { 0x120888, 1, RI_ALL_ONLINE },
-       { 0x120890, 1, RI_ALL_ONLINE }, { 0x120898, 1, RI_ALL_ONLINE },
-       { 0x1208a0, 1, RI_ALL_ONLINE }, { 0x1208a8, 1, RI_ALL_ONLINE },
-       { 0x1208b0, 1, RI_ALL_ONLINE }, { 0x1208b8, 1, RI_ALL_ONLINE },
-       { 0x1208c0, 1, RI_ALL_ONLINE }, { 0x1208c8, 1, RI_ALL_ONLINE },
-       { 0x1208d0, 1, RI_ALL_ONLINE }, { 0x1208d8, 1, RI_ALL_ONLINE },
-       { 0x1208e0, 1, RI_ALL_ONLINE }, { 0x1208e8, 1, RI_ALL_ONLINE },
-       { 0x1208f0, 1, RI_ALL_ONLINE }, { 0x1208f8, 1, RI_ALL_ONLINE },
-       { 0x120900, 1, RI_ALL_ONLINE }, { 0x120908, 1, RI_ALL_ONLINE },
-       { 0x130030, 1, RI_E2E3_ONLINE }, { 0x13004c, 3, RI_E2E3_ONLINE },
-       { 0x130064, 2, RI_E2E3_ONLINE }, { 0x13009c, 1, RI_E2E3_ONLINE },
-       { 0x130130, 1, RI_E2E3_ONLINE }, { 0x13016c, 1, RI_E2E3_ONLINE },
-       { 0x130300, 1, RI_E2E3_ONLINE }, { 0x130480, 1, RI_E2E3_ONLINE },
-       { 0x14005c, 2, RI_ALL_ONLINE }, { 0x1400d0, 2, RI_ALL_ONLINE },
-       { 0x1400e0, 1, RI_ALL_ONLINE }, { 0x1401c8, 1, RI_ALL_ONLINE },
-       { 0x140200, 6, RI_ALL_ONLINE }, { 0x16101c, 1, RI_ALL_ONLINE },
-       { 0x16102c, 1, RI_ALL_ONLINE }, { 0x164014, 2, RI_ALL_ONLINE },
-       { 0x1640f0, 1, RI_ALL_ONLINE }, { 0x166290, 1, RI_ALL_ONLINE },
-       { 0x1662a0, 1, RI_ALL_ONLINE }, { 0x1662b0, 1, RI_ALL_ONLINE },
-       { 0x166548, 1, RI_ALL_ONLINE }, { 0x166550, 1, RI_ALL_ONLINE },
-       { 0x166558, 1, RI_ALL_ONLINE }, { 0x168000, 1, RI_ALL_ONLINE },
-       { 0x168008, 1, RI_ALL_ONLINE }, { 0x168010, 1, RI_ALL_ONLINE },
-       { 0x168018, 1, RI_ALL_ONLINE }, { 0x168028, 2, RI_ALL_ONLINE },
-       { 0x168058, 4, RI_ALL_ONLINE }, { 0x168070, 1, RI_ALL_ONLINE },
-       { 0x168238, 1, RI_ALL_ONLINE }, { 0x1682d0, 2, RI_ALL_ONLINE },
-       { 0x1682e0, 1, RI_ALL_ONLINE }, { 0x168300, 2, RI_E1E1H_ONLINE },
-       { 0x168308, 65, RI_ALL_ONLINE }, { 0x168410, 2, RI_ALL_ONLINE },
-       { 0x168438, 1, RI_ALL_ONLINE }, { 0x168448, 1, RI_ALL_ONLINE },
-       { 0x168a00, 128, RI_ALL_ONLINE }, { 0x16e200, 128, RI_E1H_ONLINE },
-       { 0x16e404, 2, RI_E1H_ONLINE }, { 0x16e584, 64, RI_E1H_ONLINE },
-       { 0x16e684, 2, RI_E1HE2E3_ONLINE }, { 0x16e68c, 4, RI_E1H_ONLINE },
-       { 0x16e6fc, 4, RI_E2E3_ONLINE }, { 0x1700a4, 1, RI_ALL_ONLINE },
-       { 0x1700ac, 2, RI_ALL_ONLINE }, { 0x1700c0, 1, RI_ALL_ONLINE },
-       { 0x170174, 1, RI_ALL_ONLINE }, { 0x170184, 1, RI_ALL_ONLINE },
-       { 0x1800f4, 1, RI_ALL_ONLINE }, { 0x180104, 1, RI_ALL_ONLINE },
-       { 0x180114, 1, RI_ALL_ONLINE }, { 0x180124, 1, RI_ALL_ONLINE },
-       { 0x18026c, 1, RI_ALL_ONLINE }, { 0x1802a0, 1, RI_ALL_ONLINE },
-       { 0x1b8000, 1, RI_ALL_ONLINE }, { 0x1b8040, 1, RI_ALL_ONLINE },
-       { 0x1b8080, 1, RI_ALL_ONLINE }, { 0x1b80c0, 1, RI_ALL_ONLINE },
-       { 0x200104, 1, RI_ALL_ONLINE }, { 0x200114, 1, RI_ALL_ONLINE },
-       { 0x200124, 1, RI_ALL_ONLINE }, { 0x200134, 1, RI_ALL_ONLINE },
-       { 0x20026c, 1, RI_ALL_ONLINE }, { 0x2002a0, 1, RI_ALL_ONLINE },
-       { 0x238000, 1, RI_ALL_ONLINE }, { 0x238040, 1, RI_ALL_ONLINE },
-       { 0x238080, 1, RI_ALL_ONLINE }, { 0x2380c0, 1, RI_ALL_ONLINE },
-       { 0x280104, 1, RI_ALL_ONLINE }, { 0x280114, 1, RI_ALL_ONLINE },
-       { 0x280124, 1, RI_ALL_ONLINE }, { 0x280134, 1, RI_ALL_ONLINE },
-       { 0x28026c, 1, RI_ALL_ONLINE }, { 0x2802a0, 1, RI_ALL_ONLINE },
-       { 0x2b8000, 1, RI_ALL_ONLINE }, { 0x2b8040, 1, RI_ALL_ONLINE },
-       { 0x2b8080, 1, RI_ALL_ONLINE }, { 0x300104, 1, RI_ALL_ONLINE },
-       { 0x300114, 1, RI_ALL_ONLINE }, { 0x300124, 1, RI_ALL_ONLINE },
-       { 0x300134, 1, RI_ALL_ONLINE }, { 0x30026c, 1, RI_ALL_ONLINE },
-       { 0x3002a0, 1, RI_ALL_ONLINE }, { 0x338000, 1, RI_ALL_ONLINE },
-       { 0x338040, 1, RI_ALL_ONLINE }, { 0x338080, 1, RI_ALL_ONLINE },
-       { 0x3380c0, 1, RI_ALL_ONLINE }
-};
-#define IDLE_REGS_COUNT                        ARRAY_SIZE(idle_addrs)
-
-static const u32 read_reg_e1_0[] = { 0x1b1000 };
-#define WREGS_COUNT_E1                 ARRAY_SIZE(read_reg_e1_0)
-
-static const struct wreg_addr wreg_addrs_e1[WREGS_COUNT_E1] = {
-       { 0x1b0c00, 192, 1, read_reg_e1_0, RI_E1_OFFLINE }
-};
-
-static const u32 read_reg_e1h_0[] = { 0x1b1040, 0x1b1000 };
-#define WREGS_COUNT_E1H                        ARRAY_SIZE(read_reg_e1h_0)
-
-static const struct wreg_addr wreg_addrs_e1h[WREGS_COUNT_E1H] = {
-       { 0x1b0c00, 256, 2, read_reg_e1h_0, RI_E1H_OFFLINE }
-};
-
-static const u32 read_reg_e2_0[] = { 0x1b1040, 0x1b1000 };
-#define WREGS_COUNT_E2                 ARRAY_SIZE(read_reg_e2_0)
-
-static const struct wreg_addr wreg_addrs_e2[WREGS_COUNT_E2] = {
-       { 0x1b0c00, 128, 2, read_reg_e2_0, RI_E2_OFFLINE }
-};
-
-static const u32 read_reg_e3_0[] = { 0x1b1040, 0x1b1000 };
-#define WREGS_COUNT_E3                 ARRAY_SIZE(read_reg_e3_0)
-
-static const struct wreg_addr wreg_addrs_e3[WREGS_COUNT_E3] = {
-       { 0x1b0c00, 128, 2, read_reg_e3_0, RI_E3_OFFLINE } };
-
-static const struct dump_sign dump_sign_all = { 0x4dbe9fca, 0x60011, 0x3a };
-
-static const u32 timer_status_regs_e1[] = { 0x164014, 0x164018 };
-#define TIMER_REGS_COUNT_E1            ARRAY_SIZE(timer_status_regs_e1)
-
-static const u32 timer_scan_regs_e1[TIMER_REGS_COUNT_E1] = {
-       0x1640d0, 0x1640d4 };
-
-static const u32 timer_status_regs_e1h[] = { 0x164014, 0x164018 };
-#define TIMER_REGS_COUNT_E1H           ARRAY_SIZE(timer_status_regs_e1h)
-
-static const u32 timer_scan_regs_e1h[TIMER_REGS_COUNT_E1H] = {
-       0x1640d0, 0x1640d4 };
-
-static const u32 timer_status_regs_e2[] = { 0x164014, 0x164018 };
-#define TIMER_REGS_COUNT_E2            ARRAY_SIZE(timer_status_regs_e2)
-
-static const u32 timer_scan_regs_e2[TIMER_REGS_COUNT_E2] = {
-       0x1640d0, 0x1640d4 };
-
-static const u32 timer_status_regs_e3[] = { 0x164014, 0x164018 };
-#define TIMER_REGS_COUNT_E3            ARRAY_SIZE(timer_status_regs_e3)
-
-static const u32 timer_scan_regs_e3[TIMER_REGS_COUNT_E3] = {
-       0x1640d0, 0x1640d4 };
-
-#define PAGE_MODE_VALUES_E1 0
-
-#define PAGE_READ_REGS_E1 0
-
-#define PAGE_WRITE_REGS_E1 0
-
-static const u32 page_vals_e1[] = { 0 };
-
-static const u32 page_write_regs_e1[] = { 0 };
-
-static const struct reg_addr page_read_regs_e1[] = {
-       { 0x0, 0, RI_E1_ONLINE } };
-
-#define PAGE_MODE_VALUES_E1H 0
-
-#define PAGE_READ_REGS_E1H 0
-
-#define PAGE_WRITE_REGS_E1H 0
-
-static const u32 page_vals_e1h[] = { 0 };
-
-static const u32 page_write_regs_e1h[] = { 0 };
-
-static const struct reg_addr page_read_regs_e1h[] = {
-       { 0x0, 0, RI_E1H_ONLINE } };
+static const struct dump_sign dump_sign_all = { 0x4e23fde1, 0x70017, 0x3a };
 
 static const u32 page_vals_e2[] = { 0, 128 };
 #define PAGE_MODE_VALUES_E2            ARRAY_SIZE(page_vals_e2)
@@ -836,7 +1150,7 @@ static const u32 page_write_regs_e3[] = { 328476 };
 #define PAGE_WRITE_REGS_E3             ARRAY_SIZE(page_write_regs_e3)
 
 static const struct reg_addr page_read_regs_e3[] = {
-       { 0x58000, 4608, RI_E3_ONLINE } };
+       { 0x58000, 4608, RI_E3E3B0_ONLINE } };
 #define PAGE_READ_REGS_E3              ARRAY_SIZE(page_read_regs_e3)
 
 #endif /* BNX2X_DUMP_H */
index eda0f7b82c540055df44b754e8a7f30e995c409f..221863059dae850e96d824e8eb4994ea2a93923d 100644 (file)
@@ -500,78 +500,179 @@ static int bnx2x_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
 #define IS_E1_ONLINE(info)     (((info) & RI_E1_ONLINE) == RI_E1_ONLINE)
 #define IS_E1H_ONLINE(info)    (((info) & RI_E1H_ONLINE) == RI_E1H_ONLINE)
 #define IS_E2_ONLINE(info)     (((info) & RI_E2_ONLINE) == RI_E2_ONLINE)
+#define IS_E3_ONLINE(info)     (((info) & RI_E3_ONLINE) == RI_E3_ONLINE)
+#define IS_E3B0_ONLINE(info)   (((info) & RI_E3B0_ONLINE) == RI_E3B0_ONLINE)
+
+static inline bool bnx2x_is_reg_online(struct bnx2x *bp,
+                                      const struct reg_addr *reg_info)
+{
+       if (CHIP_IS_E1(bp))
+               return IS_E1_ONLINE(reg_info->info);
+       else if (CHIP_IS_E1H(bp))
+               return IS_E1H_ONLINE(reg_info->info);
+       else if (CHIP_IS_E2(bp))
+               return IS_E2_ONLINE(reg_info->info);
+       else if (CHIP_IS_E3A0(bp))
+               return IS_E3_ONLINE(reg_info->info);
+       else if (CHIP_IS_E3B0(bp))
+               return IS_E3B0_ONLINE(reg_info->info);
+       else
+               return false;
+}
+
+/******* Paged registers info selectors ********/
+static inline const u32 *__bnx2x_get_page_addr_ar(struct bnx2x *bp)
+{
+       if (CHIP_IS_E2(bp))
+               return page_vals_e2;
+       else if (CHIP_IS_E3(bp))
+               return page_vals_e3;
+       else
+               return NULL;
+}
+
+static inline u32 __bnx2x_get_page_reg_num(struct bnx2x *bp)
+{
+       if (CHIP_IS_E2(bp))
+               return PAGE_MODE_VALUES_E2;
+       else if (CHIP_IS_E3(bp))
+               return PAGE_MODE_VALUES_E3;
+       else
+               return 0;
+}
+
+static inline const u32 *__bnx2x_get_page_write_ar(struct bnx2x *bp)
+{
+       if (CHIP_IS_E2(bp))
+               return page_write_regs_e2;
+       else if (CHIP_IS_E3(bp))
+               return page_write_regs_e3;
+       else
+               return NULL;
+}
+
+static inline u32 __bnx2x_get_page_write_num(struct bnx2x *bp)
+{
+       if (CHIP_IS_E2(bp))
+               return PAGE_WRITE_REGS_E2;
+       else if (CHIP_IS_E3(bp))
+               return PAGE_WRITE_REGS_E3;
+       else
+               return 0;
+}
+
+static inline const struct reg_addr *__bnx2x_get_page_read_ar(struct bnx2x *bp)
+{
+       if (CHIP_IS_E2(bp))
+               return page_read_regs_e2;
+       else if (CHIP_IS_E3(bp))
+               return page_read_regs_e3;
+       else
+               return NULL;
+}
+
+static inline u32 __bnx2x_get_page_read_num(struct bnx2x *bp)
+{
+       if (CHIP_IS_E2(bp))
+               return PAGE_READ_REGS_E2;
+       else if (CHIP_IS_E3(bp))
+               return PAGE_READ_REGS_E3;
+       else
+               return 0;
+}
+
+static inline int __bnx2x_get_regs_len(struct bnx2x *bp)
+{
+       int num_pages = __bnx2x_get_page_reg_num(bp);
+       int page_write_num = __bnx2x_get_page_write_num(bp);
+       const struct reg_addr *page_read_addr = __bnx2x_get_page_read_ar(bp);
+       int page_read_num = __bnx2x_get_page_read_num(bp);
+       int regdump_len = 0;
+       int i, j, k;
+
+       for (i = 0; i < REGS_COUNT; i++)
+               if (bnx2x_is_reg_online(bp, &reg_addrs[i]))
+                       regdump_len += reg_addrs[i].size;
+
+       for (i = 0; i < num_pages; i++)
+               for (j = 0; j < page_write_num; j++)
+                       for (k = 0; k < page_read_num; k++)
+                               if (bnx2x_is_reg_online(bp, &page_read_addr[k]))
+                                       regdump_len += page_read_addr[k].size;
+
+       return regdump_len;
+}
 
 static int bnx2x_get_regs_len(struct net_device *dev)
 {
        struct bnx2x *bp = netdev_priv(dev);
        int regdump_len = 0;
-       int i, j, k;
 
-       if (CHIP_IS_E1(bp)) {
-               for (i = 0; i < REGS_COUNT; i++)
-                       if (IS_E1_ONLINE(reg_addrs[i].info))
-                               regdump_len += reg_addrs[i].size;
-
-               for (i = 0; i < WREGS_COUNT_E1; i++)
-                       if (IS_E1_ONLINE(wreg_addrs_e1[i].info))
-                               regdump_len += wreg_addrs_e1[i].size *
-                                       (1 + wreg_addrs_e1[i].read_regs_count);
-
-       } else if (CHIP_IS_E1H(bp)) {
-               for (i = 0; i < REGS_COUNT; i++)
-                       if (IS_E1H_ONLINE(reg_addrs[i].info))
-                               regdump_len += reg_addrs[i].size;
-
-               for (i = 0; i < WREGS_COUNT_E1H; i++)
-                       if (IS_E1H_ONLINE(wreg_addrs_e1h[i].info))
-                               regdump_len += wreg_addrs_e1h[i].size *
-                                       (1 + wreg_addrs_e1h[i].read_regs_count);
-       } else if (!CHIP_IS_E1x(bp)) {
-               for (i = 0; i < REGS_COUNT; i++)
-                       if (IS_E2_ONLINE(reg_addrs[i].info))
-                               regdump_len += reg_addrs[i].size;
-
-               for (i = 0; i < WREGS_COUNT_E2; i++)
-                       if (IS_E2_ONLINE(wreg_addrs_e2[i].info))
-                               regdump_len += wreg_addrs_e2[i].size *
-                                       (1 + wreg_addrs_e2[i].read_regs_count);
-
-               for (i = 0; i < PAGE_MODE_VALUES_E2; i++)
-                       for (j = 0; j < PAGE_WRITE_REGS_E2; j++) {
-                               for (k = 0; k < PAGE_READ_REGS_E2; k++)
-                                       if (IS_E2_ONLINE(page_read_regs_e2[k].
-                                                        info))
-                                               regdump_len +=
-                                               page_read_regs_e2[k].size;
-                       }
-       }
+       regdump_len = __bnx2x_get_regs_len(bp);
        regdump_len *= 4;
        regdump_len += sizeof(struct dump_hdr);
 
        return regdump_len;
 }
 
-static inline void bnx2x_read_pages_regs_e2(struct bnx2x *bp, u32 *p)
+/**
+ * bnx2x_read_pages_regs - read "paged" registers
+ *
+ * @bp         device handle
+ * @p          output buffer
+ *
+ * Reads "paged" memories: memories that may only be read by first writing to a
+ * specific address ("write address") and then reading from a specific address
+ * ("read address"). There may be more than one write address per "page" and
+ * more than one read address per write address.
+ */
+static inline void bnx2x_read_pages_regs(struct bnx2x *bp, u32 *p)
 {
        u32 i, j, k, n;
-
-       for (i = 0; i < PAGE_MODE_VALUES_E2; i++) {
-               for (j = 0; j < PAGE_WRITE_REGS_E2; j++) {
-                       REG_WR(bp, page_write_regs_e2[j], page_vals_e2[i]);
-                       for (k = 0; k < PAGE_READ_REGS_E2; k++)
-                               if (IS_E2_ONLINE(page_read_regs_e2[k].info))
+       /* addresses of the paged registers */
+       const u32 *page_addr = __bnx2x_get_page_addr_ar(bp);
+       /* number of paged registers */
+       int num_pages = __bnx2x_get_page_reg_num(bp);
+       /* write addresses */
+       const u32 *write_addr = __bnx2x_get_page_write_ar(bp);
+       /* number of write addresses */
+       int write_num = __bnx2x_get_page_write_num(bp);
+       /* read addresses info */
+       const struct reg_addr *read_addr = __bnx2x_get_page_read_ar(bp);
+       /* number of read addresses */
+       int read_num = __bnx2x_get_page_read_num(bp);
+
+       for (i = 0; i < num_pages; i++) {
+               for (j = 0; j < write_num; j++) {
+                       REG_WR(bp, write_addr[j], page_addr[i]);
+                       for (k = 0; k < read_num; k++)
+                               if (bnx2x_is_reg_online(bp, &read_addr[k]))
                                        for (n = 0; n <
-                                             page_read_regs_e2[k].size; n++)
+                                             read_addr[k].size; n++)
                                                *p++ = REG_RD(bp,
-                                       page_read_regs_e2[k].addr + n*4);
+                                                      read_addr[k].addr + n*4);
                }
        }
 }
 
+static inline void __bnx2x_get_regs(struct bnx2x *bp, u32 *p)
+{
+       u32 i, j;
+
+       /* Read the regular registers */
+       for (i = 0; i < REGS_COUNT; i++)
+               if (bnx2x_is_reg_online(bp, &reg_addrs[i]))
+                       for (j = 0; j < reg_addrs[i].size; j++)
+                               *p++ = REG_RD(bp, reg_addrs[i].addr + j*4);
+
+       /* Read "paged" registes */
+       bnx2x_read_pages_regs(bp, p);
+}
+
 static void bnx2x_get_regs(struct net_device *dev,
                           struct ethtool_regs *regs, void *_p)
 {
-       u32 *p = _p, i, j;
+       u32 *p = _p;
        struct bnx2x *bp = netdev_priv(dev);
        struct dump_hdr dump_hdr = {0};
 
@@ -605,33 +706,9 @@ static void bnx2x_get_regs(struct net_device *dev,
        memcpy(p, &dump_hdr, sizeof(struct dump_hdr));
        p += dump_hdr.hdr_size + 1;
 
-       if (CHIP_IS_E1(bp)) {
-               for (i = 0; i < REGS_COUNT; i++)
-                       if (IS_E1_ONLINE(reg_addrs[i].info))
-                               for (j = 0; j < reg_addrs[i].size; j++)
-                                       *p++ = REG_RD(bp,
-                                                     reg_addrs[i].addr + j*4);
-
-       } else if (CHIP_IS_E1H(bp)) {
-               for (i = 0; i < REGS_COUNT; i++)
-                       if (IS_E1H_ONLINE(reg_addrs[i].info))
-                               for (j = 0; j < reg_addrs[i].size; j++)
-                                       *p++ = REG_RD(bp,
-                                                     reg_addrs[i].addr + j*4);
-
-       } else if (!CHIP_IS_E1x(bp)) {
-               for (i = 0; i < REGS_COUNT; i++)
-                       if (IS_E2_ONLINE(reg_addrs[i].info))
-                               for (j = 0; j < reg_addrs[i].size; j++)
-                                       *p++ = REG_RD(bp,
-                                             reg_addrs[i].addr + j*4);
-
-               if (CHIP_IS_E2(bp))
-                       bnx2x_read_pages_regs_e2(bp, p);
-               else
-                       /* E3 paged registers read is unimplemented yet */
-                       WARN_ON(1);
-       }
+       /* Actually read the registers */
+       __bnx2x_get_regs(bp, p);
+
        /* Re-enable parity attentions */
        bnx2x_clear_blocks_parity(bp);
        bnx2x_enable_blocks_parity(bp);