#20939: Astoria ARV7519RW22 dts out of bounds of flash memory
-------------------------+------------------------
 Reporter:  howl         |      Owner:  developers
     Type:  defect       |     Status:  new
 Priority:  normal       |  Milestone:
Component:  base system  |    Version:  Trunk
 Keywords:               |
-------------------------+------------------------
 In this device flash memory bounds are 0xB0000000-0xB1FC0000 (as they are
 shown in original BRN-BOOT and with the flashed U-Boot).

 Also is possible to check this by dumping surrounding memory address:

 {{{
 arv7519rw # md 0xB1FBFF80
 b1fbff80: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbff90: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbffa0: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbffb0: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbffc0: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbffd0: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbffe0: ffffffff ffffffff ffffffff ffffffff    ................
 b1fbfff0: ffffffff 00003c00 12345678 51d7afe6    ......<..4VxQ...
 b1fc0000: 00000000 00000000 00000000 00000000    ................
 b1fc0010: 00000000 00000000 00000000 00000000    ................
 b1fc0020: 00000000 00000000 00000000 00000000    ................
 b1fc0030: 00000000 00000000 00000000 00000000    ................
 b1fc0040: 00000000 00000000 00000000 00000000    ................
 b1fc0050: 00000000 00000000 00000000 00000000    ................
 b1fc0060: 00000000 00000000 00000000 00000000    ................
 b1fc0070: 00000000 00000000 00000000 00000000    ................
 arv7519rw #
 }}}

 0xB1FC0000 is not flash memory as it's erased state is not 0xFFFFFFFF and
 b1fbfff0 is just the last address of the Boot Parameters partition in the
 original firmware.


 {{{
 Original:
   - Flash Image         0xB0000000-0xB1FC0000       32768K
     - Boot              0xB0000000-0xB0080000            |-   512K
     - Linux Image       0xB0080000-0xB1880000            |- 24576K
       - ??              0xB0080000-0xB1280000            |       |- 18432K
       - Image 0         0xB1280000-0xB1880000            |       \-  6144K
     - Image 1           0xB1880000-0xB1E80000            |-  6144K
     - Configuration     0xB1E80000-0xB1F80000            |-  1024K
     - Boot Parameters   0xB1F80000-0xB1FC0000            \-   256K

 OpenWrt:
   - Flash Image         0xB0000000-0xB1FC0000       32768K
     - uboot             0xB0000000-0xB0060000            |-   384K
     - uboot-env         0xB0060000-0xB0080000            |-   128K
     - firmware          0xB0080000-0xB1E80000            |- 30720K
       - ??              0xB0080000-0xB02164B8            |       |-
 ~1625,18K ( 1664184B)
       - rootfs          0xB02164B8-0xB1E80000            |       \-
 ~29094,82K (29793096B)
         - ??            0xB02164B8-0xB04C0000            |
 |- ~2726,82K ( 2792264B)
         - rootfs_data   0xB04C0000-0xB1E80000            |
 \-    26368K
    - dsl_fw             0xB1E80000-0xB1F80000            |-  1024K
    - boardconfig        0xB1F80000-0xB2000000            \-   512K (this
 one goes 256K beyond the flash memory limit)
 }}}

 As you can see in the original and openwrt memory partitions boardconfig
 corresponds to Boot Parameters and is 512K instead of 215K as it goes 215K
 beyound the Flash.

 This is the patch that corrects this:


 {{{
 --- a/target_linux_lantiq_dts_ARV7519RW22.dts   2015-11-18
 23:31:34.780122560 +0100
 +++ b/target_linux_lantiq_dts_ARV7519RW22.dts   2015-11-18
 23:44:16.705647525 +0100
 @@ -18,7 +18,7 @@
           nor-boot@0 {
              compatible = "lantiq,nor";
              bank-width = <2>;
 -            reg = <0 0x0 0x2000000>;
 +            reg = <0 0x0 0x1FC0000>;
              #address-cells = <1>;
              #size-cells = <1>;

 @@ -46,7 +46,7 @@

              boardconfig: partition@1f80000 {
                 label = "boardconfig";
 -               reg = <0x1f80000 0x80000>;
 +               reg = <0x1f80000 0x40000>;
                 read-only;
              };
           };
 }}}

 It's present in trunk, Chaos Calmer and Barrier Breaker.

 I have seen this thinking about repartitioning the flash in another way
 for this router to make more room for newer versions of U-Boot, as 2014.7
 doesn't fit in 3 pages and new the 4th writing it over the uboot_env area,
 but this is another issue.

--
Ticket URL: <https://dev.openwrt.org/ticket/20939>
OpenWrt <http://openwrt.org>
Opensource Wireless Router Technology
_______________________________________________
openwrt-tickets mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-tickets

Reply via email to