devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/32] HiSilicon SAS driver
@ 2015-11-17 16:50 John Garry
  2015-11-17 16:50 ` [PATCH v5 01/32] [SCSI] sas: centralise ssp frame information units John Garry
                   ` (29 more replies)
  0 siblings, 30 replies; 39+ messages in thread
From: John Garry @ 2015-11-17 16:50 UTC (permalink / raw)
  To: JBottomley, robh+dt, pawel.moll, mark.rutland, ijc+devicetree,
	galak, arnd
  Cc: linux-scsi, linux-kernel, devicetree, linuxarm, john.garry2, hare,
	xuwei5, zhangfei.gao, john.garry

This is the driver patchset for the HiSilicon SAS driver. The driver
is a platform driver.

The driver will support multiple revisions of HW. Currently only "v1"
HW is supported.

The driver uses libsas framework within the SCSI framework.

The v1 HW supports SSP and SMP, but not STP/SATA.

A dependency exists on [1].

Differences to v4:
- fix kbuild issue with patch 0003

Differences to v3:
- update dt bindings for syscon property
- change SAS and SCSI deregister order
- remove unused phy struct elements

Differences to v2:
- update device tree bindings
- remove while loops when evaluating hba struct
- remove _lo and _hi DMA struct fields
- revised spinlock usage
- fix error handling for when CMPLT_HDR_ERR_RCRD_XFRD set
- general coding style and cosmetic fixes

Differences to v1:
- re-arch driver into main module and hw-specific driver module
- allocate hisi_hba in scsi_host_alloc
- use of_irq_count get irq count - depends on [1]
- use syscon to handle ctrl reg access
- get SAS address from device tree
- do not set cmd_per_lun to 1
- remove remove controller id
- use static wq in phy struct
- process control phy in caller context
- fix port->port_attached issue for rmmod

[1] http://www.spinics.net/lists/arm-kernel/msg452833.html

John Garry (32):
  [SCSI] sas: centralise ssp frame information units
  devicetree: bindings: scsi: HiSi SAS
  scsi: hisi_sas: add initial bare main driver
  scsi: hisi_sas: add scsi host registration
  scsi: hisi_sas: scan device tree
  scsi: hisi_sas: add HW DMA structures
  scsi: hisi_sas: allocate memories and create pools
  scsi: hisi_sas: add hisi_sas_remove
  scsi: hisi_sas: add slot init code
  scsi: hisi_sas: add cq structure initialization
  scsi: hisi_sas: add phy SAS ADDR initialization
  scsi: hisi_sas: set dev DMA mask
  scsi: hisi_sas: add hisi_hba workqueue
  scsi: hisi_sas: add hisi sas device type
  scsi: hisi_sas: add phy and port init
  scsi: hisi_sas: add timer and spinlock init
  scsi: hisi_sas: add v1 hw module init
  scsi: hisi_sas: add v1 hardware register definitions
  scsi: hisi_sas: add v1 HW initialisation code
  scsi: hisi_sas: add v1 hw interrupt init
  scsi: hisi_sas: add path from phyup irq to SAS framework
  scsi: hisi_sas: add ssp command function
  scsi: hisi_sas: add cq interrupt handler
  scsi: hisi_sas: add dev_found and dev_gone
  scsi: hisi_sas: add abnormal irq handler
  scsi: hisi_sas: add bcast interrupt handler
  scsi: hisi_sas: add smp protocol support
  scsi: hisi_sas: add scan finished and start
  scsi: hisi_sas: add tmf methods
  scsi: hisi_sas: add control phy handler
  scsi: hisi_sas: add fatal irq handler
  MAINTAINERS: add maintainer for HiSi SAS driver

 .../devicetree/bindings/scsi/hisilicon-sas.txt     |   69 +
 MAINTAINERS                                        |    7 +
 drivers/scsi/Kconfig                               |    1 +
 drivers/scsi/Makefile                              |    1 +
 drivers/scsi/aic94xx/aic94xx_sas.h                 |   49 +-
 drivers/scsi/hisi_sas/Kconfig                      |    6 +
 drivers/scsi/hisi_sas/Makefile                     |    2 +
 drivers/scsi/hisi_sas/hisi_sas.h                   |  345 ++++
 drivers/scsi/hisi_sas/hisi_sas_main.c              | 1362 ++++++++++++++
 drivers/scsi/hisi_sas/hisi_sas_v1_hw.c             | 1866 ++++++++++++++++++++
 include/scsi/sas.h                                 |   74 +
 11 files changed, 3739 insertions(+), 43 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/scsi/hisilicon-sas.txt
 create mode 100644 drivers/scsi/hisi_sas/Kconfig
 create mode 100644 drivers/scsi/hisi_sas/Makefile
 create mode 100644 drivers/scsi/hisi_sas/hisi_sas.h
 create mode 100644 drivers/scsi/hisi_sas/hisi_sas_main.c
 create mode 100644 drivers/scsi/hisi_sas/hisi_sas_v1_hw.c

Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Hannes Reinecke <hare@suse.de>
-- 
1.9.1

