2008-05-18 17:32:05 +00:00
|
|
|
From f1a605c36cf1659f5f486ae4135de1e285fdf86c Mon Sep 17 00:00:00 2001
|
|
|
|
From: Axel Gembe <ago@bastart.eu.org>
|
|
|
|
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 <ago@bastart.eu.org>
|
|
|
|
---
|
|
|
|
drivers/mtd/maps/bcm963xx-flash.c | 11 ++++++-----
|
|
|
|
1 files changed, 6 insertions(+), 5 deletions(-)
|
|
|
|
|
2008-06-17 12:57:04 +00:00
|
|
|
--- a/drivers/mtd/maps/bcm963xx-flash.c
|
|
|
|
+++ b/drivers/mtd/maps/bcm963xx-flash.c
|
2008-05-18 17:32:05 +00:00
|
|
|
@@ -1,8 +1,7 @@
|
|
|
|
/*
|
|
|
|
- * $Id$
|
|
|
|
* Copyright (C) 2006 Florian Fainelli <florian@openwrt.org>
|
|
|
|
- * Mike Albon <malbon@openwrt.org>
|
|
|
|
- * Copyright (C) $Date$ $Author$
|
|
|
|
+ * Mike Albon <malbon@openwrt.org>
|
|
|
|
+ * Copyright (C) 2008 Axel Gembe <ago@bastart.eu.org>
|
|
|
|
*
|
|
|
|
* 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
|
2008-06-17 12:57:04 +00:00
|
|
|
@@ -184,11 +183,13 @@
|
2008-05-18 17:32:05 +00:00
|
|
|
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);
|