From 83fd09a0491034ee28c6948732b570f3e9e15b68 Mon Sep 17 00:00:00 2001
From: Bo Shen <voice.shen@atmel.com>
Date: Sun, 19 Aug 2012 20:32:21 +0000
Subject: [PATCH] spiflash: at25: using common spi flash operation
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

Using common spi flash operation function to replace private operation
funtion

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
---
 drivers/mtd/spi/atmel.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/spi/atmel.c b/drivers/mtd/spi/atmel.c
index 89ebe9dcdb..006f6d5d04 100644
--- a/drivers/mtd/spi/atmel.c
+++ b/drivers/mtd/spi/atmel.c
@@ -518,13 +518,19 @@ struct spi_flash *spi_flash_probe_atmel(struct spi_slave *spi, u8 *idcode)
 			asf->flash.erase = dataflash_erase_p2;
 		}
 
+		asf->flash.page_size = page_size;
+		asf->flash.sector_size = page_size;
 		break;
 
 	case DF_FAMILY_AT26F:
 	case DF_FAMILY_AT26DF:
 		asf->flash.read = spi_flash_cmd_read_fast;
-		asf->flash.write = dataflash_write_p2;
-		asf->flash.erase = dataflash_erase_p2;
+		asf->flash.write = spi_flash_cmd_write_multi;
+		asf->flash.erase = spi_flash_cmd_erase;
+		asf->flash.page_size = page_size;
+		asf->flash.sector_size = 4096;
+		/* clear SPRL# bit for locked flash */
+		spi_flash_cmd_write_status(&asf->flash, 0);
 		break;
 
 	default:
@@ -532,7 +538,6 @@ struct spi_flash *spi_flash_probe_atmel(struct spi_slave *spi, u8 *idcode)
 		goto err;
 	}
 
-	asf->flash.sector_size = page_size;
 	asf->flash.size = page_size * params->pages_per_block
 				* params->blocks_per_sector
 				* params->nr_sectors;
-- 
2.39.5