@ -79,45 +79,6 @@ static const struct macronix_spi_flash_params macronix_spi_flash_table[] = {
} ,
} ;
static int macronix_write_status ( struct spi_flash * flash , u8 sr )
{
u8 cmd ;
int ret ;
ret = spi_flash_cmd_write_enable ( flash ) ;
if ( ret < 0 ) {
debug ( " SF: enabling write failed \n " ) ;
return ret ;
}
cmd = CMD_WRITE_STATUS ;
ret = spi_flash_cmd_write ( flash - > spi , & cmd , 1 , & sr , 1 ) ;
if ( ret ) {
debug ( " SF: fail to write status register \n " ) ;
return ret ;
}
ret = spi_flash_cmd_wait_ready ( flash , SPI_FLASH_PROG_TIMEOUT ) ;
if ( ret < 0 ) {
debug ( " SF: write status register timed out \n " ) ;
return ret ;
}
return 0 ;
}
static int macronix_unlock ( struct spi_flash * flash )
{
int ret ;
/* Enable status register writing and clear BP# bits */
ret = macronix_write_status ( flash , 0 ) ;
if ( ret )
debug ( " SF: fail to disable write protection \n " ) ;
return ret ;
}
struct spi_flash * spi_flash_probe_macronix ( struct spi_slave * spi , u8 * idcode )
{
const struct macronix_spi_flash_params * params ;
@ -153,7 +114,7 @@ struct spi_flash *spi_flash_probe_macronix(struct spi_slave *spi, u8 *idcode)
flash - > size = flash - > sector_size * params - > nr_blocks ;
/* Clear BP# bits for read-only flash */
macronix_unlock ( flash ) ;
spi_flash_cmd_write_status ( flash , 0 ) ;
return flash ;
}