public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Jagan Teki <jteki@openedev.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 10/13] sf: Add flash_read support
Date: Wed,  2 Sep 2015 11:39:54 +0530	[thread overview]
Message-ID: <1441174197-5096-11-git-send-email-jteki@openedev.com> (raw)
In-Reply-To: <1441174197-5096-1-git-send-email-jteki@openedev.com>

Generic function for spi-flash memory reading.

Signed-off-by: Jagan Teki <jteki@openedev.com>
---
Changes for v3:
	- none
Changes for v2:
	- none

 drivers/mtd/spi/sf.c          | 23 +++++++++++++++++++++++
 drivers/mtd/spi/sf_internal.h |  3 +++
 2 files changed, 26 insertions(+)

diff --git a/drivers/mtd/spi/sf.c b/drivers/mtd/spi/sf.c
index cb36946..2670207 100644
--- a/drivers/mtd/spi/sf.c
+++ b/drivers/mtd/spi/sf.c
@@ -79,3 +79,26 @@ int flash_read_reg(struct spi_flash *flash, u8 cmd, u8 *val, int len)
 
 	return ret;
 }
+
+int flash_read(struct spi_flash *flash, const u8 *cmd, size_t cmd_len,
+				void *data, size_t data_len)
+{
+	struct spi_slave *spi = flash->spi;
+	int ret;
+
+	ret = spi_claim_bus(spi);
+	if (ret < 0) {
+		debug("SF: unable to claim SPI bus\n");
+		return ret;
+	}
+
+	ret = spi_flash_read_write(spi, cmd, cmd_len, NULL, data, data_len);
+	if (ret < 0) {
+		debug("SF: error %d reading %x\n", ret, *cmd);
+		return ret;
+	}
+
+	spi_release_bus(spi);
+
+	return ret;
+}
diff --git a/drivers/mtd/spi/sf_internal.h b/drivers/mtd/spi/sf_internal.h
index 9341fb3..4dfc67d 100644
--- a/drivers/mtd/spi/sf_internal.h
+++ b/drivers/mtd/spi/sf_internal.h
@@ -159,6 +159,9 @@ int spi_flash_cmd_read(struct spi_slave *spi, const u8 *cmd,
 /* Read flash register - common call for all flash register reads */
 int flash_read_reg(struct spi_flash *flash, u8 cmd, u8 *val, int len);
 
+/* Read flash memory - Read data from spi flash */
+int flash_read(struct spi_flash *flash, const u8 *cmd, size_t cmd_len,
+				void *data, size_t data_len);
 /*
  * Send a multi-byte command to the device followed by (optional)
  * data. Used for programming the flash array, etc.
-- 
1.9.1

  parent reply	other threads:[~2015-09-02  6:09 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-02  6:09 [U-Boot] [PATCH v3 00/13] sf: BAR/wait_ready logic updates Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 01/13] spi: zynq_spi: Remove unneeded headers Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 02/13] sf: Return bank_sel, if flash->bank_curr == bank_sel Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 03/13] sf: Make BAR discovery, as spi_flash_read_bar Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 04/13] sf: Optimize BAR write code Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 05/13] sf: Make flash->flags use for generic usage Jagan Teki
2015-09-02  9:39   ` Bin Meng
2015-09-03  7:04     ` Jagan Teki
2015-09-15  6:32   ` Bin Meng
2015-09-15  7:49     ` Bin Meng
2015-09-02  6:09 ` [U-Boot] [PATCH v3 06/13] sf: Update status reg check in spi_flash_cmd_wait_ready Jagan Teki
2015-09-15  8:14   ` Bin Meng
2015-09-02  6:09 ` [U-Boot] [PATCH v3 07/13] sf: Add FSR support to spi_flash_cmd_wait_ready Jagan Teki
2015-09-02  8:00   ` Marek Vasut
2015-09-29 11:12     ` Jagan Teki
2015-09-15  8:15   ` Bin Meng
2015-09-02  6:09 ` [U-Boot] [PATCH v3 08/13] sf: Add flash_read_reg support Jagan Teki
2015-09-15  8:17   ` Bin Meng
2015-09-02  6:09 ` [U-Boot] [PATCH v3 09/13] sf: Use flash_read_reg routine Jagan Teki
2015-09-02  6:09 ` Jagan Teki [this message]
2015-09-02  6:09 ` [U-Boot] [PATCH v3 11/13] sf: Use flash_read routine in spi_flash_read_ops Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 12/13] sf: Add clear flag status register support Jagan Teki
2015-09-02  6:09 ` [U-Boot] [PATCH v3 13/13] sf: Rename read register functions Jagan Teki
2015-09-15  8:21   ` Bin Meng

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=1441174197-5096-11-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