mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-24 07:51:55 +02:00
[brcm63xx] add support for sysupgrade (#5117)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15900 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
c14e62dcee
commit
7f464dbf8c
16
target/linux/brcm63xx/base-files/lib/upgrade/platform.sh
Normal file
16
target/linux/brcm63xx/base-files/lib/upgrade/platform.sh
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
PART_NAME=linux
|
||||||
|
platform_check_image() {
|
||||||
|
[ "$ARGC" -gt 1 ] && return 1
|
||||||
|
case "$(get_magic_word "$1")" in
|
||||||
|
3600)
|
||||||
|
# 6348GW-11 boards use openwrt-96348GW-11-squashfs-cfe.bin files
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Invalid image type. Please use only .bin files"
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
# use default for platform_do_upgrade()
|
@ -45,7 +45,7 @@ static struct map_info bcm963xx_map = {
|
|||||||
|
|
||||||
static int parse_cfe_partitions( struct mtd_info *master, struct mtd_partition **pparts)
|
static int parse_cfe_partitions( struct mtd_info *master, struct mtd_partition **pparts)
|
||||||
{
|
{
|
||||||
int nrparts = 2, curpart = 0; /* CFE and NVRAM are always present. */
|
int nrparts = 3, curpart = 0; /* CFE,NVRAM and global LINUX are always present. */
|
||||||
struct bcm_tag *buf;
|
struct bcm_tag *buf;
|
||||||
struct mtd_partition *parts;
|
struct mtd_partition *parts;
|
||||||
int ret;
|
int ret;
|
||||||
@ -118,9 +118,16 @@ static int parse_cfe_partitions( struct mtd_info *master, struct mtd_partition *
|
|||||||
parts[curpart].size += sparelen;
|
parts[curpart].size += sparelen;
|
||||||
curpart++;
|
curpart++;
|
||||||
};
|
};
|
||||||
|
|
||||||
parts[curpart].name = "nvram";
|
parts[curpart].name = "nvram";
|
||||||
parts[curpart].offset = master->size - master->erasesize;
|
parts[curpart].offset = master->size - master->erasesize;
|
||||||
parts[curpart].size = master->erasesize;
|
parts[curpart].size = master->erasesize;
|
||||||
|
|
||||||
|
/* Global partition "linux" to make easy firmware upgrade */
|
||||||
|
curpart++;
|
||||||
|
parts[curpart].name = "linux";
|
||||||
|
parts[curpart].offset = parts[0].size;
|
||||||
|
parts[curpart].size = master->size - parts[0].size - parts[3].size;
|
||||||
|
|
||||||
for (i = 0; i < nrparts; i++)
|
for (i = 0; i < nrparts; i++)
|
||||||
printk(KERN_INFO PFX "Partition %d is %s offset %x and length %x\n", i, parts[i].name, parts[i].offset, parts[i].size);
|
printk(KERN_INFO PFX "Partition %d is %s offset %x and length %x\n", i, parts[i].name, parts[i].offset, parts[i].size);
|
||||||
|
Loading…
Reference in New Issue
Block a user