summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2010-04-19 10:28:15 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2010-05-03 15:01:28 +0200
commit7a0a29ca36bff633e4d78a1c6cd4220edb296dd0 (patch)
tree16f9146af922271699f391f7afa62eb224770eb8 /drivers
parentac2d4d71ba493fd638ae0bf1a530a51c76d3c53d (diff)
downloadbarebox-7a0a29ca36bff633e4d78a1c6cd4220edb296dd0.tar.gz
barebox-7a0a29ca36bff633e4d78a1c6cd4220edb296dd0.tar.xz
cfi_flash: use flash_write_word instead of reimplementing it again
While at it remove some unused code and an unbalanced enable_interrupts(). Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/nor/cfi_flash.c19
1 files changed, 1 insertions, 18 deletions
diff --git a/drivers/nor/cfi_flash.c b/drivers/nor/cfi_flash.c
index 0f7a4839ac..dbfb004d05 100644
--- a/drivers/nor/cfi_flash.c
+++ b/drivers/nor/cfi_flash.c
@@ -116,11 +116,9 @@ static void flash_add_byte (flash_info_t * info, cfiword_t * cword, uchar c)
static int flash_write_cfiword (flash_info_t * info, ulong dest,
cfiword_t cword)
{
- cfiptr_t ctladdr;
cfiptr_t cptr;
int flag;
- ctladdr.cp = flash_make_addr (info, 0, 0);
cptr.cp = (uchar *) dest;
/* Check if Flash is (sufficiently) erased */
@@ -138,24 +136,9 @@ static int flash_write_cfiword (flash_info_t * info, ulong dest,
if (!flag)
return 2;
- /* Disable interrupts which might cause a timeout here */
-// flag = disable_interrupts ();
-
info->cfi_cmd_set->flash_prepare_write(info);
- if (bankwidth_is_1(info)) {
- cptr.cp[0] = cword.c;
- } else if (bankwidth_is_2(info)) {
- cptr.wp[0] = cword.w;
- } else if (bankwidth_is_4(info)) {
- cptr.lp[0] = cword.l;
- } else if (bankwidth_is_8(info)) {
- cptr.llp[0] = cword.ll;
- }
-
- /* re-enable interrupts if necessary */
- if (flag)
- enable_interrupts ();
+ flash_write_word(info, cword, (void *)dest);
return flash_status_check (info, find_sector (info, dest),
info->write_tout, "write");