From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756533AbcBEVcH (ORCPT ); Fri, 5 Feb 2016 16:32:07 -0500 Received: from mail-bn1bon0061.outbound.protection.outlook.com ([157.56.111.61]:46930 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751601AbcBEVb4 (ORCPT ); Fri, 5 Feb 2016 16:31:56 -0500 Authentication-Results: spf=fail (sender IP is 66.35.236.236) smtp.mailfrom=opensource.altera.com; codeaurora.org; dkim=pass (signature was verified) header.d=altera.onmicrosoft.com;codeaurora.org; dmarc=none action=none header.from=opensource.altera.com; Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=opensource.altera.com; From: To: Rob Herring , CC: Moritz Fischer , Josh Cartwright , , , , Pawel Moll , Mark Rutland , "Ian Campbell" , Kumar Gala , Jonathan Corbet , , , , , , Alan Tull Subject: [PATCH v16 0/6] Device Tree support for FPGA programming Date: Fri, 5 Feb 2016 15:29:57 -0600 Message-ID: <1454707803-27947-1-git-send-email-atull@opensource.altera.com> X-Mailer: git-send-email 1.7.9.5 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: BLUPR01CA035.prod.exchangelabs.com (25.160.23.25) To BN3PR03MB1509.namprd03.prod.outlook.com (25.163.35.148) X-MS-Office365-Filtering-Correlation-Id: 17000360-785f-4ab2-3c86-08d32e73c315 X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1509;2:3QvjmZPyIwPDAU4zvZOwT2RoHDWapnXH7TB/MVY7+5sBy6d00d33SeNPHv/OzR8a+JrJ1B9EakUP+8AtP8lSf4xWtL20MpqZ+Gj3dsaHfrdENbfTSB9N1bksItYywoI9L81aX4Qq76Clpbcwi8NEVBJ81pbG0AUgLWsUlVNjBaRvVOCiYO1Zh4Guvv1iFBaK;3:mmTm6jCdvmLIx1ZVzn2il4kqTcfA25LQQ+ZnV9DnsKOZfGomBA4ML1svdiCPBj7gwoOFUWSLoIeyWHAomh2QiRrtSw4MAJnziyh97KCAN+SAnnvY3cqTcnhlDGL8nQ0J;25:Ximoea9xps+TKdX4euHROS7kpG/Wza214kFHjNgyp1vJ9N1sUH4mu+h2N15Bu542PkoFB6k9wOS4GeCW01J5sxwWqHH9bqU+dh8uoETb+ksUCjC2tDQ+URREWkasuC6/ZidWKUYPJhMabaQLKmYRUBrTuvwFnW/GyeI5RFmZ/f8CI8DyG6tio+JB76lqT2DtE/ocsxo3EEaTSsIEZmLUOujkgeVCA1KzxCO3PmJdeSVnSqROF617pJukPCJUlEOAy2pshtT1AwOwxPi4YVu4+3w63X63E5IaPDwwZaATwMAfjnD7eDbg/U+2nUxbAZPm;20:Wx8/HbG97mt9vI/KEnqTsDhgCO7wsN2O+Yux5eATdqE6BGK3xRkEFCzUatS9q1Wp0h1lNQ98qQCBOs0SIoFxLMIF9u9X6K2ZpK5sN0caUHU+QNjhQ5z+jwbk9QfIgJXJUyBkuCbozug3+PTUghuWnZm9VN9yF0uGbnSV1x8WJvo= X-Microsoft-Antispam-Untrusted: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1509; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(80048183373757);UriScan:(80048183373757); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001);SRVR:BN3PR03MB1509;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1509;BCL:0;PCL:0;RULEID:(601004)(2401047)(13024025)(8121501046)(13015025)(5005006)(13023025)(13017025)(13018025)(10201501046)(3002001);SRVR:BY1PR03MB1515;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1515; X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1509;4:14a0dC8AQuQOWN3tbtojDTjSW5M26a3x707lvR01EGko+oMt6i6q/0SfsNjtw46OtChRCLaYh63JmHcv2HPt5gJgCLgabzsVlG+AcEvbXUettFC6IZRDZYkey/xbwxCMzLjk0K3iIWnZIv/6j0F0Hs9m2i0LM2zfd098YuaHCxjebjFgYv6+zmhAILj0E0IDXYDntRHv2nllrIcyPqQ0C65hRZqA2OfUrxWAjXRwvT3gsBjiaYWYidva1J3Aeyl+k7/vwcYTjmjl+pReAkoX3BPOW3qwmpwb/nR6EOjhKFQ+BSVoeHhmH3rR2/a7+vUF2EYEE9OnU3CaxdoZaOidgbX0c5GPwofUfRyJJ1+XnBBpN2wnicnTiKzQRB7pdbq1TbLNe2mtXRtmrmaTsVQy/N6LdcJ/5kdRwYRXDv0QdwA= X-Forefront-PRVS: 0843C17679 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(6009001)(229853001)(5008740100001)(6116002)(586003)(2876002)(2906002)(5001960100002)(189998001)(87976001)(4326007)(4001430100002)(5003940100001)(1096002)(40100003)(50466002)(5001770100001)(86152002)(92566002)(107886002)(3846002)(5004730100002)(47776003)(77096005)(66066001)(50226001)(19580405001)(19580395003)(122386002)(42186005)(33646002)(53416004)(86362001)(50986999)(7059030);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR03MB1509;H:linuxheads99.altera.com;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?us-ascii?Q?1;BN3PR03MB1509;23:GrtJ1NdUo0ynM0ENEvqxcpTw6PGlQx7c2a03PTtoe?= =?us-ascii?Q?SJzLI/FqygG7oju8F7srtExM4/mdubAqgABmTjlvOCwocHpQwQGZjgCYyZNM?= =?us-ascii?Q?51mwZ5MM6KiH/o01oUq1KyaRS5rRhUfif3Gv8WSD7LUBd6GrN6CKQypBa/Dk?= =?us-ascii?Q?OBeXVmOpfarYtF07T9xEK6OjbNf1IBFYk4d4NVgBzyYbLVowle8QvQPO8snL?= =?us-ascii?Q?/MfQV39uQnmGclI/u4/Zv5WJfOmNBJXN7v8Uarhqiu1kLSVNMXtGqIOrNXnV?= =?us-ascii?Q?Nuo/VWvlvHazQ7JhPpcfNhCd9VTxrtiI5sufFSodAyFb7+t18LBJf1sfJah+?= =?us-ascii?Q?9DiVAXv9A9ZpBtuTButh1/RdRf1UHTyzcYTLuKidhpa20PQ26kSsoA8Ajn9Z?= =?us-ascii?Q?hbD/4V8EpmgvEQAlLCI1+BbP2CteF1w2doAoGDQOa1UpDwUFOHig5dhLC+aV?= =?us-ascii?Q?sxdTBJMfYeZdobML/pRcFU/JdMlKvQOO4Qs2XpWQNqbXkW/S4VAodLz7yLkc?= =?us-ascii?Q?BA43uTDhDRBsmX2+TXnZnkSg+G4yluM5Rw5ImKbc4+5wQRn8NhIJ0u4D72Fn?= =?us-ascii?Q?IntDZP5tFfo/A12CIEp6WZtp6uu65xesoHeIOQANhBqwhCt/DarW2iqJN0Jm?= =?us-ascii?Q?RVg0k6LM8wgJZr8teZq0JBFRQKJtHEzlI2Ez8CHWxYUd4ZGhQQ3RCbbr0AM+?= =?us-ascii?Q?mJRrA90z3aOO2TlBT3t09S5TIznncjC3Ot4c3ymUo4qy97HJ9SBSzHkBA4u0?= =?us-ascii?Q?H16bKWXlq7soFSRyWfu+CCkJXFHmD97QQbQ717slfaHubPW2lSrMBrsHqDRN?= =?us-ascii?Q?24NzpLidHcFTmSu0zAZyGY49Kg9a/2JXadgp2DvQjgf6XPwHP9endKqJmi0M?= =?us-ascii?Q?m7OVhkcDKwB8x5xC45b2lmEAmQty8Xb2tCAcZ8VIWNsZmaciH1ruXv8NCyFB?= =?us-ascii?Q?cacrhc6Wq2wHL6DXtVQrWv3xs8dKHB9XxHeRLcjuw=3D=3D?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1509;5:ZaEN/xd7Q6Cth6jSRH7pV5O/Xz3/41MVFn0gTuT3gJJTSktWfDORhJxwUfo2FylSXMhLZZohlhGtylbs5z3gCu76RQwdqJlSgGvymp8jOmY81q6AQJYtZYjwas0YAK9QMB1wEu11wxjNcC7SYMSwQA==;24:8utXtoOMJfaLN5xgOpN0i1ud65SxmsW6D/+UbsS3PPziS/7ZxzjXc1laihHkPgc6JSMl+aa6u11Mh5+BCcApxWX1Ca3B3nUE/HkePuJkps0=;20:dLcjogFsDfcqW0/Ml/HIiealdwnSHtNF07UlEXUS3fnCF7mqaJiu/63bGCNV/k/955OWP4FktNPeaSUJ7LTCrsdpzjgeu+rSQDe2wvoPDWe4rMtONdk76e+K0GSTOKkVbfHCZPJsIWG1l5NRxNxlk8p1Qcxlcz4rzDkfPLagij4= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1509 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BN1AFFO11FD033.protection.gbl X-Microsoft-Exchange-Diagnostics: 1;BN1AFFO11FD033;1:ie1xEzSzHLg+0UGDZlJLdPlBD1TKzyfktzjn4poqQRje1kgHwHyPyOgTueWhCFA0RzvIPJzFGF+fTAq6qkcFWfQOVpiqyOd9xK1SPMmIxEMNksdupblsZGOVF8s52dZF7NvVLdgec01wgv1sNy+VXdkGme9y6MtwDl0GFxrIzOAjH9i/V1XdgW+9Co2oGg1OheP7gl6fI8bD+QeSFOuBMgAiRUMxasS9aJI0DVK+xxzOb6cYRpIrQXSmY9j5vaGZwTpHFR1rNi5dnA8fMdAzQHwK+Vc/YACr0W/dRTsJGII2+hzq7/DtZfw/3a5vwKGqF9VmELu/q2EOzmxx0nvgVeKKEYVyY7+dI6Gf8SxBCuQCkVNf5OHWgMgFpezpb2po8s4Tbruew4yiBPMr14jWhyp2QBaL+9hY7tlJtjnyggpHBZM9sKROpidKeNWhtbdto5Kxp8aoBEMYY/cW/UKMsg== X-Forefront-Antispam-Report: CIP:66.35.236.236;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(3846002)(50466002)(86152002)(956001)(33646002)(92566002)(86362001)(66066001)(6116002)(21840400001)(19580395003)(19580405001)(5008740100001)(47776003)(11100500001)(50986999)(6806005)(4001430100002)(50226001)(16796002)(85426001)(5001960100002)(5001770100001)(106466001)(586003)(3720700001)(122386002)(105606002)(229853001)(2876002)(107886002)(4326007)(77096005)(189998001)(1220700001)(5004730100002)(40100003)(87936001)(1096002)(2906002)(5003940100001)(53416004)(7099028)(7059030);DIR:OUT;SFP:1101;SCL:1;SRVR:BY1PR03MB1515;H:sj-itexedge04.altera.priv.altera.com;FPR:;SPF:Fail;MLV:sfv;MX:1;A:0;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1515;2:RnrlnuwKQtfc8xqfElkboWx0jEX/8/HahsoVvlDPAr1Rz7yLyzdn5j06QFhaA1aKrdcRW5qbChLciNbPRx/oMHn11A4D+S2w9XkSYpAYI6t3tynFgYWNwIfO21SfoZtJhwu6TIFGma2p4Pbe4nsT/QhlEdFgxJHraGb25IQfWQEWCBDjJu10zTyAJEjorY7d;3:wrc1bhL9u+9BojI1Own2mQViKCoaJQKgE3YpqL29wSQzUgBo5eRVehqrZvuk5AhdZZpePJSEACIVH4D9Bbh62WD5V9EImR8lXq958csCVeZyn4sFIDpk4CHPqE2ra+3O0T+eBOTorJq31xBSTSOKqQDNJAYtV6C27ZJMzDQUZwBG4FlT0/eKlOZCJl23Cd6Yv39uUkeUESUbsWwJftD6ptWGgrBxek+qGXzi/r0kZzeHP+9vA6PDf1EedTyTslMz;25:RdZcCHf5IsT638vEoiGADM91D5gmhyNm0oPKvSFG7hHv0+KM8m8LgIHYnp6MJUcn1UkiYYsDqeSfNO7Al0tD2a8j+Y41JVc2RniWbHUCZ6G6rAXdSRH9F/TXYk23/3aoe/BKTWFxZwyMOdqJ4Ef1rJYDxw3gNfvxLCFBFu8TLXSGXqcZi9GBfBza1O0yMmyZWi39C63YRbw0dfCLgZuw5iBCBJom615XE1zWZ7yZTdxT2tGRuyWEYbV26q5hIWKuNJw+XAcZpkNw0V6R/5YNQr1s/ja8jdZ0qHJyMIVb33K4RaOLd1l7ku4WS7grH/Zj;20:FO9KPF2qRTMNfRCTffMfd2m1GgkjNG6fqOB0KnARJBqVB7sDxTqGprpS5JB65BJsi362XuSnEAYhk3lxIL21TtGrQd5nP7+HZunM2JBfKrv6LdJ09klDWSthut4eFPqEn4FvVxnsyrAoW2SFekeaVWsnzm1q8LOA6Nw7SSeNXrs= X-DkimResult-Test: Passed X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(3001016);SRVR:BY1PR03MB1515; X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1515;4:o6ZshVde2ZIdC4EpZiYgB1vHz+5fuWCPXAj63YpKpZdi8nwDqBpZrQDBZ0Rff07mNsTxU9K2nX0qqzjEFGUGG8Up9c11JRdgWXKLS8P1oakoBbiOFQ1pTeXPQzbVkhal0k725wOFVNlWfL16Bdhg062DcWl4Du2CN+NmjwaDNneiqCf8JfXD3mbFqqG5MXtPEUBuYaUumSFvyM/QwQj1ku7jWajugdH+x4k+0bs0j927W87SM0tCGkMdM1nMj6gR6reM66aMREWygL+WLW76Tajb/qtZwxYdYBqcqRvTWpZffVANHflQ7eHHRVeXYfWRVSxQoXcoj7QuwTvUYMxcnlSx+ILrSyF75UszY6U9DjpO7MAFvhmcXXfWbQtv/BddsDasxp2Yy0BGfRToezyfZ508hy4amIMFPYAkLYJEQpUnQdFjOY0gkeP+Nir6o1v90vVugpW2WqykHQYF5gAEXhP67c8twyvA2fFn0ecU7VpSHSxLdG866MjX79dRJsME X-Forefront-PRVS: 0843C17679 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY1PR03MB1515;23:mLVMPo8Mt3ceCIw6zqdqoDD0c9zc+05oRrCny8yZC?= =?us-ascii?Q?6BaWashDB2oIyjREJIFoNNaw8iIj4ylVpDb5t1KyDypyIXPbXF87UhQHtkUp?= =?us-ascii?Q?z93vEOLkcWoF/T/su4GwtnjaUhsqHEo94vV6P8TfazAJt7cu06eQtcIHGl0p?= =?us-ascii?Q?/iL3G0jq4DBroB0eRb3UM0j4xUU4hWN1NQE499OWgYo3S/lD4JbP+VDjLd9A?= =?us-ascii?Q?WzWTA9TmYKquw80NJ6L5LYQlK1PZTZcbxTQv6Z3RThXMPk+GjhYDcvsezU8H?= =?us-ascii?Q?LzDtAlw97OmeQ9uu+lZU2BBiGM8kxk2vU/Ba17qRsRmPIusCk/cpwrBlHfdZ?= =?us-ascii?Q?Mpvq0bHDqcxGNB0ZLYzkvZmmbiAZNo3xWWF2Qc7YGnh6GeHVE+7i9vquTMJ3?= =?us-ascii?Q?UNyfZ7ljWAO54/85uwo0925vTrwL4rsobPe0x4sPiQg0pKxfPOJk9flGaJ0e?= =?us-ascii?Q?9eatehp9bOW64Gxy7yJLC6nL5n3j345JZV81G+TqeRdymLAUaTI481bwyJ0w?= =?us-ascii?Q?4zHJ94bMFm8vZjEZvTAkgJL+y1CQk57Je89meC5+6TJMzLnRMk0Ok3RKkeWS?= =?us-ascii?Q?vXpopn8mi6yL/uMLB6jBAhyaQgC5LSiGTHxOH5Sw43Z2jyopO4enbivygt5t?= =?us-ascii?Q?fedcOpTIZ76FN56H8T5Y/WLhT/C8cG18u7YTctoLw1WEIkE79FScdaGGnqyx?= =?us-ascii?Q?XdTW2xlhLtSHa0QutA7imMc6ZpZJP4mtd99odU4fSQXtc2MY4FzET1Mui3iv?= =?us-ascii?Q?9sPuH+PmIMd8dPZoqb2Zn4nicPFAuiZl6kzW5b4pHVccW/ZHNrmpif9efYow?= =?us-ascii?Q?Ij57kz4AUQeBU2+BVGHrZevCwKlIV5kpUN4B6cIA3iXNkT0hA2RXyTb5D9X5?= =?us-ascii?Q?deql12JulY8g63Tuop3I0XreOm7KqdEAlFosIKf9oDviOBeYF0dmTSNkNsO1?= =?us-ascii?Q?ac3G5DD6PnWTUngiag4WwDPe/mq3AS+J9tGwJIP3Xnm+hfJuyhOlLWBcJ/Ok?= =?us-ascii?Q?irK4aMFprsUAnuuvF2i56hOBX/u3onT+GK7VneQbZfEgDiWFLJNoH/1xbaMP?= =?us-ascii?Q?iwJzpdP2wAVOqrJIdTzHsaBteH6Je0gbjn1eatlIf2mTZM28a+7d8DJt2+df?= =?us-ascii?Q?39bHLsqcVKzTooF0hSeWfUsnQbkjvWy9eoEJ77BBHrTAdUKQcLCKpEk4dUqz?= =?us-ascii?Q?uMZ7ZDDjS4Q6BoYUkrHJ93IgHbniHxM10o/Oth/2qiOVUNWaaS2NF9wOb7It?= =?us-ascii?Q?p4OgFQ41bggy6Jg0JEOfSjISHmAKkhSwlId8Vm58gM3syAkObj2pWJX6kNTu?= =?us-ascii?Q?mMqibM1fqHuSL4FPorIOMk=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR03MB1515;5:o6rF7cd2cUMCdzDaXYiP9h0XO2CaR8g4v0yGleU2niBZ0eSVz6aTUtlvZ2Z0AVbdIAWLm3Iv+YtoLpJE0Xc33wVVfkO3g8iCQe/hrHwj2GV886yI92gaAM5HoebKXkgSrNpOB9CMPecQCeM5GH4YLQ==;24:9UmghfrdCu2gquQkoTwxNxbZFFuH16t1B94fd03vnTJIROm2iVbZEvoawBGDXVt0noUeSwod1WYdclf1Ta+PJtWxGZmbSmq9VCh7UrbYJew=;20:aebkPrvgTTdkxr6xWRW3yBG5QT2QHHvOPDgoCqgJSrzk77PaRGmhoycMgkH4oPR3bQdRBCiGtAtSfDRLEa5Es9Up4R72Yt1pqMq+idr0KroJNoKao1vz7lbX8HRWBvruLMjK1vTAUVrfD+5bPoRyY547lEgOL0S52moH8p8fhbk= X-OriginatorOrg: opensource.altera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Feb 2016 21:31:51.4069 (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.236];Helo=[sj-itexedge04.altera.priv.altera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB1515 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Alan Tull v16 Refactors the FPGA Area and FPGA Bus into single thing called an FPGA Region and eliminates using simple-bus. I'm using the word "region" as it's a term is used in the literature of both the major FPGA manufacturors. Changes for v16: * Refactor the FPGA Area and FPGA Bus into a FPGA Region. * Don't use simple-bus. * FPGA Managers and FPGA Bridges are now specified by phandle using the "fpga-mgr" and "fpga-bridges" properties. fpga-bridges can specify more than one bridge. * Device Tree overlays should be targeted to a FPGA Region. * The overlays need only contain firmware-name and the child nodes. * To model a system containing >1 partial reconfiguration region, an overlay could add FPGA Regions to the base FPGA Regions. * Child FPGA Regions inherit the parent FGPA Manager, but specify their own set of bridges if needes as partial reconfig regions will likely need their own bridges. * All this is discussed in bindings/fpga/fpga-region.txt One other highlight: The little engine that runs this thing is a reconfig notifier in fpga-region.c. This notifier that will program an FPGA if a "firmware-name" property gets added to a fpga-region. Then it will call of_platform_populate(). The current behavior in Linux when a DT overlay is applied is that the reconfig notifications go out in heirarchical order: first notifications are for the properties, then notifications for the child nodes. So an overlay that adds a 'firmware-name' property and some child nodes to a fpga-region will cause FPGA programming and child node populating in the right order. One issue with the dynamic DT stuff: I've tried returning and error from the notifier if FPGA programming fails; the error is noted on the console, but the child nodes get probed anyway. Alan Tull (6): fpga: add bindings document for fpga region add sysfs document for fpga bridge class ARM: socfpga: add bindings document for fpga bridge drivers fpga: add fpga bridge framework fpga: fpga-region: device tree control for FPGA ARM: socfpga: fpga bridge driver support Documentation/ABI/testing/sysfs-class-fpga-bridge | 11 + .../bindings/fpga/altera-fpga2sdram-bridge.txt | 15 + .../bindings/fpga/altera-hps2fpga-bridge.txt | 47 ++ .../devicetree/bindings/fpga/fpga-region.txt | 348 +++++++++++++++ drivers/fpga/Kconfig | 21 + drivers/fpga/Makefile | 7 + drivers/fpga/altera-fpga2sdram.c | 174 ++++++++ drivers/fpga/altera-hps2fpga.c | 213 +++++++++ drivers/fpga/fpga-bridge.c | 388 +++++++++++++++++ drivers/fpga/fpga-region.c | 460 ++++++++++++++++++++ include/linux/fpga/fpga-bridge.h | 55 +++ 11 files changed, 1739 insertions(+) create mode 100644 Documentation/ABI/testing/sysfs-class-fpga-bridge create mode 100644 Documentation/devicetree/bindings/fpga/altera-fpga2sdram-bridge.txt create mode 100644 Documentation/devicetree/bindings/fpga/altera-hps2fpga-bridge.txt create mode 100644 Documentation/devicetree/bindings/fpga/fpga-region.txt create mode 100644 drivers/fpga/altera-fpga2sdram.c create mode 100644 drivers/fpga/altera-hps2fpga.c create mode 100644 drivers/fpga/fpga-bridge.c create mode 100644 drivers/fpga/fpga-region.c create mode 100644 include/linux/fpga/fpga-bridge.h -- 1.7.9.5