From: Simon Glass <sjg@chromium.org>
Date: Thu, 15 Jun 2017 03:28:39 +0000 (-0600)
Subject: dm: scsi: Add operations
X-Git-Tag: v2025.01-rc5-pxa1908~6393^2~55
X-Git-Url: http://git.dujemihanovic.xyz/%22http:/kyber.dk/phpMyBuilder/static/git-logo.png?a=commitdiff_plain;h=322f73f473d921dbdd0fe11bd62db6a00e5b133c;p=u-boot.git

dm: scsi: Add operations

Add operations for SCSI. These are not yet implemented, but we have the
struct.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
---

diff --git a/include/scsi.h b/include/scsi.h
index cd1b240855..d2fa8a5195 100644
--- a/include/scsi.h
+++ b/include/scsi.h
@@ -171,6 +171,26 @@ struct scsi_platdata {
 	unsigned long max_id;
 };
 
+/* Operations for SCSI */
+struct scsi_ops {
+	/**
+	 * exec() - execute a command
+	 *
+	 * @dev:	SCSI bus
+	 * @cmd:	Command to execute
+	 * @return 0 if OK, -ve on error
+	 */
+	int (*exec)(struct udevice *dev, struct scsi_cmd *cmd);
+
+	/**
+	 * bus_reset() - reset the bus
+	 *
+	 * @dev:	SCSI bus to reset
+	 * @return 0 if OK, -ve on error
+	 */
+	int (*bus_reset)(struct udevice *dev);
+};
+
 #ifndef CONFIG_DM_SCSI
 void scsi_low_level_init(int busdevfunc);
 void scsi_init(void);