From: Jagan Teki <jteki@openedev.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v7 18/34] cmd_sf: Use mtd->size instead of flash->size
Date: Thu, 26 Nov 2015 17:34:02 +0530 [thread overview]
Message-ID: <1448539458-14306-19-git-send-email-jteki@openedev.com> (raw)
In-Reply-To: <1448539458-14306-1-git-send-email-jteki@openedev.com>
Since mtd got added, replace flash->size with mtd->size.
Reviewed-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Jagan Teki <jteki@openedev.com>
---
common/cmd_sf.c | 16 ++++++++--------
drivers/mtd/spi/sf_ops.c | 23 +++++++++++++----------
include/spi_flash.h | 2 --
3 files changed, 21 insertions(+), 20 deletions(-)
diff --git a/common/cmd_sf.c b/common/cmd_sf.c
index 42862d9..d9f1bd1 100644
--- a/common/cmd_sf.c
+++ b/common/cmd_sf.c
@@ -275,13 +275,13 @@ static int do_spi_flash_read_write(int argc, char * const argv[])
return -1;
if (mtd_arg_off_size(argc - 2, &argv[2], &dev, &offset, &len,
- &maxsize, MTD_DEV_TYPE_NOR, flash->size))
+ &maxsize, MTD_DEV_TYPE_NOR, flash->mtd->size))
return -1;
/* Consistency checking */
- if (offset + len > flash->size) {
- printf("ERROR: attempting %s past flash size (%#x)\n",
- argv[0], flash->size);
+ if (offset + len > flash->mtd->size) {
+ printf("ERROR: attempting %s past flash size (0x%llx)\n",
+ argv[0], flash->mtd->size);
return 1;
}
@@ -327,7 +327,7 @@ static int do_spi_flash_erase(int argc, char * const argv[])
return -1;
if (mtd_arg_off(argv[1], &dev, &offset, &len, &maxsize,
- MTD_DEV_TYPE_NOR, flash->size))
+ MTD_DEV_TYPE_NOR, flash->mtd->size))
return -1;
ret = sf_parse_len_arg(argv[2], &size);
@@ -335,9 +335,9 @@ static int do_spi_flash_erase(int argc, char * const argv[])
return -1;
/* Consistency checking */
- if (offset + size > flash->size) {
- printf("ERROR: attempting %s past flash size (%#x)\n",
- argv[0], flash->size);
+ if (offset + size > flash->mtd->size) {
+ printf("ERROR: attempting %s past flash size (0x%llx)\n",
+ argv[0], flash->mtd->size);
return 1;
}
diff --git a/drivers/mtd/spi/sf_ops.c b/drivers/mtd/spi/sf_ops.c
index 1356161..5a7f5d5 100644
--- a/drivers/mtd/spi/sf_ops.c
+++ b/drivers/mtd/spi/sf_ops.c
@@ -149,7 +149,7 @@ static int spi_flash_read_bar(struct spi_flash *flash, u8 idcode0)
u8 curr_bank = 0;
int ret;
- if (flash->size <= SPI_FLASH_16MB_BOUN)
+ if (flash->mtd->size <= SPI_FLASH_16MB_BOUN)
goto bank_end;
switch (idcode0) {
@@ -651,6 +651,7 @@ static int sst_write_bp(struct mtd_info *mtd, loff_t offset, size_t len,
static void stm_get_locked_range(struct spi_flash *flash, u8 sr, loff_t *ofs,
u32 *len)
{
+ struct mtd_info *mtd = flash->mtd;
u8 mask = SR_BP2 | SR_BP1 | SR_BP0;
int shift = ffs(mask) - 1;
int pow;
@@ -661,8 +662,8 @@ static void stm_get_locked_range(struct spi_flash *flash, u8 sr, loff_t *ofs,
*len = 0;
} else {
pow = ((sr & mask) ^ mask) >> shift;
- *len = flash->size >> pow;
- *ofs = flash->size - *len;
+ *len = mtd->size >> pow;
+ *ofs = mtd->size - *len;
}
}
@@ -724,6 +725,7 @@ int stm_is_locked(struct spi_flash *flash, u32 ofs, size_t len)
*/
int stm_lock(struct spi_flash *flash, u32 ofs, size_t len)
{
+ struct mtd_info *mtd = flash->mtd;
u8 status_old, status_new;
u8 mask = SR_BP2 | SR_BP1 | SR_BP0;
u8 shift = ffs(mask) - 1, pow, val;
@@ -734,12 +736,12 @@ int stm_lock(struct spi_flash *flash, u32 ofs, size_t len)
return ret;
/* SPI NOR always locks to the end */
- if (ofs + len != flash->size) {
+ if (ofs + len != mtd->size) {
/* Does combined region extend to end? */
- if (!stm_is_locked_sr(flash, ofs + len, flash->size - ofs - len,
+ if (!stm_is_locked_sr(flash, ofs + len, mtd->size - ofs - len,
status_old))
return -EINVAL;
- len = flash->size - ofs;
+ len = mtd->size - ofs;
}
/*
@@ -751,7 +753,7 @@ int stm_lock(struct spi_flash *flash, u32 ofs, size_t len)
*
* pow = ceil(log2(size / len)) = log2(size) - floor(log2(len))
*/
- pow = ilog2(flash->size) - ilog2(len);
+ pow = ilog2(mtd->size) - ilog2(len);
val = mask - (pow << shift);
if (val & ~mask)
return -EINVAL;
@@ -778,6 +780,7 @@ int stm_lock(struct spi_flash *flash, u32 ofs, size_t len)
*/
int stm_unlock(struct spi_flash *flash, u32 ofs, size_t len)
{
+ struct mtd_info *mtd = flash->mtd;
uint8_t status_old, status_new;
u8 mask = SR_BP2 | SR_BP1 | SR_BP0;
u8 shift = ffs(mask) - 1, pow, val;
@@ -800,8 +803,8 @@ int stm_unlock(struct spi_flash *flash, u32 ofs, size_t len)
*
* pow = floor(log2(size / len)) = log2(size) - ceil(log2(len))
*/
- pow = ilog2(flash->size) - order_base_2(flash->size - (ofs + len));
- if (ofs + len == flash->size) {
+ pow = ilog2(mtd->size) - order_base_2(mtd->size - (ofs + len));
+ if (ofs + len == mtd->size) {
val = 0; /* fully unlocked */
} else {
val = mask - (pow << shift);
@@ -908,7 +911,7 @@ int spi_flash_decode_fdt(const void *blob, struct spi_flash *flash)
return 0;
}
- if (flash->size != size) {
+ if (flash->mtd->size != size) {
debug("%s: Memory map must cover entire device\n", __func__);
return -1;
}
diff --git a/include/spi_flash.h b/include/spi_flash.h
index 2e81a14..0fee203 100644
--- a/include/spi_flash.h
+++ b/include/spi_flash.h
@@ -44,7 +44,6 @@ struct spi_slave;
* @dual_flash: Indicates dual flash memories - dual stacked, parallel
* @shift: Flash shift useful in dual parallel
* @flags: Indication of spi flash flags
- * @size: Total flash size
* @page_size: Write (page) size
* @sector_size: Sector size
* @erase_size: Erase size
@@ -73,7 +72,6 @@ struct spi_flash {
u8 shift;
u16 flags;
- u32 size;
u32 page_size;
u32 sector_size;
u32 erase_size;
--
1.9.1
next prev parent reply other threads:[~2015-11-26 12:04 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-26 12:03 [U-Boot] [PATCH v7 00/34] sf: MTD support Jagan Teki
2015-11-26 12:03 ` [U-Boot] [PATCH v7 01/34] sf: spi_flash_validate_params => spi_flash_scan Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 02/34] sf: Move spi_flash_scan code to sf_ops Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 03/34] sf: Move read_id " Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 04/34] sf: probe: Code cleanup Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 05/34] sf: Use static for file-scope functions Jagan Teki
2015-11-26 12:03 ` [U-Boot] [PATCH v7 06/34] sf: Fix Makefile Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-12-03 10:20 ` Bin Meng
2015-11-26 12:03 ` [U-Boot] [PATCH v7 07/34] sf: Use simple name for register access functions Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 08/34] sf: Use flash function pointers in dm_spi_flash_ops Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-12-03 16:42 ` Jagan Teki
2015-11-26 12:03 ` [U-Boot] [PATCH v7 09/34] sf: Flash power up read-only based on idcode0 Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 10/34] sf: Use static for file-scope functions Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 11/34] sf: Remove unneeded header includes Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 12/34] sf: probe: Use spi_flash_scan in dm-spi-flash Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 19:10 ` Jagan Teki
2015-11-26 12:03 ` [U-Boot] [PATCH v7 13/34] sf: Re-factorize spi_flash_probe_tail code Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 14/34] dm-sf: Re-factorize spi_flash_std_probe code Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:03 ` [U-Boot] [PATCH v7 15/34] zynq: Enable CONFIG_SPL_MTD_SUPPORT Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:04 ` [U-Boot] [PATCH v7 16/34] sf: Add MTD support to spi_flash Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 19:14 ` Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 17/34] sf: Use mtd_info ops instead of spi_flash ops Jagan Teki
2015-11-26 12:04 ` Jagan Teki [this message]
2015-11-26 12:04 ` [U-Boot] [PATCH v7 19/34] sf: Use mtd->erasesize instead of flash->erase_size Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 20/34] dm-sf: use mtd_ops, drop dm_spi_flash_ops Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:04 ` [U-Boot] [PATCH v7 21/34] sf: Use MTD lock operations Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 22/34] sf: Add MTD support for non-dm spi_flash interface Jagan Teki
2015-11-26 17:50 ` Simon Glass
2015-11-26 12:04 ` [U-Boot] [PATCH v7 23/34] sf: probe: Minor cleanup Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 24/34] sf: Drop SNOR_F_SST_WR flash->flags Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 25/34] sf: Remove unneeded SST_BP and SST_WP Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 26/34] sf: ops: Fix missing break on spansion read_bar Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 27/34] sf: Drop SPI_FLASH_MTD driver Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 28/34] configs: Remove CONFIG_SPI_FLASH_MTD Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 29/34] sf: dataflash: Remove unneeded spi data Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 30/34] sf: dataflash: Move flash id detection into jedec_probe Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 31/34] sf: dataflash: Fix add_dataflash return logic Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 32/34] sf: dataflash: Add MTD core support Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 33/34] sf: dataflash: Rename sf_dataflash.c to mtd_dataflash.c Jagan Teki
2015-11-26 12:04 ` [U-Boot] [PATCH v7 34/34] mtd: dataflash: Minor cleanups Jagan Teki
2015-11-26 12:24 ` [U-Boot] [PATCH v7 00/34] sf: MTD support Jagan Teki
2015-11-26 12:32 ` Stefan Roese
2015-11-26 12:46 ` Jagan Teki
2015-11-26 13:04 ` Stefan Roese
2015-11-26 13:24 ` Jagan Teki
2015-11-26 16:48 ` Simon Glass
2015-11-26 17:47 ` Stefan Roese
2015-11-26 17:55 ` Simon Glass
2015-11-26 18:12 ` Stefan Roese
2015-11-26 18:22 ` Simon Glass
2015-11-27 4:01 ` Stefan Roese
2015-11-27 6:32 ` Stefan Roese
2015-11-26 17:50 ` Simon Glass
2015-11-26 18:54 ` Jagan Teki
2015-11-27 2:25 ` Bin Meng
2015-11-27 9:21 ` Jagan Teki
2015-11-30 23:17 ` Simon Glass
2015-12-03 10:14 ` Jagan Teki
2015-11-27 2:51 ` Simon Glass
2015-11-27 1:54 ` Bin Meng
2015-11-27 8:50 ` Jagan Teki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1448539458-14306-19-git-send-email-jteki@openedev.com \
--to=jteki@openedev.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox