From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755473AbbG1LAE (ORCPT ); Tue, 28 Jul 2015 07:00:04 -0400 Received: from mail-bn1on0079.outbound.protection.outlook.com ([157.56.110.79]:19120 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751842AbbG1K77 (ORCPT ); Tue, 28 Jul 2015 06:59:59 -0400 X-Greylist: delayed 839 seconds by postgrey-1.27 at vger.kernel.org; Tue, 28 Jul 2015 06:59:58 EDT Authentication-Results: spf=softfail (sender IP is 66.35.236.227) smtp.mailfrom=altera.com; vger.kernel.org; dkim=none (message not signed) header.d=none; From: Ley Foon Tan To: Bjorn Helgaas , Russell King , Arnd Bergmann , Dinh Nguyen CC: , , , , , Ley Foon Tan , , Rob Herring Subject: [PATCH 0/6] Altera PCIe host controller driver with MSI support Date: Tue, 28 Jul 2015 18:45:39 +0800 Message-ID: <1438080345-7233-1-git-send-email-lftan@altera.com> X-Mailer: git-send-email 1.8.3.2 MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1AFFO11FD012;1:XOgCR4TonXVCh9E/sUfi+hXcrywBYKnasyExtsWrA2TwkyClbPYGgjatPJ7bTyo6lgxxyRYGbzuOk5wQMGgAZlaSGaOYzul58QkXiAI/70xQV45KKHONOLuXp+ZP+3jJeX5nJLCZGThxDWZ3C2eYZ7uex2EHIh+4QjQHWNoU7UpWUIq0MiMF+E9Cee8Lmd2q4g+iC/eZUtFRP80Sc1ta7QTglEudfMuydeSeutIyw2Rwsw3QXqwgDqZ+StquY0yjjWertpuxgt2qgVzHwWV2x/Sb6KnUdEnj8Bha+t/Ms9y2wk1A6B/WvO0eBpUUnUnj X-Forefront-Antispam-Report: CIP:66.35.236.227;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(199003)(189002)(105596002)(4001450100002)(47776003)(50226001)(36756003)(62966003)(6806004)(19580395003)(189998001)(92566002)(46102003)(86362001)(50986999)(87936001)(106466001)(48376002)(15975445007)(42186005)(50466002)(5001960100002)(77156002)(229853001)(33646002)(5001770100001)(7099028);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR03MB1494;H:sj-itexedge03.altera.priv.altera.com;FPR:;SPF:SoftFail;MLV:sfv;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1494;2:Y+NoOUMQrcTBto0wR0wt349Hw/3MP/JwNUj/jlqzbQqJ03kdqAahM3Q8wTouFowndotbC4ZcwjKBwMC7zEXIp1owodo/b+o3LVP0+7BvdiBpcMa66G8gqBQIvjhVIId+2T4W6VqL9tOQ4AwmQWqkIumjWlrU7uoo6NwF9HFvL5o=;3:ABnl8D9nc+QDVvXqySSQ3Chfso37T/iEFhL2uCcLu+zug1SPByRqNA/xi90jYHUt4PGAFudUXZp+qVa3Q4DxEhMk941mxmAdpU8ID0aUbFjpDh3Dvfsf/7NGK6K29fr4p77owZyZV5ABcYk3K8TYqjGqEvgfpxatTbFPDG5icdFcl9L2WuNvhYhTRDEPRkR5Iu07Vwp/cYHAa1y0uNUlsTDRv2rZ0eAHdEDdEF1LY18=;25:UEW8WAUcFVeMRsheA4EUJyLjwFnxogP2xek+8Bu3wLyBX9pSZKAS5F4rAQFgZJE0gQnlie7jmVl86uh/vYVLst7NqnX95FNqazLDqXYF955/c3Py75f/WI+sSEm7cyvH0KWIzISFWA6pyYCQQrDEMaFljdmaSWCJWt6GUDkuCR6Oxl9ov5Pum8q0jJ/W825LRmOqsj94NFMbEdQf0eDV/llD2clmUIoX6Bm9cfCtZ0rl/WiGfc65kAFyu9MQmL/ZPiI5srhgZsW8YuxSwEU2rw==;20:PH8oIHEj6a1RFSIo97nGXX/pQpEcIuoRAXEq6uooC5iBPf8JtQrUVZ3dK+KoFATkmpclGYwATiY5JhvTvnyWYWfTAiTkkwSxX9WMMcsbw/xwFoS0YFGtsVkJbwTJvQNJMMvSmzfQ6coRuRswocQG7MuqL3ctM24JedDeaqwCeE0= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1494;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1397; BN3PR03MB1494: X-MS-Exchange-Organization-RulesExecuted X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BN3PR03MB1494;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1494; X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1494;4:xs69u090hDR776oUwLRuw29oapULWQfjfF+AwdYPZSpRto469GlTFBVMPt4pQ7KWmQgyDvsvjHhGI8xxTROgzV408xaCDhuXtjRU3+TYQUazNNe7XGDeVgeJ4UI0GnSMakHB32Guw9fmyvRYb4I06/SgjufAXdM7ZXyD2qktlyZ0Yvpq4QDP406mS81cbMc+5xw6NhxESfXSbPCnmalCAXG4BfHmS7WCr6jettcZW32horZULNo7260rkzxbBAmsG2jTYw9YyhYv0DkrSRC7OON6pzvw5LdxnI/S+E2SSoc= X-Forefront-PRVS: 06515DA04B X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1494;23:jFx+7gJG+l44bEXvNewffec2sbWHmDGQqtlcce/SoE+wbec8sXBwpnNPkgK2/kQf928sEmgFKn2MwdBRn/MR4AdeGx+SzcT5cO0v0p/nBCHSosoE1HDTzBmJXs6FWlD2DgCQ8xBN6o1v9yH/ZTcVOU6P5dTF0GdPrRQK3HHecK6Y326uneccZrTD/0hKhwYoHMRvI0lqTpXIfKCQrLiWaYnJV+dxXF8T7fQK/TcFN+EaYfs999VGN/d9zBm6rrTlD617g5LOwhTuQxrsERQv7gLJQe26lo+la+9PN4Eq2u96PnQkbIxU9snUiYB9owQGF8pvmkY/3fbsiOBVhZApceG/cNRnHOVrmN+IjjwnsQ5vYvv0rVVIo2FI8ZqLvGfG+o9zBcIS7wNUQF5g71e8iunykSUUWZjl3cPFRwPP5OIKQ5kS3sV4MMaHcvyuhahOkTUNxvomJl5FM3Igvv+L0tRPusreaeh45Lt2q5txRK4hFHwc52arPnGtx6D7e09QgADf9wrRw1BwxJexXCnEXwNnWTVnurGCz4pILfEsGjVpmw/L7cTqaueRKEBatDV3KOu8YkGGNs4teZ0ibDMWUG78+Kyc5zMDXljoTygPsDE6BgaGlrttJnll+dK4TlGJ5xdaK2+YFIvCo5w1REswFDt9CEnPw/c85Bq8wbewlDMZTi0yUkSZy07I1fSq5Nu1q6tyqxaa4oqhC26Bs/uw6JLd5jn1NnGYhW2bBBm+dFJVtIe8hmoALGaa29OvChQcuuR6+HKmo8ClbqBBFPfaAtYeT4Y0mhZnL4IUBKpYAZ2si8j79/SVcjn9wU6lBb89 X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1494;5:So3gl7xsN4ZRRXSjj0Qv3I+jQ3THwDuuwjJeoemV00txeNfwsZUzrQQHwyCCSvMxLyHmghBCmhbvxxCNlNaYat7r9+kxgziFcaBDWyqZLiDTY9R3o+wOEUiQW8KM2WGWtcawxMjUjf48amCO2aS/yQ==;24:UN8Q/vNpe+Wg7i5Eu8c9BvK5EavBJH4R+HcbiFgC0hHfCDq0hRZEdgaxItOV9l8yGz7uowLQ245uuTenICT4BThl6PtRji7m7IAfqZbx0vA=;20:PEwCg+CeUL5KghRg9IKo5ewxwMC5icy1bESJu1Q8xUChbvZRS5SXWREAB2a37Nc3mhhBmSMV6M2mjaFpeunLScZTuINaeyjlMSVPBAobN5J5sP0uPCLjqIHXjr5737Xc+0scPEEJ8jrZ5WNaztEiddT1B8vJAXXQ98kQiAGun7s= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jul 2015 10:45:45.8607 (UTC) X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fbd72e03-d4a5-4110-adce-614d51f2077a;Ip=[66.35.236.227];Helo=[sj-itexedge03.altera.priv.altera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1494 X-Microsoft-Exchange-Diagnostics: 1;BN3PR03MB1397;2:MPr1kt1WpShvumav/+e0ikgYvhARbeApMseUNrbLD3GlC40A/byHrF+GflOlCzA1OLq/KeJPTt5KVPMBb+T0f/uzMIgVroQhhJui7xsE8BqMyA0epkSwopglIvfHKyTF4CXr3XE9Vl1ZJrWcxIe/4Q2ziD9mlprmNer9iKbZXQc=;3:o1b/6ftUyAJ9+JiKa8J4fle5Ypdu4ONF7Yp+QyLTMalM1Wt7UmjamsoZC+9Py2u4cM2pdcVJWCYUfzPxPFp/BDKQHx+AAi25V7tb12z4XRsA043/TMj+fdK9Oi7zWcbiEBaj020mcbZd0IGZCdGdsnR1uw9Vbz/QsbGxxofv1AnBH63cOf3C2Sopu4KmHz80ErusljCeI1Rh0420Dexzbn/ojmRZV9WnXJqUnuQCTQ8=;25:csqvzW5syAAgDjw6IiB0zJwp6U9/+8WApbhN/EcWbJOzAsnvUgDFU/w2m1etHT+EbNTiFTNF3slIzRx6snxz6Xgvu+keNK7kRleDG7A3FnjwbfgGv1AT8TPMyPgUhTN0WKitz5Y5RXkmlVi5oO8l2k1rgUrhGvP723XQR3fnM7cdxbeI4iNaRFgOxb9Ao343U4KuT33lGVO946lnuijuA3jNAoXnmjmWdCz2KuCtOGs3NuWQs3VFDVU6Qqna1b0GegiUWZrQGUBts41YWR7x+w==;23:LjLY8bWqF2IYjFsSqv2XyF+BQx0ItPzZ3Wu9MKk4HVd6+3jL9HYHhQQd7QST4rhuvSfc7l73g63TMza/SIZCJ8JIxHWAJhFJia/LmF8/s8xgJsZXfx3jShQ6KY7hh/13fz7YnW1djy5SpdTtRnal7waHPcu4RQcMeOc1HAoKWnk5bgoAjIuO130y68BniUJaulAKdB8/jyLydQqumtQxkfBwlUkMVFJtYXyNrHRe/EUBFuaKWOi6j77iiCG8aAVe X-OriginatorOrg: altera.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch adds support for Altera PCIe host controller with MSI feature on Altera FPGA device families. Note, the MSI component is a soft IP that external from PCIe port. It is based on patch series from Marc Zyngier "Per-device MSI domain & platform MSI" [1] to get rid of struct msi_controller. [1]: https://lkml.org/lkml/2015/7/23/172 Ley Foon Tan (6): arm: add msi.h to Kbuild arm: mach-socfpga: enable pci support pci:host: Add Altera PCIe host controller driver pci: altera: Add Altera PCIe MSI driver Documentation: dt-bindings: pci: altera pcie device tree binding MAINTAINERS: Add Altera PCIe driver maintainer .../devicetree/bindings/pci/altera-pcie-msi.txt | 27 + .../devicetree/bindings/pci/altera-pcie.txt | 49 ++ MAINTAINERS | 16 + arch/arm/include/asm/Kbuild | 1 + arch/arm/mach-socfpga/Kconfig | 2 + drivers/pci/host/Kconfig | 16 + drivers/pci/host/Makefile | 2 + drivers/pci/host/pcie-altera-msi.c | 318 ++++++++++++ drivers/pci/host/pcie-altera.c | 576 +++++++++++++++++++++ 9 files changed, 1007 insertions(+) create mode 100644 Documentation/devicetree/bindings/pci/altera-pcie-msi.txt create mode 100644 Documentation/devicetree/bindings/pci/altera-pcie.txt create mode 100644 drivers/pci/host/pcie-altera-msi.c create mode 100644 drivers/pci/host/pcie-altera.c -- 1.8.2.1