ppc40x: add sysupgrade support
Cc: backfire@openwrt.org SVN-Revision: 20821
This commit is contained in:
parent
bc4cd8c850
commit
185965e128
5 changed files with 110 additions and 15 deletions
11
target/linux/ppc40x/base-files/lib/ppc40x.sh
Executable file
11
target/linux/ppc40x/base-files/lib/ppc40x.sh
Executable file
|
@ -0,0 +1,11 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2010 OpenWrt.org
|
||||
#
|
||||
|
||||
ppc40x_board_name() {
|
||||
local model
|
||||
|
||||
model=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /model/ {print $2}' /proc/cpuinfo)
|
||||
echo $model
|
||||
}
|
38
target/linux/ppc40x/base-files/lib/upgrade/platform.sh
Normal file
38
target/linux/ppc40x/base-files/lib/upgrade/platform.sh
Normal file
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# Copyright (C) 2010 OpenWrt.org
|
||||
#
|
||||
|
||||
. /lib/ppc40x.sh
|
||||
|
||||
PART_NAME=firmware
|
||||
RAMFS_COPY_DATA=/lib/ppc40x.sh
|
||||
|
||||
platform_check_image() {
|
||||
local board=$(ppc40x_board_name)
|
||||
local magic="$(get_magic_word "$1")"
|
||||
|
||||
[ "$ARGC" -gt 1 ] && return 1
|
||||
|
||||
case "$board" in
|
||||
kilauea | openrb | magicbox)
|
||||
[ "$magic" != "2705" ] && {
|
||||
echo "Invalid image type."
|
||||
return 1
|
||||
}
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
|
||||
echo "Sysupgrade is not yet supported on $board."
|
||||
return 1
|
||||
}
|
||||
|
||||
platform_do_upgrade() {
|
||||
local board=$(ppc40x_board_name)
|
||||
|
||||
case "$board" in
|
||||
*)
|
||||
default_do_upgrade "$ARGV"
|
||||
;;
|
||||
esac
|
||||
}
|
|
@ -93,7 +93,7 @@
|
|||
+}
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/boot/dts/magicbox.dts
|
||||
@@ -0,0 +1,281 @@
|
||||
@@ -0,0 +1,285 @@
|
||||
+/*
|
||||
+ * Device Tree Source for Magicbox boards
|
||||
+ *
|
||||
|
@ -316,19 +316,23 @@
|
|||
+ reg = <0x00000000 0xffc00000 0x00400000>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+ partition@0 {
|
||||
+ partition0@0 {
|
||||
+ label = "linux";
|
||||
+ reg = <0x0 0x140000>;
|
||||
+ };
|
||||
+ partition@120000 {
|
||||
+ partition1@120000 {
|
||||
+ label = "rootfs";
|
||||
+ reg = <0x140000 0x680000>;
|
||||
+ };
|
||||
+ partition@7c0000 {
|
||||
+ partition2@7c0000 {
|
||||
+ label = "u-boot";
|
||||
+ reg = <0x7c0000 0x30000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+ partition3@0 {
|
||||
+ label = "firmware";
|
||||
+ reg = <0x0 0x7c0000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
|
|
|
@ -74,7 +74,7 @@
|
|||
+}
|
||||
--- /dev/null
|
||||
+++ b/arch/powerpc/boot/dts/openrb.dts
|
||||
@@ -0,0 +1,276 @@
|
||||
@@ -0,0 +1,280 @@
|
||||
+/*
|
||||
+ * Device Tree Source for OpenRB boards
|
||||
+ *
|
||||
|
@ -292,19 +292,23 @@
|
|||
+ reg = <0x00000000 0xff800000 0x00800000>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+ partition@0 {
|
||||
+ partition0@0 {
|
||||
+ label = "linux";
|
||||
+ reg = <0x0 0x140000>;
|
||||
+ };
|
||||
+ partition@120000 {
|
||||
+ partition1@120000 {
|
||||
+ label = "rootfs";
|
||||
+ reg = <0x140000 0x680000>;
|
||||
+ };
|
||||
+ partition@7c0000 {
|
||||
+ partition2@7c0000 {
|
||||
+ label = "u-boot";
|
||||
+ reg = <0x7c0000 0x30000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+ partition3@0 {
|
||||
+ label = "firmware";
|
||||
+ reg = <0x0 0x7c0000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
|
|
|
@ -1,17 +1,55 @@
|
|||
--- a/arch/powerpc/boot/dts/kilauea.dts
|
||||
+++ b/arch/powerpc/boot/dts/kilauea.dts
|
||||
@@ -157,12 +157,8 @@
|
||||
@@ -93,8 +93,8 @@
|
||||
compatible = "ibm,sdram-405ex", "ibm,sdram-4xx-ddr2";
|
||||
dcr-reg = <0x010 0x002>;
|
||||
interrupt-parent = <&UIC2>;
|
||||
- interrupts = <0x5 0x4 /* ECC DED Error */
|
||||
- 0x6 0x4>; /* ECC SEC Error */
|
||||
+ interrupts = <0x5 0x4 /* ECC DED Error */
|
||||
+ 0x6 0x4>; /* ECC SEC Error */
|
||||
};
|
||||
|
||||
CRYPTO: crypto@ef700000 {
|
||||
@@ -148,30 +148,30 @@
|
||||
reg = <0x00000000 0x00000000 0x04000000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
- partition@0 {
|
||||
+ partition0@0 {
|
||||
label = "kernel";
|
||||
reg = <0x00000000 0x001e0000>;
|
||||
};
|
||||
- partition@1e0000 {
|
||||
+ partition1@1e0000 {
|
||||
label = "dtb";
|
||||
reg = <0x001e0000 0x00020000>;
|
||||
};
|
||||
partition@200000 {
|
||||
- partition@200000 {
|
||||
- label = "root";
|
||||
- reg = <0x00200000 0x00200000>;
|
||||
- };
|
||||
- partition@400000 {
|
||||
- label = "user";
|
||||
- reg = <0x00400000 0x03b60000>;
|
||||
+ partition2@200000 {
|
||||
+ label = "rootfs";
|
||||
+ reg = <0x00200000 0x03d60000>;
|
||||
};
|
||||
partition@3f60000 {
|
||||
- partition@400000 {
|
||||
- label = "user";
|
||||
- reg = <0x00400000 0x03b60000>;
|
||||
- };
|
||||
- partition@3f60000 {
|
||||
+ partition3@3f60000 {
|
||||
label = "env";
|
||||
reg = <0x03f60000 0x00040000>;
|
||||
};
|
||||
- partition@3fa0000 {
|
||||
+ partition4@3fa0000 {
|
||||
label = "u-boot";
|
||||
reg = <0x03fa0000 0x00060000>;
|
||||
};
|
||||
+ partition5@0 {
|
||||
+ label = "firmware";
|
||||
+ reg = <0x00000000 0x03f60000>;
|
||||
+ };
|
||||
};
|
||||
|
||||
ndfc@1,0 {
|
||||
|
|
Loading…
Reference in a new issue