ipq806x: increase kernel partition size for the Netgear Nighthawk X4 D7800
authorStefan Lippers-Hollmann <s.l-h@gmx.de>
Fri, 18 May 2018 01:49:27 +0000 (03:49 +0200)
committerJohn Crispin <john@phrozen.org>
Thu, 24 May 2018 15:24:31 +0000 (17:24 +0200)
Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 D7800.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Tathagata Das <tathagata@alumnux.com>
(cherry picked from commit 45b8a7c1a6415125f4fe872ec83b3d31a2fa799b)

target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-d7800.dts
target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8064-d7800.dts
target/linux/ipq806x/image/Makefile

index b7c49cc..e22a929 100644 (file)
 
                                        kernel@1480000 {
                                                label = "kernel";
-                                               reg = <0x1480000 0x0200000>;
+                                               reg = <0x1480000 0x0400000>;
                                        };
 
-                                       ubi@1680000 {
+                                       ubi@1880000 {
                                                label = "ubi";
-                                               reg = <0x1680000 0x1E00000>;
+                                               reg = <0x1880000 0x1C00000>;
                                        };
 
                                        netgear@3480000 {
index b7c49cc..e22a929 100644 (file)
 
                                        kernel@1480000 {
                                                label = "kernel";
-                                               reg = <0x1480000 0x0200000>;
+                                               reg = <0x1480000 0x0400000>;
                                        };
 
-                                       ubi@1680000 {
+                                       ubi@1880000 {
                                                label = "ubi";
-                                               reg = <0x1680000 0x1E00000>;
+                                               reg = <0x1880000 0x1C00000>;
                                        };
 
                                        netgear@3480000 {
index 8b302b6..496564d 100644 (file)
@@ -104,7 +104,7 @@ TARGET_DEVICES += linksys_ea8500
 define Device/netgear_d7800
        $(call Device/DniImage)
        DEVICE_DTS := qcom-ipq8064-d7800
-       KERNEL_SIZE := 2097152
+       KERNEL_SIZE := 4194304
        NETGEAR_BOARD_ID := D7800
        NETGEAR_HW_ID := 29764958+0+128+512+4x4+4x4
        BLOCKSIZE := 128k