diff --git a/target/linux/ath79/dts/qca9563_netgear_wndr.dtsi b/target/linux/ath79/dts/qca9563_netgear_wndr.dtsi index a51fb1964b..799297f4e1 100644 --- a/target/linux/ath79/dts/qca9563_netgear_wndr.dtsi +++ b/target/linux/ath79/dts/qca9563_netgear_wndr.dtsi @@ -90,6 +90,22 @@ linux,default-trigger = "phy1tpt"; }; }; + + ubi-concat { + compatible = "mtd-concat"; + devices = <&ubiconcat0 &ubiconcat1>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "ubi"; + reg = <0x0 0x0>; + }; + }; + }; }; &spi { @@ -165,10 +181,20 @@ reg = <0x0 0x400000>; }; - partition@400000 { - label = "ubi"; - reg = <0x400000 0x7c00000>; + ubiconcat0: partition@400000 { + label = "ubiconcat0"; + reg = <0x400000 0x5c00000>; }; + + ubiconcat1: partition@6020000 { + label = "ubiconcat1"; + reg = <0x6020000 0x1f60000>; + }; + /* + * U-boot always unconditionally marks block 768, 1020 - 1023 as + * bad blocks on each boot. To avoid conflicts with the nand + * driver, manually skip them. + */ }; }; }; diff --git a/target/linux/ath79/image/nand.mk b/target/linux/ath79/image/nand.mk index 884a9da756..e4ee555451 100644 --- a/target/linux/ath79/image/nand.mk +++ b/target/linux/ath79/image/nand.mk @@ -373,6 +373,9 @@ TARGET_DEVICES += netgear_wndr4300tn define Device/netgear_wndr4300-v2 SOC := qca9563 + DEVICE_COMPAT_VERSION := 1.1 + DEVICE_COMPAT_MESSAGE := Partition table has been changed to fix the \ + first reboot issue. Please reflash factory image with nmrp or tftp. DEVICE_MODEL := WNDR4300 DEVICE_VARIANT := v2 UIMAGE_MAGIC := 0x27051956 @@ -384,6 +387,9 @@ TARGET_DEVICES += netgear_wndr4300-v2 define Device/netgear_wndr4500-v3 SOC := qca9563 + DEVICE_COMPAT_VERSION := 1.1 + DEVICE_COMPAT_MESSAGE := Partition table has been changed to fix the \ + first reboot issue. Please reflash factory image with nmrp or tftp. DEVICE_MODEL := WNDR4500 DEVICE_VARIANT := v3 UIMAGE_MAGIC := 0x27051956 diff --git a/target/linux/ath79/nand/base-files/etc/board.d/05_compat-version b/target/linux/ath79/nand/base-files/etc/board.d/05_compat-version new file mode 100644 index 0000000000..238927aa7b --- /dev/null +++ b/target/linux/ath79/nand/base-files/etc/board.d/05_compat-version @@ -0,0 +1,15 @@ +. /lib/functions.sh +. /lib/functions/uci-defaults.sh + +board_config_update + +case "$(board_name)" in + netgear,wndr4300-v2|\ + netgear,wndr4500-v3) + ucidef_set_compat_version "1.1" + ;; +esac + +board_config_flush + +exit 0