@ -36,6 +36,7 @@
# include <common.h>
# include <common.h>
# include <asm/processor.h>
# include <asm/processor.h>
# include <asm/io.h>
# include <asm/byteorder.h>
# include <asm/byteorder.h>
# include <environment.h>
# include <environment.h>
# ifdef CFG_FLASH_CFI_DRIVER
# ifdef CFG_FLASH_CFI_DRIVER
@ -931,27 +932,18 @@ static void flash_write_cmd (flash_info_t * info, flash_sect_t sect, uint offset
debug ( " fwc addr %p cmd %x %x 8bit x %d bit \n " , addr . cp , cmd ,
debug ( " fwc addr %p cmd %x %x 8bit x %d bit \n " , addr . cp , cmd ,
cword . c , info - > chipwidth < < CFI_FLASH_SHIFT_WIDTH ) ;
cword . c , info - > chipwidth < < CFI_FLASH_SHIFT_WIDTH ) ;
* addr . cp = cword . c ;
* addr . cp = cword . c ;
# ifdef CONFIG_BLACKFIN
asm ( " ssync; " ) ;
# endif
break ;
break ;
case FLASH_CFI_16BIT :
case FLASH_CFI_16BIT :
debug ( " fwc addr %p cmd %x %4.4x 16bit x %d bit \n " , addr . wp ,
debug ( " fwc addr %p cmd %x %4.4x 16bit x %d bit \n " , addr . wp ,
cmd , cword . w ,
cmd , cword . w ,
info - > chipwidth < < CFI_FLASH_SHIFT_WIDTH ) ;
info - > chipwidth < < CFI_FLASH_SHIFT_WIDTH ) ;
* addr . wp = cword . w ;
* addr . wp = cword . w ;
# ifdef CONFIG_BLACKFIN
asm ( " ssync; " ) ;
# endif
break ;
break ;
case FLASH_CFI_32BIT :
case FLASH_CFI_32BIT :
debug ( " fwc addr %p cmd %x %8.8lx 32bit x %d bit \n " , addr . lp ,
debug ( " fwc addr %p cmd %x %8.8lx 32bit x %d bit \n " , addr . lp ,
cmd , cword . l ,
cmd , cword . l ,
info - > chipwidth < < CFI_FLASH_SHIFT_WIDTH ) ;
info - > chipwidth < < CFI_FLASH_SHIFT_WIDTH ) ;
* addr . lp = cword . l ;
* addr . lp = cword . l ;
# ifdef CONFIG_BLACKFIN
asm ( " ssync; " ) ;
# endif
break ;
break ;
case FLASH_CFI_64BIT :
case FLASH_CFI_64BIT :
# ifdef DEBUG
# ifdef DEBUG
@ -966,11 +958,11 @@ static void flash_write_cmd (flash_info_t * info, flash_sect_t sect, uint offset
}
}
# endif
# endif
* addr . llp = cword . ll ;
* addr . llp = cword . ll ;
# ifdef CONFIG_BLACKFIN
asm ( " ssync; " ) ;
# endif
break ;
break ;
}
}
/* Ensure all the instructions are fully finished */
sync ( ) ;
}
}
static void flash_unlock_seq ( flash_info_t * info , flash_sect_t sect )
static void flash_unlock_seq ( flash_info_t * info , flash_sect_t sect )