aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThibaut VARÈNE <hacks@slashdirt.org>2018-08-04 15:44:26 +0200
committerRafał Miłecki <rafal@milecki.pl>2018-08-24 11:53:51 +0200
commitbbe2cf657ca72119288a441ca3337a503aa17f80 (patch)
tree4406b7fddf48d284d270e5f02b9d935ac2315d73
parentb90cad2c2e61720b72a9cdd6317474cabc4962ec (diff)
downloadupstream-bbe2cf657ca72119288a441ca3337a503aa17f80.tar.gz
upstream-bbe2cf657ca72119288a441ca3337a503aa17f80.tar.bz2
upstream-bbe2cf657ca72119288a441ca3337a503aa17f80.zip
ramips: fix RBM11G partitioning
This patch improves faf64056ddd46992a75b1e277d94541c7251035c by correcting the partition scheme for the "RouterBoot" section of the flash. The partition scheme initially submitted is incorrect and does not reflect the actual flash structure. The "RouterBoot" section (name matching OEM) is subdivided in several static segments, as they are on ar71xx RB devices albeit with different offsets and sizes. The naming convention from ar71xx has been preserved, except for the bootloaders which are named "bootloader1" and "bootloader2" to avoid confusion with the master "RouterBoot" partition. The preferred 'fixed-partitions' DTS node syntax is used, with nesting support as introduced in 2a598bbaa3. "partition" is used for node names, with associated "label" to match policy set by 6dd94c2781. Leave a note in DTS to explain how the original author selected the SPI speed. Tested-by: Tobias Schramm <tobleminer@gmail.com> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> Reviewed-by: Rafał Miłecki <rafal@milecki.pl>
-rw-r--r--target/linux/ramips/dts/RBM11G.dts45
1 files changed, 36 insertions, 9 deletions
diff --git a/target/linux/ramips/dts/RBM11G.dts b/target/linux/ramips/dts/RBM11G.dts
index 800f230d95..41dabdd1a3 100644
--- a/target/linux/ramips/dts/RBM11G.dts
+++ b/target/linux/ramips/dts/RBM11G.dts
@@ -86,6 +86,7 @@
w25q128@0 {
compatible = "jedec,spi-nor";
reg = <0>;
+ // XXX empiric value to obtain actual 10MHz SCK at the chip
spi-max-frequency = <3125000>;
partitions {
@@ -94,15 +95,41 @@
#size-cells = <1>;
partition@0 {
- label = "routerboot";
- reg = <0x000000 0x00F000>;
- read-only;
- };
-
- factory: partition@f000 {
- label = "factory";
- reg = <0x00F000 0x031000>;
+ label = "RouterBoot";
+ reg = <0x0 0x40000>;
read-only;
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "bootloader1";
+ reg = <0x0 0xf000>;
+ read-only;
+ };
+
+ hard_config: partition@f000 {
+ label = "hard_config";
+ reg = <0xf000 0x1000>;
+ read-only;
+ };
+
+ partition@10000 {
+ label = "bootloader2";
+ reg = <0x10000 0xf000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "soft_config";
+ reg = <0x20000 0x1000>;
+ };
+
+ partition@30000 {
+ label = "bios";
+ reg = <0x30000 0x1000>;
+ read-only;
+ };
};
partition@40000 {
@@ -114,7 +141,7 @@
};
&ethernet {
- mtd-mac-address = <&factory 0x0010>;
+ mtd-mac-address = <&hard_config 0x0010>;
mtd-mac-address-increment = <1>;
};