Patchwork [5/6] mtd: bcm47xxpart: add support for other erase sizes

login
register
mail settings
Submitter Hauke Mehrtens
Date Jan. 24, 2013, 4:39 p.m.
Message ID <1359045599-1305-6-git-send-email-hauke@hauke-m.de>
Download mbox | patch
Permalink /patch/215438/
State New
Headers show

Comments

Hauke Mehrtens - Jan. 24, 2013, 4:39 p.m.
To make the partitions writable they should aligned to erase sizes of
the flash. If the erase size is small use 0x10000.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
 drivers/mtd/bcm47xxpart.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Patch

diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c
index 3411bc2..986ab6e 100644
--- a/drivers/mtd/bcm47xxpart.c
+++ b/drivers/mtd/bcm47xxpart.c
@@ -59,11 +59,14 @@  static int bcm47xxpart_parse(struct mtd_info *master,
 	uint32_t *buf;
 	size_t bytes_read;
 	uint32_t offset;
-	uint32_t blocksize = 0x10000;
+	uint32_t blocksize = master->erasesize;
 	struct trx_header *trx;
 	int trx_part = -1;
 	int last_trx_part = -1;
 
+	if (blocksize <= 0x10000)
+		blocksize = 0x10000;
+
 	/* Alloc */
 	parts = kzalloc(sizeof(struct mtd_partition) * BCM47XXPART_MAX_PARTS,
 			GFP_KERNEL);