--- a/drivers/mtd/bcm47xxpart.c +++ b/drivers/mtd/bcm47xxpart.c @@ -127,6 +127,7 @@ static int bcm47xxpart_parse(struct mtd_ int last_trx_part = -1; int possible_nvram_sizes[] = { 0x8000, 0xF000, 0x10000, }; int err; + bool found_nvram = false; /* * Some really old flashes (like AT45DB*) had smaller erasesize-s, but @@ -334,12 +335,23 @@ static int bcm47xxpart_parse(struct mtd_ if (buf[0] == NVRAM_HEADER) { bcm47xxpart_add_part(&parts[curr_part++], "nvram", master->size - blocksize, 0); + found_nvram = true; break; } } kfree(buf); + if (!found_nvram) { + pr_err("can not find a nvram partition reserve last block\n"); + bcm47xxpart_add_part(&parts[curr_part++], "nvram_guess", + master->size - blocksize * 2, MTD_WRITEABLE); + for (i = 0; i < curr_part; i++) { + if (parts[i].size + parts[i].offset == master->size) + parts[i].offset -= blocksize * 2; + } + } + /* * Assume that partitions end at the beginning of the one they are * followed by. option> upstream openwrtJames
aboutsummaryrefslogtreecommitdiffstats
path: root/include/toolchain-build.mk
blob: a0bc4061fcfcfc6c488e30ac985ccf4c709f9d5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 
# Copyright (C) 2009 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

override CONFIG_AUTOREBUILD=

REAL_STAGING_DIR_HOST:=$(STAGING_DIR_HOST)
STAGING_DIR_HOST:=$(TOOLCHAIN_DIR)
BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)

TOOLCHAIN_JOBS?=$(if $(CONFIG_TOOLCHAIN_PARALLEL),-j$(CONFIG_PKG_BUILD_JOBS))

include $(INCLUDE_DIR)/host-build.mk

HOST_STAMP_PREPARED=$(HOST_BUILD_DIR)/.prepared