From f1a605c36cf1659f5f486ae4135de1e285fdf86c Mon Sep 17 00:00:00 2001 From: Axel Gembe Date: Sat, 17 May 2008 16:17:22 +0200 Subject: [PATCH] bcm963xx: fix cfe detection The CFE detection failed to account for zero termination. Signed-off-by: Axel Gembe --- drivers/mtd/maps/bcm963xx-flash.c | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/mtd/maps/bcm963xx-flash.c b/drivers/mtd/maps/bcm963xx-flash.c index c4c4526..4da672b 100644 --- a/drivers/mtd/maps/bcm963xx-flash.c +++ b/drivers/mtd/maps/bcm963xx-flash.c @@ -1,8 +1,7 @@ /* - * $Id$ * Copyright (C) 2006 Florian Fainelli - * Mike Albon - * Copyright (C) $Date$ $Author$ + * Mike Albon + * Copyright (C) 2008 Axel Gembe * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -184,11 +183,13 @@ static int bcm963xx_parts_size = sizeof(bcm963xx_parts) / sizeof(bcm963xx_parts[ static int bcm963xx_detect_cfe(struct mtd_info *master) { int idoffset = 0x4e0; - static char idstring[8] = "CFE1CFE1"; - char buf[8]; + static char idstring[9] = "CFE1CFE1"; + char buf[9]; int ret; size_t retlen; + memset(buf, 0, sizeof(buf)); + ret = master->read(master, idoffset, 8, &retlen, (void *)buf); printk("bcm963xx: Read Signature value of %s\n", buf); return strcmp(idstring,buf); -- 1.5.5.1