From e8a016b53731bba820246c9509ce8ef74c944560 Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Thu, 8 Sep 2016 15:06:45 +0200 Subject: dm: Add support for scsi/sata based devices All sata based drivers are bind and corresponding block device is created. Based on this find_scsi_device() is able to get back block device based on scsi_curr_dev pointer. intr_scsi() is commented now but it can be replaced by calling find_scsi_device() and scsi_scan(). scsi_dev_desc[] is commented out but common/scsi.c heavily depends on it. That's why CONFIG_SYS_SCSI_MAX_DEVICE is hardcoded to 1 and symbol is reassigned to a block description allocated by uclass. There is only one block description by device now but it doesn't need to be correct when more devices are present. scsi_bind() ensures corresponding block device creation. uclass post_probe (scsi_post_probe()) is doing low level init. SCSI/SATA DM based drivers requires to have 64bit base address as the first entry in platform data structure to setup mmio_base. Signed-off-by: Michal Simek Reviewed-by: Simon Glass --- include/sata.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/sata.h') diff --git a/include/sata.h b/include/sata.h index b35359aa5a1..d18cc9aa875 100644 --- a/include/sata.h +++ b/include/sata.h @@ -2,6 +2,7 @@ #define __SATA_H__ #include +#if !defined(CONFIG_DM_SCSI) int init_sata(int dev); int reset_sata(int dev); int scan_sata(int dev); @@ -15,5 +16,6 @@ int __sata_stop(void); int sata_port_status(int dev, int port); extern struct blk_desc sata_dev_desc[]; +#endif #endif -- cgit v1.2.3