From 7b74b40fe927ae5d2f88dfab8e26b75207878c9d Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Wed, 27 Jun 2018 21:52:45 +0300 Subject: [PATCH] ipq806x: remove "firmware" partition definition from netgear routers Remove the "firmware" partition definition from the DTS of R7800 to fix sysupgrade. Commit 4645a6d3 defined CONFIG_MTD_SPLIT_UIMAGE_FW=y for ipq806x and that causes mtd to misbehave as additional kernel and ubi partitions are detected from inside the "firmware" partition. [ 1.111324] 0x000001480000-0x000001880000 : "kernel" [ 1.121005] 0x000001880000-0x000007900000 : "ubi" [ 1.283912] 0x000007900000-0x000008000000 : "reserve" [ 1.296407] 0x000001480000-0x000007900000 : "firmware" [ 1.468043] no rootfs found after FIT image in "firmware" [ 2.426860] 2 uimage-fw partitions found on MTD device firmware [ 2.426931] 0x000001480000-0x000001880000 : "kernel" [ 2.440420] 0x000001880000-0x000007900000 : "ubi" Both kernel and ubi are already defined in DTS, so this duplication leads into errors in sysupgrade: Writing from to kernel ... ubiattach: error!: strtoul: unable to parse the number '6 mtd10' ubiattach: error!: bad MTD device number: "6 mtd10" The partition is defined to same area as kernel+ubi, and is not needed for sysupgrade anymore. Remove it to fix things. Only tested for the R7800 but all of them should behave equal. Fixes: FS#1617 Signed-off-by: Hannu Nyman [squashed commits, add "tested on" note] Signed-off-by: Mathias Kresin --- .../files-4.14/arch/arm/boot/dts/qcom-ipq8064-d7800.dts | 5 ----- .../files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500.dts | 5 ----- .../files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500v2.dts | 5 ----- .../files-4.14/arch/arm/boot/dts/qcom-ipq8065-r7800.dts | 5 ----- 4 files changed, 20 deletions(-) diff --git a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-d7800.dts b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-d7800.dts index 027ac30821..209d513f1b 100644 --- a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-d7800.dts +++ b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-d7800.dts @@ -270,11 +270,6 @@ reg = <0x7900000 0x0700000>; read-only; }; - - firmware@1480000 { - label = "firmware"; - reg = <0x1480000 0x2000000>; - }; }; }; }; diff --git a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500.dts b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500.dts index 7a209ece12..9ce572bd89 100644 --- a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500.dts +++ b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500.dts @@ -235,11 +235,6 @@ reg = <0x3940000 0x46c0000>; read-only; }; - - firmware@1340000 { - label = "firmware"; - reg = <0x1340000 0x1a00000>; - }; }; }; }; diff --git a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500v2.dts b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500v2.dts index 089445fc3e..30bf0abd4b 100644 --- a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500v2.dts +++ b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8064-r7500v2.dts @@ -271,11 +271,6 @@ reg = <0x7900000 0x0700000>; read-only; }; - - firmware@1480000 { - label = "firmware"; - reg = <0x1480000 0x2000000>; - }; }; }; }; diff --git a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8065-r7800.dts b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8065-r7800.dts index c80f292b72..29b14df4d2 100644 --- a/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8065-r7800.dts +++ b/target/linux/ipq806x/files-4.14/arch/arm/boot/dts/qcom-ipq8065-r7800.dts @@ -327,11 +327,6 @@ reg = <0x7900000 0x0700000>; read-only; }; - - firmware@1480000 { - label = "firmware"; - reg = <0x1480000 0x6480000>; - }; }; }; };