u-boot-brain/drivers
Michal Simek bce4d18c9d 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 <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Series-changes: 2
- Use CONFIG_DM_SCSI instead of mix of DM_SCSI and DM_SATA
  Ceva sata has never used sata commands that's why keep it in
  SCSI part only.
- Separate scsi_scan() for DM_SCSI and do not change cmd/scsi.c
- Extend platdata

Series-changes: 3
- Fix scsi_scan return path
- Fix header location uclass-internal.h
- Add scsi_max_devs under !DM_SCSI
- Add new header device-internal because of device_probe()
- Redesign block device creation algorithm
- Use device_unbind in error path
- Create block device with id and lun numbers (lun was there in v2)
- Cleanup dev_num initialization in block device description
  with fixing parameters in blk_create_devicef
- Create new Kconfig menu for SATA/SCSI drivers
- Extend description for DM_SCSI
- Fix Kconfig dependencies
- Fix kernel doc format in scsi_platdata
- Fix ahci_init_one - vendor variable

Series-changes: 4
- Fix Kconfig entry
- Remove SPL ifdef around SCSI uclass
- Clean ahci_print_info() ifdef logic
2016-12-08 09:23:48 +01:00
..
adc sandbox: add ADC driver 2015-11-02 10:38:00 +09:00
bios_emulator bios_emulator: Fix cast for 64-bit compilation 2016-10-11 11:55:33 +08:00
block dm: Add support for scsi/sata based devices 2016-12-08 09:23:48 +01:00
bootcount bootcounter_ram: Fix misaligned cache warning 2016-11-28 15:10:34 -05:00
clk rockchip: clk: Support setting ACLK 2016-11-25 17:59:31 -07:00
core dm: core: Add dev_get_addr_size_index() to retrieve addr and size 2016-12-02 21:03:31 -07:00
cpu cpu: Add get_vendor callback 2016-10-19 09:01:51 +02:00
crypto powerpc: C29X: Move CONFIG_PPC_C29X to Kconfig option 2016-11-23 23:42:04 -08:00
ddr fsl/ddr: Add erratum_a009942_check_cpo and clean related erratum 2016-12-05 08:31:45 -08:00
demo drivers: hierarchize drivers Kconfig menu 2015-08-12 20:47:44 -04:00
dfu dfu: align array in dfu_get_dev_type with enum dfu_device_type 2016-11-03 11:55:25 +01:00
dma treewide: replace #include <asm/errno.h> with <linux/errno.h> 2016-09-23 17:55:42 -04:00
fpga treewide: replace #include <asm/errno.h> with <linux/errno.h> 2016-09-23 17:55:42 -04:00
gpio gpio: bcm2835: add device tree support 2016-11-28 20:09:45 -05:00
hwmon mailaddr: Update mail address 2016-01-27 15:32:05 +01:00
i2c dm: i2c: Add a note to I2C drivers which need conversion 2016-12-05 13:28:03 +01:00
input powerpc: MPC8555: Remove macro CONFIG_MPC8555 2016-11-23 23:42:05 -08:00
led dm: led: Tidy up SPL options for the led and led-gpio 2015-09-02 21:28:22 -06:00
mailbox libfdt: Bring in upstream stringlist functions 2016-10-13 13:54:10 -06:00
memory memory: Move TI_AEMIF config to KCONFIG 2016-04-18 17:11:43 -04:00
misc cmd: crosec: Move cros_ec_decode_region helper to cmd/cros_ec.c 2016-12-02 21:04:48 -07:00
mmc ARM: OMAP4+: Add support for getting pbias info from board 2016-12-04 13:54:51 -05:00
mtd mtd: cfi_flash: fix indentation 2016-12-04 13:55:01 -05:00
net net: rtl8169: remove unneeded definition 2016-12-04 13:55:01 -05:00
pch dm: Use dm_scan_fdt_dev() directly where possible 2016-07-27 14:15:54 -06:00
pci pci: mvebu: Add PCIe driver for Armada-8K 2016-12-05 13:34:33 +01:00
pcmcia powerpc: mpc824x: remove MPC824X cpu support 2015-01-05 12:08:55 -05:00
phy/marvell drivers/phy: marvell: Add support for the slave CP COMPHY device 2016-12-05 13:28:23 +01:00
pinctrl Fix codying style broken by recent libfdt sync 2016-10-24 08:04:42 -04:00
power ARM: OMAP4+: Add support for getting pbias info from board 2016-12-04 13:54:51 -05:00
pwm pwm: imx: increase support up to PWM8 for i.MX6SX 2016-11-29 16:34:27 +01:00
qe powerpc: P1025: Remove macro CONFIG_P1025 2016-11-23 23:42:10 -08:00
ram ram: rename CONFIG_SPL_RAM_SUPPORT to CONFIG_SPL_RAM 2015-08-18 13:46:02 -04:00
remoteproc remoteproc: Add support for TI power processor 2016-03-14 19:18:37 -04:00
reset libfdt: Bring in upstream stringlist functions 2016-10-13 13:54:10 -06:00
rtc rtc: Add RTC chip pcf2127 support 2016-12-02 21:03:31 -07:00
serial serial: Drop the s3c24x0 serial driver 2016-12-04 13:55:00 -05:00
soc Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
sound of: clean up OF_CONTROL ifdef conditionals 2015-08-18 13:46:05 -04:00
spi ARM: DRA7x/AM57xx: Get rid of CONFIG_AM57XX 2016-12-03 13:21:11 -05:00
spmi Merge git://git.denx.de/u-boot-dm 2016-08-12 16:00:50 -04:00
sysreset xtensa: add support for the 'xtfpga' evaluation board 2016-08-15 18:46:40 -04:00
thermal thermal: Kconfig: Add IMX_THERMAL entry 2016-10-26 16:53:16 +02:00
timer Merge git://git.denx.de/u-boot-dm 2016-03-14 19:21:44 -04:00
tpm tpm: tpm_tis_lpc: Add support for AT97SC3204 2016-12-02 10:37:47 -07:00
twserial drivers: convert makefiles to Kbuild style 2013-10-31 13:26:01 -04:00
usb fsl/usb: enable the errata-a005697 for ls1012a 2016-12-05 08:31:45 -08:00
video bcm2835 video: Map frame buffer as 32bpp 2016-11-28 20:15:20 -05:00
watchdog imx_watchdog: Do not assert WDOG_B on watchdog init 2016-10-04 12:01:14 +02:00
Kconfig drivers/phy: Add Marvell SerDes / PHY drivers used on Armada 3k 2016-09-27 17:29:53 +02:00
Makefile spl: add USB Gadget config option 2016-11-28 19:49:49 -05:00