From: Jagannadha Sutradharudu Teki Date: Mon, 20 May 2013 07:48:13 +0000 (+0530) Subject: spi: zynq: Use enum members for is_dual status X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=73199129eae795c4a067ea6e8c0244b02ede7809;p=thirdparty%2Fu-boot.git spi: zynq: Use enum members for is_dual status Used enum members for is_dual status instead of numericals. Signed-off-by: Jagannadha Sutradharudu Teki --- diff --git a/drivers/mtd/spi/spansion.c b/drivers/mtd/spi/spansion.c index 4281896a7f1..645138bb7ea 100644 --- a/drivers/mtd/spi/spansion.c +++ b/drivers/mtd/spi/spansion.c @@ -144,14 +144,14 @@ struct spi_flash *spi_flash_probe_spansion(struct spi_slave *spi, u8 *idcode) flash->page_size = 256; flash->sector_size = 256 * params->pages_per_sector; - if (flash->spi->is_dual == 2) { + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) { flash->page_size *= 2; flash->sector_size *= 2; } flash->size = flash->sector_size * params->nr_sectors; - if (flash->spi->is_dual == 1) + if (flash->spi->is_dual == MODE_DUAL_STACKED) flash->size *= 2; return flash; diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index b37f09608a8..1cae583a51d 100644 --- a/drivers/mtd/spi/spi_flash.c +++ b/drivers/mtd/spi/spi_flash.c @@ -29,7 +29,8 @@ static void spi_flash_addr(u32 addr, u8 *cmd) static int spi_flash_bank(struct spi_flash *flash, u32 addr, u8 *bank_sel) { *bank_sel = addr / SPI_FLASH_16MB_BOUN; - if ((flash->spi->is_dual == 1) && (flash->spi->u_page == 1)) + if ((flash->spi->is_dual == MODE_DUAL_STACKED) && + (flash->spi->u_page == 1)) *bank_sel -= ((flash->size / 2) / SPI_FLASH_16MB_BOUN); return spi_flash_cmd_bankaddr_write(flash, *bank_sel); @@ -43,7 +44,7 @@ static int spi_flash_read_write(struct spi_slave *spi, unsigned long flags = SPI_XFER_BEGIN; int ret; - if ((spi->is_dual == 1) && (spi->u_page == 1)) + if ((spi->is_dual == MODE_DUAL_STACKED) && (spi->u_page == 1)) flags |= SPI_FLASH_U_PAGE; if (data_len == 0) @@ -102,10 +103,10 @@ int spi_flash_cmd_write_multi(struct spi_flash *flash, u32 offset, cmd[0] = CMD_PAGE_PROGRAM; for (actual = 0; actual < len; actual += chunk_len) { write_addr = offset; - if (flash->spi->is_dual == 2) + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) write_addr /= 2; - if (flash->spi->is_dual == 1) { + if (flash->spi->is_dual == MODE_DUAL_STACKED) { if (offset >= (flash->size / 2)) flash->spi->u_page = 1; else @@ -184,7 +185,7 @@ int spi_flash_cmd_read_fast(struct spi_flash *flash, u32 offset, memcpy(data, flash->memory_map + offset, len); bank_boun = SPI_FLASH_16MB_BOUN; - if (flash->spi->is_dual == 2) + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) bank_boun = SPI_FLASH_16MB_BOUN >> 1; cmd[0] = CMD_READ_ARRAY_FAST; @@ -192,10 +193,10 @@ int spi_flash_cmd_read_fast(struct spi_flash *flash, u32 offset, while (len) { read_addr = offset; - if (flash->spi->is_dual == 2) + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) read_addr /= 2; - if (flash->spi->is_dual == 1) { + if (flash->spi->is_dual == MODE_DUAL_STACKED) { if (read_addr >= (flash->size / 2)) flash->spi->u_page = 1; else @@ -299,10 +300,10 @@ int spi_flash_cmd_erase(struct spi_flash *flash, u32 offset, size_t len) while (len) { erase_addr = offset; - if (flash->spi->is_dual == 2) + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) erase_addr /= 2; - if (flash->spi->is_dual == 1) { + if (flash->spi->is_dual == MODE_DUAL_STACKED) { if (offset >= (flash->size / 2)) flash->spi->u_page = 1; else @@ -588,10 +589,10 @@ struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, puts("\n"); flash->idcode0 = *idp; - if (((flash->spi->is_dual == 0) && + if (((flash->spi->is_dual == MODE_SINGLE) && (flash->size > SPI_FLASH_16MB_BOUN)) || - (((flash->spi->is_dual == 1) || - (flash->spi->is_dual == 2)) && + (((flash->spi->is_dual == MODE_DUAL_STACKED) || + (flash->spi->is_dual == MODE_DUAL_PARALLEL)) && ((flash->size / 2) > SPI_FLASH_16MB_BOUN))) { if (spi_flash_cmd_bankaddr_read(flash, &curr_bank)) { debug("SF: fail to read bank addr register\n"); diff --git a/drivers/mtd/spi/stmicro.c b/drivers/mtd/spi/stmicro.c index 3f25090b9b7..9b2f8c2899a 100644 --- a/drivers/mtd/spi/stmicro.c +++ b/drivers/mtd/spi/stmicro.c @@ -209,14 +209,14 @@ struct spi_flash *spi_flash_probe_stmicro(struct spi_slave *spi, u8 * idcode) flash->page_size = 256; flash->sector_size = 256 * params->pages_per_sector; - if (flash->spi->is_dual == 2) { + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) { flash->page_size *= 2; flash->sector_size *= 2; } flash->size = flash->sector_size * params->nr_sectors; - if (flash->spi->is_dual == 1) + if (flash->spi->is_dual == MODE_DUAL_STACKED) flash->size *= 2; return flash; diff --git a/drivers/mtd/spi/winbond.c b/drivers/mtd/spi/winbond.c index efaabd8c8d5..ee9d54f0b0b 100644 --- a/drivers/mtd/spi/winbond.c +++ b/drivers/mtd/spi/winbond.c @@ -111,7 +111,7 @@ struct spi_flash *spi_flash_probe_winbond(struct spi_slave *spi, u8 *idcode) flash->page_size = 256; flash->sector_size = 4096; - if (flash->spi->is_dual == 2) { + if (flash->spi->is_dual == MODE_DUAL_PARALLEL) { flash->page_size *= 2; flash->sector_size *= 2; } diff --git a/drivers/spi/zynq_qspips.c b/drivers/spi/zynq_qspips.c index f185f97f079..75939aceef7 100644 --- a/drivers/spi/zynq_qspips.c +++ b/drivers/spi/zynq_qspips.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include @@ -86,14 +87,6 @@ #define XQSPIPS_MIO_NUM_QSPI1 5 #define XQSPIPS_MIO_NUM_QSPI1_CS 1 -/* QSPI connections topology */ -enum xqspips_con_topology { - MODE_UNKNOWN = -1, - MODE_SINGLE, - MODE_DUAL_STACKED, - MODE_DUAL_PARALLEL, -}; - /* Definitions of the flash commands - Flash opcodes in ascending order */ #define XQSPIPS_FLASH_OPCODE_WRSR 0x01 /* Write status register */ #define XQSPIPS_FLASH_OPCODE_PP 0x02 /* Page program */ diff --git a/include/spi_flash.h b/include/spi_flash.h index 88b302a4a6f..11487e7b7b1 100644 --- a/include/spi_flash.h +++ b/include/spi_flash.h @@ -27,6 +27,14 @@ #include #include +/* SPI connection modes */ +enum spi_con_topology { + MODE_UNKNOWN = -1, + MODE_SINGLE, + MODE_DUAL_STACKED, + MODE_DUAL_PARALLEL, +}; + struct spi_flash { struct spi_slave *spi;