Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760391AbcCDWcA (ORCPT ); Fri, 4 Mar 2016 17:32:00 -0500 Received: from mail-pa0-f65.google.com ([209.85.220.65]:34082 "EHLO mail-pa0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760170AbcCDWbz (ORCPT ); Fri, 4 Mar 2016 17:31:55 -0500 From: David Daney To: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Bjorn Helgaas , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Will Deacon , linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org Cc: Dann Frazier , David Daney Subject: [PATCH v7 0/3] Add host controller drivers for Cavium ThunderX PCI Date: Fri, 4 Mar 2016 14:31:45 -0800 Message-Id: <1457130708-3231-1-git-send-email-ddaney.cavm@gmail.com> X-Mailer: git-send-email 1.7.11.7 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2741 Lines: 64 From: David Daney Some Cavium ThunderX processors require quirky access methods for the config space of the PCIe bridge. There are now three patches: 1) Refactor code in pci-host-generic so that it can more easily be used by other drivers. This splits the driver for CAM and ECAM access methods to a separate file from the common host driver code. 2) Add the ThunderX PCIe driver to external PCIe buses, which leverages the code in pci-host-generic 3) Add ThunderX PCI driver for internel SoC buses used on early ThunderX chip revisions. Changes from v6: Updated 3/3 to support Thunder pass-2.x silicon. Changes from v5: Added Acked-by Rob Herring for the device tree binding in 3/3. Fixed typo and split large functions as suggested by Bjorn Helgaas. Changes from v4: Added patch 3/3. Stylistic changes to 2/3 suggested by Bjorn Helgaas. When expanding config write width to 32-bits, mask out unintened writes to W1C bits, also suggested by Bjorn Helgaas. Changes from v3: Add some Acked-by, rebased to v4.5.0-rc1 Changes from v2: Improve device tree binding example as noted by Rob Herring. Rename pcie-thunder-pem.* to pci-thunder-pem.* for better consistency. Update MAINTAINERS to reflect the changes. Changes from v1: Split CAM and ECAM code from common driver code as suggested by Arnd Bergmann. Fix spelling errors in pcie-thunder-pem.txt David Daney (3): PCI: generic: Refactor code to enable reuse by other drivers. pci, pci-thunder-pem: Add PCIe host driver for ThunderX processors. pci, pci-thunder-ecam: Add driver for ThunderX-pass{1,2} on-chip devices .../devicetree/bindings/pci/pci-thunder-ecam.txt | 30 ++ .../devicetree/bindings/pci/pci-thunder-pem.txt | 43 +++ MAINTAINERS | 9 + drivers/pci/host/Kconfig | 18 + drivers/pci/host/Makefile | 3 + drivers/pci/host/pci-host-common.c | 194 ++++++++++ drivers/pci/host/pci-host-common.h | 47 +++ drivers/pci/host/pci-host-generic.c | 181 +-------- drivers/pci/host/pci-thunder-ecam.c | 407 +++++++++++++++++++++ drivers/pci/host/pci-thunder-pem.c | 347 ++++++++++++++++++ 10 files changed, 1102 insertions(+), 177 deletions(-) create mode 100644 Documentation/devicetree/bindings/pci/pci-thunder-ecam.txt create mode 100644 Documentation/devicetree/bindings/pci/pci-thunder-pem.txt create mode 100644 drivers/pci/host/pci-host-common.c create mode 100644 drivers/pci/host/pci-host-common.h create mode 100644 drivers/pci/host/pci-thunder-ecam.c create mode 100644 drivers/pci/host/pci-thunder-pem.c -- 1.8.3.1