From patchwork Wed May 17 10:49:35 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Garry X-Patchwork-Id: 99968 Delivered-To: patch@linaro.org Received: by 10.182.142.97 with SMTP id rv1csp141407obb; Wed, 17 May 2017 03:24:56 -0700 (PDT) X-Received: by 10.99.139.195 with SMTP id j186mr2995213pge.134.1495016696732; Wed, 17 May 2017 03:24:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1495016696; cv=none; d=google.com; s=arc-20160816; b=JAJC5YDVPu2K+R1wxOkD91n+mvBrfMPNaRcm6pVp3SPaH9ZrJUZfEnzdEgShCMkd+a h7C69dr9nBdNzP8hS74tdk73CSnfmT0TkwwFAHHM4I7msA6I8mfUc9/R+IMXhoGu6lzF Jmd3k0NsHEWB5hhzF4YwEM7Qii3P4M81BIFwncgAnNY11rQW/PcjODjeOqTTyH6kccwr MshKSz3+BGkAJgbJhd/OW+FLOICXmdCyS+nDMXm0jLtfVzAM7fSSzlwhAqRQOPBkrF3B Z7ZR/QC9F+Fy+16Xm0HYPYssLXFt0+Ihq4DAmUKTOCrUO5/3TZ1QWOZW7/EU5t4327O8 F63A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from:arc-authentication-results; bh=vKmfuEQwUCJ8uL3N1vhB7vSHkGJ0hJK7xxBPZWuek10=; b=yLD1DjB3KR4YF/fyWcs95cSP8qq4q6SXz4jBF0U2bhUlnwL65JXjj8vFejpsxn89gb SlXNmW073dKWUzRTtv4TQC2ASkd1TcggwmCgjJC6iPrYvCrXdIE5IMN0RABTOPDTxfuh Z6IfURMpWTObCKp6qVGnPG4wEe3dkIEg9rbNCwp7fucB+Tol3EvZFCzGVpoA57Z9D7Hv /ga+2sG/LIOH0f7tIhZHYd6yez6B2767nUXoToVfD6pVT8htBAVEqMM2THsCBSXoXQm+ QGcRr9XKzakOEdT/pHfJduahLDpUMYt6oLaN8Ta4x0wUcrvvy9cfGgF1HGYeJZXfl886 2ppg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g9si1693027pgc.82.2017.05.17.03.24.56; Wed, 17 May 2017 03:24:56 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754138AbdEQKTn (ORCPT + 25 others); Wed, 17 May 2017 06:19:43 -0400 Received: from szxga01-in.huawei.com ([45.249.212.187]:6308 "EHLO szxga01-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752430AbdEQKTl (ORCPT ); Wed, 17 May 2017 06:19:41 -0400 Received: from 172.30.72.57 (EHLO dggeml406-hub.china.huawei.com) ([172.30.72.57]) by dggrg01-dlp.huawei.com (MOS 4.4.6-GA FastPath queued) with ESMTP id AOT12407; Wed, 17 May 2017 18:19:37 +0800 (CST) Received: from localhost.localdomain (10.67.212.75) by dggeml406-hub.china.huawei.com (10.3.17.50) with Microsoft SMTP Server id 14.3.301.0; Wed, 17 May 2017 18:19:30 +0800 From: John Garry To: , CC: , , , , , John Garry Subject: [PATCH 00/22] hisi_sas: hip08 support Date: Wed, 17 May 2017 18:49:35 +0800 Message-ID: <1495018197-120535-1-git-send-email-john.garry@huawei.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Originating-IP: [10.67.212.75] X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020201.591C23BA.002C, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0, ip=0.0.0.0, so=2014-11-16 11:51:01, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: beb17df3ecddf56d71fd647f4d04e9b7 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset adds support for the HiSilicon SAS controller in the hip08 chipset. The key difference compared to earlier chipsets is that the controller is an integrated PCI endpoint in hip08. As such, the controller is a pci device (not a platform device, like v2 hw in hip07). The driver is refactored so it can support both platform and pci device-based controllers. File hisi_sas_pci_init.c is introduced for pci device probing and initialization. Common functionality is still in hisi_sas_main.c, along with platform device probing and initialization. New hw layer file hisi_sas_v3_hw.c is added for hip08 controller support. HW revisions v2 and v3 are very similar, but it was decided to keep support in separate files for now. As for the patches, (ignoring #1 and #2) the first few reorganise some functions from v2 hw.c into main.c, as they are required for v3 hw. Then support is added for pci device-based controller in subsequent patches. And then hip08 support is added in the final patches. John Garry (4): scsi: hisi_sas: add pci_dev in hisi_hba struct scsi: hisi_sas: add the initialisation for pci-based controller scsi: hisi_sas: add bare v3 hw driver scsi: hisi_sas: retrieve SAS address for pci-based controller Xiang Chen (18): scsi: hisi_sas: fix timeout check in hisi_sas_internal_task_abort() scsi: hisi_sas: optimise the usage of hisi_hba.lock scsi: hisi_sas: relocate get_ata_protocol() scsi: hisi_sas: relocate sata_done_v2_hw() scsi: hisi_sas: relocate get_ncq_tag_v2_hw() scsi: hisi_sas: add v3 hw init scsi: hisi_sas: add v3 hw PHY init scsi: hisi_sas: add phy up/down/bcast and channel ISR scsi: hisi_sas: add v3 cq interrupt handler scsi: hisi_sas: add v3 code to send SSP frame scsi: hisi_sas: add v3 code to send SMP frame scsi: hisi_sas: add v3 code to send ATA frame scsi: hisi_sas: add v3 code for itct setup and free scsi: hisi_sas: add v3 code to send internal abort command scsi: hisi_sas: add get_wideport_bitmap_v3_hw() scsi: hisi_sas: Add v3 code to support ECC and AXI bus fatal error scsi: hisi_sas: add v3 code to fill some more hw function pointers scsi: hisi_sas: modify internal abort dev flow for v3 hw drivers/scsi/hisi_sas/Kconfig | 10 +- drivers/scsi/hisi_sas/Makefile | 2 + drivers/scsi/hisi_sas/hisi_sas.h | 42 +- drivers/scsi/hisi_sas/hisi_sas_main.c | 280 +++- drivers/scsi/hisi_sas/hisi_sas_pci_init.c | 286 ++++ drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 51 +- drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 175 +-- drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 2090 +++++++++++++++++++++++++++++ 8 files changed, 2714 insertions(+), 222 deletions(-) create mode 100644 drivers/scsi/hisi_sas/hisi_sas_pci_init.c create mode 100644 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c -- 1.9.1