From: Jagannadha Sutradharudu Teki Date: Sat, 25 Aug 2012 15:45:48 +0000 (+0530) Subject: Xilinx: ARM: sf: spansion: Update the flash memory size at runtime X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=451c7a9338ae7de2eae411d5b6818b874561d532;p=thirdparty%2Fu-boot.git Xilinx: ARM: sf: spansion: Update the flash memory size at runtime This patch adds support to update the flash memory size based on the runtime detection of dual qspi flash. So removed the conditional compilation for dual qspi flash. Signed-off-by: Jagannadha Sutradharudu Teki --- diff --git a/drivers/mtd/spi/spansion.c b/drivers/mtd/spi/spansion.c old mode 100755 new mode 100644 index 250aa4e7f45..3edc0d5c2f9 --- a/drivers/mtd/spi/spansion.c +++ b/drivers/mtd/spi/spansion.c @@ -165,13 +165,6 @@ struct spi_flash *spi_flash_probe_spansion(struct spi_slave *spi, u8 *idcode) return NULL; } - /* address width is 4 for dual and 3 for single qspi */ -#ifdef CONFIG_XILINX_PSS_QSPI_USE_DUAL_FLASH - flash->addr_width = 4; -#else - flash->addr_width = 3; -#endif - flash->spi = spi; flash->name = params->name; @@ -181,11 +174,13 @@ struct spi_flash *spi_flash_probe_spansion(struct spi_slave *spi, u8 *idcode) flash->page_size = params->page_size; flash->sector_size = params->page_size * params->pages_per_sector; - if (flash->addr_width == 3) - flash->size = flash->sector_size * params->nr_sectors; - else if (flash->addr_width == 4) { - printf("Dual Flash\n"); + /* address width is 4 for dual and 3 for single qspi */ + if (flash->spi->is_dual == 1) { + flash->addr_width = 4; flash->size = flash->sector_size * (2 * params->nr_sectors); + } else if (flash->spi->is_dual == 0) { + flash->addr_width = 3; + flash->size = flash->sector_size * params->nr_sectors; } return flash;