At present we have the SCSI drivers in the drivers/block and common/
directories. It is better to split them out into their own place. Use
drivers/scsi which is what Linux does.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 common/Makefile                        |  4 ----
 drivers/Kconfig                        |  2 ++
 drivers/Makefile                       |  3 ++-
 drivers/block/Kconfig                  | 18 ------------------
 drivers/block/Makefile                 |  2 +-
 drivers/scsi/Kconfig                   | 17 +++++++++++++++++
 drivers/scsi/Makefile                  | 19 +++++++++++++++++++
 drivers/{block => scsi}/sandbox_scsi.c |  0
 drivers/{block => scsi}/scsi-uclass.c  |  0
 {common => drivers/scsi}/scsi.c        |  0
 10 files changed, 41 insertions(+), 24 deletions(-)
 create mode 100644 drivers/scsi/Kconfig
 create mode 100644 drivers/scsi/Makefile
 rename drivers/{block => scsi}/sandbox_scsi.c (100%)
 rename drivers/{block => scsi}/scsi-uclass.c (100%)
 rename {common => drivers/scsi}/scsi.c (100%)

diff --git a/common/Makefile b/common/Makefile
index 026f58211d..3c2e477d72 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -80,7 +80,6 @@ obj-$(CONFIG_LCD_ROTATION) += lcd_console_rotation.o
 obj-$(CONFIG_LCD_DT_SIMPLEFB) += lcd_simplefb.o
 obj-$(CONFIG_LYNXKDI) += lynxkdi.o
 obj-$(CONFIG_MENU) += menu.o
-obj-$(CONFIG_SCSI) += scsi.o
 obj-$(CONFIG_UPDATE_TFTP) += update.o
 obj-$(CONFIG_DFU_TFTP) += update.o
 obj-$(CONFIG_USB_KEYBOARD) += usb_kbd.o
@@ -119,9 +118,6 @@ obj-$(CONFIG_ENV_IS_IN_NAND) += env_nand.o
 obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += env_sf.o
 obj-$(CONFIG_ENV_IS_IN_FLASH) += env_flash.o
 endif
-ifdef CONFIG_SPL_SATA_SUPPORT
-obj-$(CONFIG_SCSI) += scsi.o
-endif
 endif
 #environment
 obj-y += env_common.o
diff --git a/drivers/Kconfig b/drivers/Kconfig
index 63e4034c56..2e03133c43 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -72,6 +72,8 @@ source "drivers/reset/Kconfig"
 
 source "drivers/rtc/Kconfig"
 
+source "drivers/scsi/Kconfig"
+
 source "drivers/serial/Kconfig"
 
 source "drivers/sound/Kconfig"
diff --git a/drivers/Makefile b/drivers/Makefile
index 9bbcc7bf9c..8624bd86f1 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -45,7 +45,7 @@ obj-$(CONFIG_SPL_DFU_SUPPORT) += dfu/
 obj-$(CONFIG_SPL_WATCHDOG_SUPPORT) += watchdog/
 obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += usb/host/
 obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/
-obj-$(CONFIG_SPL_SATA_SUPPORT) += ata/
+obj-$(CONFIG_SPL_SATA_SUPPORT) += ata/ scsi/
 obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += block/
 obj-$(CONFIG_SPL_MMC_SUPPORT) += block/
 endif
@@ -82,6 +82,7 @@ obj-y += dfu/
 obj-$(CONFIG_X86) += pch/
 obj-y += phy/marvell/
 obj-y += rtc/
+obj-y += scsi/
 obj-y += sound/
 obj-y += spmi/
 obj-y += sysreset/
diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
index 1ddd6508e4..ca7692d8a5 100644
--- a/drivers/block/Kconfig
+++ b/drivers/block/Kconfig
@@ -10,24 +10,6 @@ config BLK
          be partitioned into several areas, called 'partitions' in U-Boot.
          A filesystem can be placed in each partition.
 
