summaryrefslogtreecommitdiff
path: root/drivers/mtd/spi/atmel.c
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2013-03-11 06:08:03 +0000
committerSimon Glass <sjg@chromium.org>2013-03-19 08:45:36 -0700
commitc0f87dd4ffa0c012d1dc8f737412c58200a93c93 (patch)
treead8bc5cfdeac09a81bde0f16626b0625d7bcc836 /drivers/mtd/spi/atmel.c
parentb5aec1424d191c51f694ba85d5577e7a635363d9 (diff)
downloadu-boot-imx-c0f87dd4ffa0c012d1dc8f737412c58200a93c93.zip
u-boot-imx-c0f87dd4ffa0c012d1dc8f737412c58200a93c93.tar.gz
u-boot-imx-c0f87dd4ffa0c012d1dc8f737412c58200a93c93.tar.bz2
sf: Use spi_flash_alloc() in each SPI flash driver
Rather than each device having its own way to allocate a SPI flash structure, use the new allocation function everywhere. This will make it easier to extend the interface without breaking devices. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/mtd/spi/atmel.c')
-rw-r--r--drivers/mtd/spi/atmel.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/mtd/spi/atmel.c b/drivers/mtd/spi/atmel.c
index 006f6d5..6a92c4b 100644
--- a/drivers/mtd/spi/atmel.c
+++ b/drivers/mtd/spi/atmel.c
@@ -480,15 +480,13 @@ struct spi_flash *spi_flash_probe_atmel(struct spi_slave *spi, u8 *idcode)
return NULL;
}
- asf = malloc(sizeof(struct atmel_spi_flash));
+ asf = spi_flash_alloc(struct atmel_spi_flash, spi, params->name);
if (!asf) {
debug("SF: Failed to allocate memory\n");
return NULL;
}
asf->params = params;
- asf->flash.spi = spi;
- asf->flash.name = params->name;
/* Assuming power-of-two page size initially. */
page_size = 1 << params->l2_page_size;
@@ -513,7 +511,6 @@ struct spi_flash *spi_flash_probe_atmel(struct spi_slave *spi, u8 *idcode)
asf->flash.erase = dataflash_erase_at45;
page_size += 1 << (params->l2_page_size - 5);
} else {
- asf->flash.read = spi_flash_cmd_read_fast;
asf->flash.write = dataflash_write_p2;
asf->flash.erase = dataflash_erase_p2;
}
@@ -524,9 +521,6 @@ struct spi_flash *spi_flash_probe_atmel(struct spi_slave *spi, u8 *idcode)
case DF_FAMILY_AT26F:
case DF_FAMILY_AT26DF:
- asf->flash.read = spi_flash_cmd_read_fast;
- asf->flash.write = spi_flash_cmd_write_multi;
- asf->flash.erase = spi_flash_cmd_erase;
asf->flash.page_size = page_size;
asf->flash.sector_size = 4096;
/* clear SPRL# bit for locked flash */