ath79: modify mtd partitions for Buffalo BHR-4GRV2
authorINAGAKI Hiroshi <musashino.open@gmail.com>
Tue, 6 Nov 2018 13:37:43 +0000 (22:37 +0900)
committerJohn Crispin <john@phrozen.org>
Mon, 26 Nov 2018 11:28:17 +0000 (12:28 +0100)
commit879f2ef7c0720c49f0911a6a3a7f8fe4111c2acb
tree32df454ec54dcb2f9df409963fdea85ed9f9ff4e
parentd6e92b18d9ab853a34313a0f78f98b763dc9eba4
ath79: modify mtd partitions for Buffalo BHR-4GRV2

This commit modifies mtd partitions define for Buffalo BHR-4GRV2 and
move it to generic subtarget.

In Buffalo BHR-4GRV2, "kernel" partition is located behined "rootfs"
partition in the stock firmware. This causes the size of the kernel
to be limited by the fixed value.

0x50000                       0xe80000        0xff0000
  +-------------------------------+--------------+
  |            rootfs             |    kernel    |
  |           (14528k)            |    (1472k)   |
  +-------------------------------+--------------+

After ar71xx was updated to Kernel 4.14, the kernel size of BHR-4GRV2
exceeded the limit, and it breaks builds on official buildbot.
Since this issue was also confirmed in ath79, I modified the mtd
partitions to get rid of that limitation.

0x50000                                       0xff0000
  +----------------------------------------------+
  |                   firmware                   |
  |                   (16000k)                   |
  +----------------------------------------------+

However, this commit breaks compatibility with ar71xx firmware, so I
dropped "SUPPORTED_DEVICES += bhr-4grv2".

This commit requires new flash instruction instead of the old one.

Flash instruction using initramfs image:

1. Connect the computer to the LAN port of BHR-4GRV2
2. Set the IP address of the computer to 192.168.12.10
3. Rename the OpenWrt initramfs image to
"bhr4grv2-uImage-initramfs-gzip.bin" and place it into the TFTP
directory
4. Start the tftp server on the computer
5. While holding down the "ECO" button, connect power cable to
BHR-4GRV2 and turn on it
6. Flashing (orange) diag LED and release the finger from the button,
BHR-4GRV2 downloads the intiramfs image from TFTP server and boot
with it
7. On the initramfs image, create "/etc/fw_env.config" file with
following contents
  /dev/mtd1 0x0 0x10000 0x10000
8. Execute following commands to add environment variables for
u-boot
  fw_setenv ipaddr 192.168.12.1
  fw_setenv serverip 192.168.12.10
  fw_setenv ethaddr 00:aa:bb:cc:dd:ee
  fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
9. Perform sysupgrade with squashfs-sysupgrade image
10. Wait ~150 seconds to complete flashing

And this commit includes small fix; BHR-4GRV2 has QCA9557 as a SoC,
not QCA9558.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
include/image-commands.mk
target/linux/ar71xx/image/tiny.mk
target/linux/ath79/base-files/lib/upgrade/platform.sh
target/linux/ath79/dts/qca9557_buffalo_bhr-4grv2.dts [new file with mode: 0644]
target/linux/ath79/dts/qca9558_buffalo_bhr-4grv2.dts [deleted file]
target/linux/ath79/image/generic.mk
target/linux/ath79/image/tiny.mk