^ permalink raw reply	[flat|nested] 39+ messages in thread

end of thread, other threads:[~2015-11-19  9:46 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-17 16:50 [PATCH v5 00/32] HiSilicon SAS driver John Garry
2015-11-17 16:50 ` [PATCH v5 01/32] [SCSI] sas: centralise ssp frame information units John Garry
2015-11-17 16:50 ` [PATCH v5 02/32] devicetree: bindings: scsi: HiSi SAS John Garry
2015-11-17 16:50 ` [PATCH v5 03/32] scsi: hisi_sas: add initial bare main driver John Garry
2015-11-17 16:50 ` [PATCH v5 04/32] scsi: hisi_sas: add scsi host registration John Garry
2015-11-17 16:50 ` [PATCH v5 05/32] scsi: hisi_sas: scan device tree John Garry
     [not found] ` <1447779059-136143-1-git-send-email-john.garry-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2015-11-17 16:50   ` [PATCH v5 06/32] scsi: hisi_sas: add HW DMA structures John Garry
2015-11-17 16:50   ` [PATCH v5 14/32] scsi: hisi_sas: add hisi sas device type John Garry
2015-11-17 16:50   ` [PATCH v5 26/32] scsi: hisi_sas: add bcast interrupt handler John Garry
2015-11-17 16:50   ` [PATCH v5 28/32] scsi: hisi_sas: add scan finished and start John Garry
2015-11-17 16:50 ` [PATCH v5 07/32] scsi: hisi_sas: allocate memories and create pools John Garry
2015-11-17 16:50 ` [PATCH v5 08/32] scsi: hisi_sas: add hisi_sas_remove John Garry
2015-11-17 16:50 ` [PATCH v5 09/32] scsi: hisi_sas: add slot init code John Garry
2015-11-17 16:50 ` [PATCH v5 10/32] scsi: hisi_sas: add cq structure initialization John Garry
2015-11-17 16:50 ` [PATCH v5 11/32] scsi: hisi_sas: add phy SAS ADDR initialization John Garry
2015-11-17 16:50 ` [PATCH v5 12/32] scsi: hisi_sas: set dev DMA mask John Garry
2015-11-17 16:50 ` [PATCH v5 13/32] scsi: hisi_sas: add hisi_hba workqueue John Garry
2015-11-17 16:50 ` [PATCH v5 15/32] scsi: hisi_sas: add phy and port init John Garry
2015-11-17 16:50 ` [PATCH v5 16/32] scsi: hisi_sas: add timer and spinlock init John Garry
2015-11-17 16:50 ` [PATCH v5 17/32] scsi: hisi_sas: add v1 hw module init John Garry
2015-11-17 16:50 ` [PATCH v5 18/32] scsi: hisi_sas: add v1 hardware register definitions John Garry
2015-11-17 16:50 ` [PATCH v5 19/32] scsi: hisi_sas: add v1 HW initialisation code John Garry
2015-11-17 16:50 ` [PATCH v5 20/32] scsi: hisi_sas: add v1 hw interrupt init John Garry
     [not found]   ` <1447779059-136143-21-git-send-email-john.garry-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2015-11-18 15:26     ` Rob Herring
2015-11-18 16:13       ` John Garry
2015-11-17 16:50 ` [PATCH v5 21/32] scsi: hisi_sas: add path from phyup irq to SAS framework John Garry
2015-11-17 16:50 ` [PATCH v5 22/32] scsi: hisi_sas: add ssp command function John Garry
2015-11-17 16:50 ` [PATCH v5 23/32] scsi: hisi_sas: add cq interrupt handler John Garry
2015-11-17 16:50 ` [PATCH v5 24/32] scsi: hisi_sas: add dev_found and dev_gone John Garry
2015-11-17 16:50 ` [PATCH v5 25/32] scsi: hisi_sas: add abnormal irq handler John Garry
2015-11-17 16:50 ` [PATCH v5 27/32] scsi: hisi_sas: add smp protocol support John Garry
2015-11-17 16:50 ` [PATCH v5 29/32] scsi: hisi_sas: add tmf methods John Garry
2015-11-17 16:50 ` [PATCH v5 30/32] scsi: hisi_sas: add control phy handler John Garry
2015-11-17 16:50 ` [PATCH v5 31/32] scsi: hisi_sas: add fatal irq handler John Garry
2015-11-17 16:50 ` [PATCH v5 32/32] MAINTAINERS: add maintainer for HiSi SAS driver John Garry
2015-11-18 16:56 ` [PATCH v5 00/32] HiSilicon " Martin K. Petersen
2015-11-18 17:23   ` John Garry
2015-11-19  3:15     ` Martin K. Petersen
2015-11-19  9:46       ` John Garry

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).