From 945b61ae2d00d59eacebb70496ce9bc530767929 Mon Sep 17 00:00:00 2001
From: Sam Shih <sam.shih@mediatek.com>
Date: Fri, 2 Jun 2023 13:06:21 +0800
Subject: [PATCH] 
 [spi-and-storage][999-2373-drivers-spi-mem-Add-spi-calibration-hook.patch]

---
 drivers/spi/spi-mem.c       | 8 ++++++++
 include/linux/spi/spi-mem.h | 4 ++++
 2 files changed, 12 insertions(+)

diff --git a/drivers/spi/spi-mem.c b/drivers/spi/spi-mem.c
index 33115bcfc..b5ab26e9c 100644
--- a/drivers/spi/spi-mem.c
+++ b/drivers/spi/spi-mem.c
@@ -383,6 +383,14 @@ int spi_mem_exec_op(struct spi_mem *mem, const struct spi_mem_op *op)
 }
 EXPORT_SYMBOL_GPL(spi_mem_exec_op);
 
+int spi_mem_do_calibration(struct spi_mem *mem,
+	int (*cal_read)(void *priv, u32 *addr, int addrlen, u8 *buf, int readlen),
+	void *priv)
+{
+	return spi_do_calibration(mem->spi->controller, mem->spi, cal_read, priv);
+}
+EXPORT_SYMBOL_GPL(spi_mem_do_calibration);
+
 /**
  * spi_mem_get_name() - Return the SPI mem device name to be used by the
  *			upper layer if necessary
diff --git a/include/linux/spi/spi-mem.h b/include/linux/spi/spi-mem.h
index af9ff2f0f..e2cde8305 100644
--- a/include/linux/spi/spi-mem.h
+++ b/include/linux/spi/spi-mem.h
@@ -332,6 +332,10 @@ bool spi_mem_supports_op(struct spi_mem *mem,
 int spi_mem_exec_op(struct spi_mem *mem,
 		    const struct spi_mem_op *op);
 
+int spi_mem_do_calibration(struct spi_mem *mem,
+			int (*cal_read)(void *, u32 *, int, u8 *, int),
+			void *priv);
+
 const char *spi_mem_get_name(struct spi_mem *mem);
 
 struct spi_mem_dirmap_desc *
-- 
2.34.1

