gluon/patches/openwrt/0011-ath79-combine-OCEDO-dual-firmware-partitions.patch
David Bauer cc854594b0 openwrt: backport combination of dual-flash partitions
Backport two patches combining dual-flash layouts of OCEDO as well as
UniFi AC boards.

The two firmware partitions are already combined on OpenWrt master to
prolong the life of these devices. It allows the device to store
firmware images up to 14 MB compared to the previous 7 MB.

The intention behind backporting these patches is to allow these devices
to have a wide update path to firmware-versions requiring this extra
space. Otherwise a device might not be able to install an upgrade which
exceeds a single firmware-partition.

For UniFi AC boards it should be noted that factory-installation will
not be possible with an image exceeding a single firmware-partition. In
this case, an older OpenWrt image that fits in a single partition and
supports writing the enlarged partition space is required.

Currently, this is not the case. As these devices are end-of-sale, this
will become less of a concern over time.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-17 06:38:53 +02:00

116 lines
3.6 KiB
Diff

From: David Bauer <mail@david-bauer.net>
Date: Tue, 15 Nov 2022 15:25:40 +0100
Subject: ath79: combine OCEDO dual firmware-partitions
In order to maximize the available space on OCEDO boards using a
dual-image partition layout, combine the two OS partitions into a single
partition.
This allows users to access more usable space for additional packages.
Don't limit the usable image size to the size of a single OS partition.
The initial installation has to be done with an older version of OpenWrt
in case the generated image exceeds the space of a single OS
partition in the future.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit eded295cd7fd53bfa5afcb67a1b91cfda0523ba6)
diff --git a/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts b/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts
index 0bbeb2b533b3fbbdcce53e094412d459ee762d85..3ecd20e2aa8fe04164cddbc84e0eb800e049c011 100644
--- a/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts
+++ b/target/linux/ath79/dts/ar9344_ocedo_raccoon.dts
@@ -91,15 +91,10 @@
};
partition@50000 {
+ /* Dual-Flash layout combined */
compatible = "denx,uimage";
label = "firmware";
- reg = <0x050000 0x740000>;
- };
-
- partition@790000 {
- label = "vendor";
- reg = <0x790000 0x740000>;
- read-only;
+ reg = <0x050000 0xe80000>;
};
partition@ed0000 {
diff --git a/target/linux/ath79/dts/qca9558_ocedo_koala.dts b/target/linux/ath79/dts/qca9558_ocedo_koala.dts
index 66f8c6589b20221edc41a2f882b28229ff8633b9..de9e1bc19c4d03707f5b921ee5e9fe7422f461bb 100644
--- a/target/linux/ath79/dts/qca9558_ocedo_koala.dts
+++ b/target/linux/ath79/dts/qca9558_ocedo_koala.dts
@@ -88,15 +88,10 @@
};
partition@50000 {
+ /* Dual-Flash layout combined */
compatible = "denx,uimage";
label = "firmware";
- reg = <0x050000 0x740000>;
- };
-
- partition@790000 {
- label = "vendor";
- reg = <0x790000 0x740000>;
- read-only;
+ reg = <0x050000 0xe80000>;
};
partition@ed0000 {
diff --git a/target/linux/ath79/dts/qca9558_ocedo_ursus.dts b/target/linux/ath79/dts/qca9558_ocedo_ursus.dts
index 2dc4c07e918c50eb522100eb7f72c8804d5ba5fb..f8b3681bb7f143a498d5cb64897af335b970c43b 100644
--- a/target/linux/ath79/dts/qca9558_ocedo_ursus.dts
+++ b/target/linux/ath79/dts/qca9558_ocedo_ursus.dts
@@ -59,15 +59,10 @@
};
partition@50000 {
+ /* Dual-Flash layout combined */
compatible = "denx,uimage";
label = "firmware";
- reg = <0x050000 0x740000>;
- };
-
- partition@790000 {
- label = "vendor";
- reg = <0x790000 0x740000>;
- read-only;
+ reg = <0x050000 0xe80000>;
};
partition@ed0000 {
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index 31d296fb62a1bb3fee4dfaba894f8339c48dd59c..deb5644ef525cf85ab7671d053d4ae6f2ee8e951 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -1797,7 +1797,7 @@ define Device/ocedo_koala
DEVICE_MODEL := Koala
DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
SUPPORTED_DEVICES += koala
- IMAGE_SIZE := 7424k
+ IMAGE_SIZE := 14848k
endef
TARGET_DEVICES += ocedo_koala
@@ -1805,7 +1805,7 @@ define Device/ocedo_raccoon
SOC := ar9344
DEVICE_VENDOR := Ocedo
DEVICE_MODEL := Raccoon
- IMAGE_SIZE := 7424k
+ IMAGE_SIZE := 14848k
endef
TARGET_DEVICES += ocedo_raccoon
@@ -1814,7 +1814,7 @@ define Device/ocedo_ursus
DEVICE_VENDOR := Ocedo
DEVICE_MODEL := Ursus
DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
- IMAGE_SIZE := 7424k
+ IMAGE_SIZE := 14848k
endef
TARGET_DEVICES += ocedo_ursus