-config SCSI
-       bool "Support SCSI controllers"
-       help
-         This enables support for SCSI (Small Computer System Interface),
-         a parallel interface widely used with storage peripherals such as
-         hard drives and optical drives. The SCSI standards define physical
-         interfaces as well as protocols for controlling devices and
-         tranferring data.
-
-config DM_SCSI
-       bool "Support SCSI controllers with driver model"
-       depends on BLK
-       help
-         This option enables the SCSI (Small Computer System Interface) uclass
-         which supports SCSI and SATA HDDs. For every device configuration
-         (IDs/LUNs) a block device is created with RAW read/write and
-         filesystem support.
-
 config BLOCK_CACHE
        bool "Use block device cache"
        default n
diff --git a/drivers/block/Makefile b/drivers/block/Makefile
index 2bfcc4a683..146c4fe01f 100644
--- a/drivers/block/Makefile
+++ b/drivers/block/Makefile
@@ -14,6 +14,6 @@ endif
 obj-$(CONFIG_IDE) += ide.o
 obj-$(CONFIG_IDE_FTIDE020) += ftide020.o
 obj-$(CONFIG_IDE_SIL680) += sil680.o
-obj-$(CONFIG_SANDBOX) += sandbox.o sandbox_scsi.o
+obj-$(CONFIG_SANDBOX) += sandbox.o
 obj-$(CONFIG_SYSTEMACE) += systemace.o
 obj-$(CONFIG_BLOCK_CACHE) += blkcache.o
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
new file mode 100644
index 0000000000..db1606e3ce
--- /dev/null
+++ b/drivers/scsi/Kconfig
@@ -0,0 +1,17 @@
+config SCSI
+       bool "Support SCSI controllers"
+       help
+         This enables support for SCSI (Small Computer System Interface),
+         a parallel interface widely used with storage peripherals such as
+         hard drives and optical drives. The SCSI standards define physical
+         interfaces as well as protocols for controlling devices and
+         tranferring data.
+
+config DM_SCSI
+       bool "Support SCSI controllers with driver model"
+       depends on BLK
+       help
+         This option enables the SCSI (Small Computer System Interface) uclass
+         which supports SCSI and SATA HDDs. For every device configuration
+         (IDs/LUNs) a block device is created with RAW read/write and
+         filesystem support.
diff --git a/drivers/scsi/Makefile b/drivers/scsi/Makefile
new file mode 100644
index 0000000000..7068a8f12e
--- /dev/null
+++ b/drivers/scsi/Makefile
@@ -0,0 +1,19 @@
+#
+# (C) Copyright 2000-2007
+# Wolfgang Denk, DENX Software Engineering, w...@denx.de.
+#
+# SPDX-License-Identifier:     GPL-2.0+
+#
+
+ifndef CONFIG_SPL_BUILD
+obj-$(CONFIG_DM_SCSI) += scsi-uclass.o
+obj-$(CONFIG_SCSI) += scsi.o
+obj-$(CONFIG_SANDBOX) += sandbox_scsi.o
+endif
+
+ifdef CONFIG_SPL_BUILD
+ifdef CONFIG_SPL_SATA_SUPPORT
+obj-$(CONFIG_DM_SCSI) += scsi-uclass.o
+obj-$(CONFIG_SCSI) += scsi.o
+endif
+endif
diff --git a/drivers/block/sandbox_scsi.c b/drivers/scsi/sandbox_scsi.c
similarity index 100%
rename from drivers/block/sandbox_scsi.c
rename to drivers/scsi/sandbox_scsi.c
diff --git a/drivers/block/scsi-uclass.c b/drivers/scsi/scsi-uclass.c
similarity index 100%
rename from drivers/block/scsi-uclass.c
rename to drivers/scsi/scsi-uclass.c
diff --git a/common/scsi.c b/drivers/scsi/scsi.c
similarity index 100%
rename from common/scsi.c
rename to drivers/scsi/scsi.c
-- 
2.13.0.506.g27d5fe0cd-goog

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to