From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754877AbcC3PZt (ORCPT ); Wed, 30 Mar 2016 11:25:49 -0400 Received: from mail-by2on0076.outbound.protection.outlook.com ([207.46.100.76]:48202 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752459AbcC3PXe (ORCPT ); Wed, 30 Mar 2016 11:23:34 -0400 Authentication-Results: spf=fail (sender IP is 66.35.236.227) smtp.mailfrom=opensource.altera.com; vger.kernel.org; dkim=pass (signature was verified) header.d=altera.onmicrosoft.com;vger.kernel.org; dmarc=none action=none header.from=opensource.altera.com; Authentication-Results: alien8.de; dkim=none (message not signed) header.d=none;alien8.de; dmarc=none action=none header.from=opensource.altera.com; From: To: , , , , , , , , , , CC: , , , , , Subject: [PATCH 3/7] EDAC, altera: Make OCRAM ECC dependency check generic Date: Wed, 30 Mar 2016 10:27:44 -0500 Message-ID: <1459351668-14622-4-git-send-email-tthayer@opensource.altera.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1459351668-14622-1-git-send-email-tthayer@opensource.altera.com> References: <1459351668-14622-1-git-send-email-tthayer@opensource.altera.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: BLUPR11CA0019.namprd11.prod.outlook.com (10.141.240.29) To BN3PR03MB1480.namprd03.prod.outlook.com (10.163.35.143) X-MS-Office365-Filtering-Correlation-Id: 2ed8051f-5080-4ce9-6e30-08d358af409b X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1480;2:qHHymbEX7rB7k+CSKhwlvvtpAl4yqSoxyeGyIyO5n/1gRIQJpe/hWvd4UQENSnCjD/YfzQj7KirbDGLSRKldXeMAnWnjTl8RfuY3ODKHyK/82OMj9/1fQupiSGmjRW9zMLode6jZLeANKiVmxVShlOmzBY42ztqjGOdgcgh+YyWJKh0MsvSVIyUYZLGKmMmR;3:NaUz8GfLtFzEaSyXA0CGaAovmnYDg5oUxnjE4zjuXL3qTz+/UV2HnfR6MidfiP4eydyRq/MMwo+xI30yQY4pjyothTxH3rarR50W6zo/GvTRw5FngQXdIKRRI95TYZ7R;25:bTUFcn4x8tEuJmQ7awrzZXUW+5+xnFWxKwZZNN5PTCL9SD//THuZCk//NVPh+TA18tjuschPckplLdKlXzkynb4aoIE1lOuj06y3E243N0cs7O6kys53O+k4wXCepuXHCtUwQpSDZmn2jWllNZMguH8Gzx57acJ0DO/I7tylJOWgkLIqoixx4xk3E1qe+4bigwDMpsKHTLQp9/rhh4+K0LMJc+nhnCImyi4d3YRB7DRZbzcOoy8O5lZ7v1CF4qKvERkJhW2aUTvX8Uk8Q3Lf6JskjRQBsW/r2wR1Igl4qwms8Ja5cglqm3GGaFHd/Y5n6ktw0gJNVrrDBYk52sxILzNEl0shMeodUKrDUs7iiM3b8e2I/p4ymNl6YC3Pp3YxpaBz+tmMjeNulX+vhBI1D4M8JX/BMDiMybyZnTkGh8oQKAIHKWMJWJ0g3hM2dc7XwKj7z0pG+9L0CyHSN7PmQGBd6dhylKVAMomE5/QwuPEIJF2dravIfqkbdNg8Pn2mbXlUmQjv+q1+z2A2A/Lyqju3tyR3v3+565h0zi8ng7EhIvSTOCHHsg1Nbju+lguxgzZreeI+1s3b+QdBW6uinGR/FT6LwnKD1n2RQM9cuAonQnhHTIDqMxR5z7ewEt15 X-Microsoft-Antispam-Untrusted: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1480; X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1480;20:vd8I+/zBGHtA2Z4CL0e0qwaYc0W0y9AV6YasJK/9d9u+7tYjg/wbrTRvUhAGWrTFX9qX2hw5uiFKymw+eTVo1Qwf3JvaJ65G82/KG52m5mmL9gikHyveeltYCXxVfxkh/Qw+H1q7oEavTzlMp1/RrdjQbJetZR5gkUsDX97kZAA=;4:tzlHh3GOnray3IRiea0bY3MYNOtgoooN6diWrbRYTIpnv9exJJjMaR+gKm2nq+Ps2+9maFvOKT8Z0xu0jQ2Pn4aLikj9OpQl8aKA8l9qDWaE8i3MVgb+64MkngGHxsK/HXyHKKPKmhxlZrpuW14jsx4adaAyU2ynl7UlbHH+pb6Au9cdmnzDGE3WcSfSflKr2w51OFriSbQ8/qKy4kMGzv8ba7r3z2b5LMS1cQ5FvZBbSKX96jhw3G3SfeVzozHnewHzAYl8ZuOkMlYnbGgj2q1alZEgIbOkNuDS+UExHwYNWV1yPvSrZwpKhavB6H8GsYnycgvIE9Mfnmpxg8dNxKeXmZiMnmXhiQ/5kqHnpMade0gkYe1tiby5G3pvID+k X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:;UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046);SRVR:BN3PR03MB1480;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1480;BCL:0;PCL:0;RULEID:(601004)(2401047)(13018025)(8121501046)(13015025)(13023025)(13024025)(13017025)(5005006)(3002001)(10201501046);SRVR:BY1PR0301MB1285;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0301MB1285; X-Forefront-PRVS: 08978A8F5C X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(6049001)(107886002)(5004730100002)(5003940100001)(229853001)(50226001)(2876002)(81166005)(6116002)(1096002)(66066001)(3846002)(575784001)(189998001)(586003)(92566002)(76176999)(50986999)(86362001)(4001430100002)(33646002)(86152002)(2201001)(48376002)(50466002)(19580405001)(2950100001)(19580395003)(2906002)(42186005)(5008740100001)(4326007)(47776003)(77096005)(5001770100001)(41533002)(921003)(217873001)(1121003)(4720700001);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR03MB1480;H:tthayer-HP-Z620-Ubuntu.137.57.187.33;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?us-ascii?Q?1;BN3PR03MB1480;23:uYNa12YnAXS+jPm2gSYuZhrkL+e04X7tEDE83CqkQ?= =?us-ascii?Q?sVLxwEHmNpm1BhDqJEO+Bi5FxtmR5a0JIPnPk7zdzer7+SPCmfPLpTW7tZFx?= =?us-ascii?Q?JJuBpVNiclvxN7NKhBVEfBDZVX4K+i80hPOBv1Rihz4Bmb72+cLgpPIazQJV?= =?us-ascii?Q?V8AMR9KVSMmADNEWVqA5dIti+25tBy6oZAcPUQFxD1/VtQRloUvc3slFC/5f?= =?us-ascii?Q?As5pJsq6ZRr+Z1G10fJOM72HcZjEn9hgkFpX9uvmeXhVT9M6hw1W3AmnJvui?= =?us-ascii?Q?M4hAON6DR5LKkZdvnt5JplB14V557Cej+WSGPuAzVV5lCgrMZuzkH0SRQiN/?= =?us-ascii?Q?OG0LCcst+olsdZTz1Qbjfs/JtYxEgzSf023P6NhoVzTFRLUN7IOU2Tz3dM+y?= =?us-ascii?Q?Neu15sCdzfbVdO5oimUerT3C7l1Z7yza/b4Vs1LHFZOTeYcfeQud4Ixv9T8A?= =?us-ascii?Q?cotrWZ52PQLF0+ialbDxJp3luKXTbpHrenJ3gYDxE6y1HFVXcjQmMf9fjkKv?= =?us-ascii?Q?38hCabJYDqResckmG0WK61/aWafSHX+qM1za/tw9/snVQH02Z2QhZ9QUvVqR?= =?us-ascii?Q?YiK9U8N+ZM4Eh1Eixtr3DVekoZ72ziFNyJME6juuhSGZyQFhyQGLuLsV8LuB?= =?us-ascii?Q?pRhw8b/K1S9KhfX3ePOuHwxNn88F7ZNpQZoVSsIb9ePWWwYIVD+MzWbAnPw8?= =?us-ascii?Q?2rjmgS1Qza7lyH33JT67vFih5s4+pWrRziM3Inc+W8E9wH8waEorwg9lyQr4?= =?us-ascii?Q?bv3c5xDsN8dPOxc8CcJGwYn5n+Nagw7CIOh8eGOF3H1N5GYNsLj23p7vtZ2k?= =?us-ascii?Q?foIjTv+ONdS6SZ9wRzgwlFKD1Xi7dwouPQ1KSls45Vw8JxOVkIgyk/FbDE6U?= =?us-ascii?Q?9U9etiut7o5BstvWOTRGlh81F9UpOTbLpT/kc3t2qkSQu40EklflsqeQV4zQ?= =?us-ascii?Q?eEBLDUPYL8vSHpRDoXDJKpuE2MfI5UzmHOVj4/N6kX7Gyj6QvcWSjI/AJsJ/?= =?us-ascii?Q?3ZOLiYFLdphP5ZRAi5wWn9KCA3273Wv2Inu5uDVURCeENZwehgR29yMrEtd7?= =?us-ascii?Q?cakENVD2srCNxklLdEZpEP46huE5GPuYdJi68XzQFcZ8Y/Y6jyWtMy2zHwy2?= =?us-ascii?Q?9KShZv8HjU=3D?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1480;5:n4jPuMR7LxW2zYNBvMCUBLnEh08RqYoZt5bIh+5wTL2SiU3KtFy+R0fh7VR5nwrwmfkPmVDopVZI94lZ+zXIOLm3Wt+EwD0+m/v8EetzkHlGmtKgKyOouT5J2eYjw3HwcRxPz4HmLMqb6yZ0xcaoNQ==;24:cC5/6pV+SQ01gCh8TT2arml67IGv/tUmJO9EDiBNj4LH/ZfHVl5QcGFwO20EXv0SwljcEqxvZTXKtBAh/gqbAnWxgNZ7LqbbjsZM3HtidOY=;20:Xwrnu6hstbtXvQAfMBKA5kZGIjMSxue0zRSKanoPfAzjsQhGBPs723ySTRx9SuJFC4Ur5g+ae6y/SIHALuwmEK00yhUi2o1ADsTl6+im2UMY/11iVQ4LPl1dpgV8wijHz+JG8UpbUlYs+sB2nUgzspxFhSEp4b+5mtSZDAeIivc= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1480 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BY2FFO11FD036.protection.gbl X-Forefront-Antispam-Report: CIP:66.35.236.227;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(229853001)(1220700001)(5004730100002)(107886002)(6116002)(3846002)(1096002)(50466002)(586003)(2950100001)(5001770100001)(956001)(16796002)(2876002)(21840400001)(189998001)(50226001)(4001430100002)(86362001)(575784001)(77096005)(5008740100001)(19580405001)(105606002)(19580395003)(3720700001)(33646002)(47776003)(50986999)(86152002)(2201001)(85426001)(6806005)(4326007)(81166005)(48376002)(2906002)(106466001)(87936001)(66066001)(5003940100001)(92566002)(76176999)(7099028)(41533002)(921003)(4720700001)(1121003)(217873001);DIR:OUT;SFP:1101;SCL:1;SRVR:BY1PR0301MB1285;H:sj-itexedge03.altera.priv.altera.com;FPR:;SPF:Fail;MLV:sfv;A:0;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD036;1:LYM/aPmH1NZfe/UpSAmknBtx1tR+9ToEA0StyeQTEDd6HVg8cIBCdkY5yhtrmPMVuPu0G915DSfy3EmelS3UelEZFtc4rMpdlZAYMULcR9e7wH0zAfMWkTz4Vq5xroVR91ebwlP5s17xfMU97fE9SFa+2pGAjYPlSpeKMgKdV1b41RkRDMYmv+vLDJaa7ioAPUO6DVa5LmEwYeSiwN9RCFmyHc6MO8p+iglEtZVygYIQ4RlNMeCfQ8Bb+cCJPDe6L0esfO2FnwcNrS3F7D24aX497SjWAixr8ChDdwThODO+6MFdMyofI0QdI1yLbLO1LabA6y7iaEtOW2Bx9wASQQYxROz6842rI8BHHcL6vGkM8+iDhcohb+U0l6dVOAlLWqqu6yMQjJlEYPuDR/jMRRXRrLCwkCTrGKP5ve5dpkrUvgemboOnKpFHUcQRKnljxq2QY+cZ/SLrhklJFvYElOB+Q/VT9lWVSaGEMMyHMHnEQE/aTDZRTZaLIrtZZl0G X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1285;2:R9IcX7LanP2jKonoVvlDbeWM4c7ksSgj73Sbra+pPl02XCc4tOq5GaU+AwKw1QwfFfFCOFHTb/JO4qIowhJRsnGD/CcacdGvxpFhZ+w/lYb8mvLXnLr+Yvj0YpguH1u4UehVoppcIQTe0Q+RWmE+tbwnDGxl5bidzy+fJPZwbXY/guxFEXyn2UfvMF4jzT8M;3:Gb4OuBxtNA5WjNA9wjnvCkltBI4QrrviAI5l1lZyhsMzxB9Emo0B8BGakl8pFwNuLN7VfWapWLAlYLjb+Yf9D5TNjh4tjR8R4b8n0OOt1k08jGOFQ9lRzcOfL2hQgA5oLkZYmp9lRWiG1pJgD2wL/YadHK9U/kAyZ1lvQL3nM55vchXomg59mzE4bPJWwZSF84xhle77DSBODvP3Z8+ZTBRkNZb739vH7OHpxUHlSvSBCWsjrOLSKWT/P+OqWkfY X-DkimResult-Test: Passed X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(3001016);SRVR:BY1PR0301MB1285; X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1285;25:skCM4zgtmN1+1lj32lvL2d+143zSY8Cr5UoPNqWTufhNz/sPDKijC4WNok8qwHU5qKPHH4VJTQINH24VEwQJDUJIOea4B2t+AZsN1R6M/kWJeK20Map4aOFXcXTLYOp4cMNxdKMYfsz+JhIKYKcEW7Yo15HnU0iEFtmlWv6w+rJ2iOjQ8u1HfEIiL/Yx2PBmqs8sNpUn0gvgbghwf8E1y9aAJ8j5Hh5dkTP+TkISiVyulbtw1AptDTzXGnOcqxFVb1y9kEhYNBNfCQWgfLEpUYWzdllKh4PHUnYrZnLVsJDq2FpnwOaLkpQip98c0lSDBv1a/3LOcfm0dFl7vy8tTfFp6RCIOjGla3s4gqkyEhceMbZUbJaYugQ4w2ZoyiT+gijDQj/m0qL3F7cPElPaa1HnHoQbVdz15ChGwMU+o6gC1AY17Nx4rvsR+OZPr8tfC5+g9unYCrmhWYdHCEh8aMzp8YzBWovJMzhK0B+5O/ObAxoWIYn9KZ/7bciAIqRVJF6O7iKMcRaZNkSxIAQGII1SLl1xd4AfGhvAhREgUqU+TdfW+lgHzLYZGVdZ8O16KxHXedpupCvH61U5W+UdI3ewUyavgnfbVsLQ90K6AMIaSBu8R1kTeC+NTFMSN9lMMap3jwxKTicwNCoxhYeRXg==;20:BGEa+brzW+/J1xxRNuQO4DzpvPApWuphgcWwKu536DydrSv9eBUXQSWthNJ0XFUSI2el6UtyIxSewWgPRD2zkuy85fqgLEAOVSct+tgffVrvEicNQc2RA3BeKjBwbj7vGFqKQ4FOTDa8lZxNBkLqfoyrTpzbBoFVNP5GSBmYkn4= X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1285;4:CTIXWbLGBd/p43+afB4eE5Ij1aJmoHpWhMO9ZdnGynvarqvWwOfjxrUiWGZ/0oGQMWd/fAvLGGmR3x5cvpnsMut2jjCPU7sp1p+l3sG/tQc5HIq3IZqmYmKuQT+iWu5puE/YIesa8JxgXk7OqldDlG7imnI1eyzR6a2k7stIrJncZrutJiRa5qXt9iH8GVs1agYMLasXLWek6ETLTp9KneYwsL2jarCH0U8LYx7BJD3Ywzs7Fm9WpHvJWL6bYv3LCWc6OED5/o6T+SB3y0zlM88/ko5Rvm4bguIoE2/tcrqqcD1fejENRMFrOdw5MlQU02G+j6cch0KhGqJ8OG3desvGSptPzflUz5/G8CZ+xuTe6tttRKNZZaeJHGlR7e2aqJ//CzkwNKVu7QkIHZwvJX6pVGkaqEtzV5i8joRHJKVDhB53YHNeL99JpqCggu4nC4ob716JRPLfLqqh/nOFgQ== X-Forefront-PRVS: 08978A8F5C X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY1PR0301MB1285;23:OxSedCpY/5PteGVrlTBe8HXu1OAu/epEo1/UX1x?= =?us-ascii?Q?Px0yg97DYEYefO5Jfk3o0UiwyJUcE6Og4SJWhjflzbi1AuD02X+V+Cstv5ST?= =?us-ascii?Q?50Ng3tR+RdpfIni76OGUMjaaRQE7PUFbu8r0lyo5L31NCQWMZJlEUSAkgXyB?= =?us-ascii?Q?MtietDily0XLscqt7dBXL9ZaDODanS3mb0kEiFZ3PtCkjG89MSzlJco2pCCT?= =?us-ascii?Q?F0PD8BSWSS7Kpy3fpQViMCpLmt3IMma/qWsFEEi1CqHQmDuztsd7wDN8SEh7?= =?us-ascii?Q?lSbk8/IL4kY6POjApCiUj/4tOksP+6gKEw0b+XMuA53hWzRrcseOLycJvgYa?= =?us-ascii?Q?gZUNdokB4wSdtqT+PHvK3ud25UdUL6SN4QLlTgh5Whc2N12cLj94kw4BHXQy?= =?us-ascii?Q?7nyOqCdMYp7mD3PKKwPYmV/FHjZKoRB2x5LAsSvlj3CIEwI/ZzM+xzrBKCyc?= =?us-ascii?Q?GHoUd92VgiScI1wdSR5kmUxH2wndflaUereuRaRha/+sOTXCsp5RLPp0duud?= =?us-ascii?Q?ETrLe6pLYsYAe3SPR6X0pb+u15ZApBxuzbOLrrQmkh3WqRqUZrigUqTeMo/A?= =?us-ascii?Q?vRzLEmn6XxHxBIkMOyOf7aGlL1q+JWpMiBSOMRaFkrU02JjISW6pd8U4gbRY?= =?us-ascii?Q?KZ3093QJOEjt9BbbO11zclpBxGZ29Xdq53KtH6qlHe6ZX5iAlH1SmajtJgQV?= =?us-ascii?Q?46dipEA3vTzOro0e3BD8np2Q/MT4o9lsgpiUA4/s9ngYGqDKMeFUj4AW6/SG?= =?us-ascii?Q?z5JnBqURJlT6WiZq78hn9SUJnpvKVudRvRoR87hSPXuzgo2rEQyMSozCPiwJ?= =?us-ascii?Q?TcI+7grntvNApUq1QThc8V/UQLQgZKMeH2SOtediGhzXrIMiAA/6C1CfizX2?= =?us-ascii?Q?82jjKqc9RsWu28n0ybbn0dxdOsIOnSW2YletQ25oAdrsEOx1bgSAz7rzctl8?= =?us-ascii?Q?kC5ppi0tGQlsBcVBuQbs/6nkQpp3ifYuphYIVQzDKMEbPn1e5QR/gVztURKd?= =?us-ascii?Q?4uuGN0DZy3iAmLNKzphdWNcbEzGZK4KzV6RUrTAt3kIBzz1nOKyjQ1YRFXCz?= =?us-ascii?Q?WdSSCf78a7lmFE566+BFgY14M3qUiuUcH8jjo4Dde1aEoa951NeoxxezcmnU?= =?us-ascii?Q?vfWqbBy3W9b1ZF5eSpTuh76IHrA7CJDZcQ7RRKKmiBL9KKDdrUcuYhe17Z9O?= =?us-ascii?Q?nFtbj9ay/iYmf5wGZV9o1VzkPR7Y7HW6jcL74KZF8H/S99FnMCbf3v4pKv/L?= =?us-ascii?Q?euBXOQKnki5YqqfEBOqsQlDpkZie7BBd/uNnhjNO2U0379PSDj00OtgW5zEt?= =?us-ascii?Q?dP5aZ+3BZeh1zWItb3xlfPXg3xiVplO8X3fYILj5UU0bnFMPJc6GQde8fb5i?= =?us-ascii?Q?CHjwDRhL1n9ZavJ/9R0fLPI+cAwRkXgJSZzcyFGG2eSC0N3Jh?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1285;5:P9N+5WuZMWHmSvYUbppLbGB2+lkeHjjyx3uWERmuvxiIGmhWGIEOy0B2d+IHdnOBe/UYxlF9M3riqYQgVwFSwRwXQ9WFdwiFhFoT+vUye4XBWBcuNPRPznhLiKGCWz3JygMBEW+Rz+8ytlncxIxX3A==;24:XLDhmLkBsz2czJ+w9zM6UHN1az4PlVzPjjQOEyMaAxikl9UdudCVhM9LBi0/7FosWbIPyniiPdGCckyWxjDt3lyAhKSeUJAcs0fkZ28Pe8s=;20:NNw9yxZBAzsrcBHeoFZUhH9EKGDM7zXiTsbshhCqCPfat4l6nPyoUIIvWMSJyNQJp2aeheVCihaHxgBLFblfr0quTlIZSWkygBLABdtWiHbnzypWjaGYr0/PZCzYHR77CnPD6Vao7rctVxKC4NUz1GkJCKEcVV7aaCdjZsFMIyQ= X-OriginatorOrg: opensource.altera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2016 15:23:31.1453 (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: BY1PR0301MB1285 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Thor Thayer In preparation for the Arria10 peripheral ECCs, the OCRAM ECC dependency check was moved into the general ECC area since this same function can be used by other memories. Signed-off-by: Thor Thayer --- drivers/edac/altera_edac.c | 43 +++++++++++++++++++++---------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c index f0a6de7..f7ffc77 100644 --- a/drivers/edac/altera_edac.c +++ b/drivers/edac/altera_edac.c @@ -648,6 +648,26 @@ static ssize_t altr_edac_device_trig(struct file *file, return count; } +/* + * Test for memory's ECC dependencies upon entry because platform specific + * startup should have initialized the memory and enabled the ECC. + * Can't turn on ECC here because accessing un-initialized memory will + * cause CE/UE errors possibly causing an ABORT. + */ +static int altr_check_ecc_deps(struct altr_edac_device_dev *device) +{ + void __iomem *base = device->base; + const struct edac_device_prv_data *prv = device->data; + + if (readl(base + prv->ecc_en_ofst) & prv->ecc_enable_mask) + return 0; + + edac_printk(KERN_ERR, EDAC_DEVICE, + "%s: No ECC present or ECC disabled.\n", + device->edac_dev_name); + return -ENODEV; +} + static const struct file_operations altr_edac_device_inject_fops = { .open = simple_open, .write = altr_edac_device_trig, @@ -853,29 +873,8 @@ static void ocram_free_mem(void *p, size_t size, void *other) gen_pool_free((struct gen_pool *)other, (u32)p, size); } -/* - * altr_ocram_check_deps() - * Test for OCRAM cache ECC dependencies upon entry because - * platform specific startup should have initialized the - * On-Chip RAM memory and enabled the ECC. - * Can't turn on ECC here because accessing un-initialized - * memory will cause CE/UE errors possibly causing an ABORT. - */ -static int altr_ocram_check_deps(struct altr_edac_device_dev *device) -{ - void __iomem *base = device->base; - const struct edac_device_prv_data *prv = device->data; - - if (readl(base + prv->ecc_en_ofst) & prv->ecc_enable_mask) - return 0; - - edac_printk(KERN_ERR, EDAC_DEVICE, - "OCRAM: No ECC present or ECC disabled.\n"); - return -ENODEV; -} - const struct edac_device_prv_data ocramecc_data = { - .setup = altr_ocram_check_deps, + .setup = altr_check_ecc_deps, .ce_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_SERR), .ue_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_DERR), .dbgfs_name = "altr_ocram_trigger", -- 1.7.9.5 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH 3/7] EDAC, altera: Make OCRAM ECC dependency check generic Date: Wed, 30 Mar 2016 10:27:44 -0500 Message-ID: <1459351668-14622-4-git-send-email-tthayer@opensource.altera.com> References: <1459351668-14622-1-git-send-email-tthayer@opensource.altera.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: In-Reply-To: <1459351668-14622-1-git-send-email-tthayer@opensource.altera.com> Sender: linux-kernel-owner@vger.kernel.org To: bp@alien8.de, dougthompson@xmission.com, m.chehab@samsung.com, robh+dt@kernel.org, pawel.moll@arm.com, mark.rutland@arm.com, ijc+devicetree@hellion.org.uk, galak@codeaurora.org, linux@arm.linux.org.uk, dinguyen@opensource.altera.com, grant.likely@linaro.org Cc: devicetree@vger.kernel.org, linux-doc@vger.kernel.org, linux-edac@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, tthayer@opensource.altera.com List-Id: devicetree@vger.kernel.org From: Thor Thayer In preparation for the Arria10 peripheral ECCs, the OCRAM ECC dependency check was moved into the general ECC area since this same function can be used by other memories. Signed-off-by: Thor Thayer --- drivers/edac/altera_edac.c | 43 +++++++++++++++++++++---------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c index f0a6de7..f7ffc77 100644 --- a/drivers/edac/altera_edac.c +++ b/drivers/edac/altera_edac.c @@ -648,6 +648,26 @@ static ssize_t altr_edac_device_trig(struct file *file, return count; } +/* + * Test for memory's ECC dependencies upon entry because platform specific + * startup should have initialized the memory and enabled the ECC. + * Can't turn on ECC here because accessing un-initialized memory will + * cause CE/UE errors possibly causing an ABORT. + */ +static int altr_check_ecc_deps(struct altr_edac_device_dev *device) +{ + void __iomem *base = device->base; + const struct edac_device_prv_data *prv = device->data; + + if (readl(base + prv->ecc_en_ofst) & prv->ecc_enable_mask) + return 0; + + edac_printk(KERN_ERR, EDAC_DEVICE, + "%s: No ECC present or ECC disabled.\n", + device->edac_dev_name); + return -ENODEV; +} + static const struct file_operations altr_edac_device_inject_fops = { .open = simple_open, .write = altr_edac_device_trig, @@ -853,29 +873,8 @@ static void ocram_free_mem(void *p, size_t size, void *other) gen_pool_free((struct gen_pool *)other, (u32)p, size); } -/* - * altr_ocram_check_deps() - * Test for OCRAM cache ECC dependencies upon entry because - * platform specific startup should have initialized the - * On-Chip RAM memory and enabled the ECC. - * Can't turn on ECC here because accessing un-initialized - * memory will cause CE/UE errors possibly causing an ABORT. - */ -static int altr_ocram_check_deps(struct altr_edac_device_dev *device) -{ - void __iomem *base = device->base; - const struct edac_device_prv_data *prv = device->data; - - if (readl(base + prv->ecc_en_ofst) & prv->ecc_enable_mask) - return 0; - - edac_printk(KERN_ERR, EDAC_DEVICE, - "OCRAM: No ECC present or ECC disabled.\n"); - return -ENODEV; -} - const struct edac_device_prv_data ocramecc_data = { - .setup = altr_ocram_check_deps, + .setup = altr_check_ecc_deps, .ce_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_SERR), .ue_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_DERR), .dbgfs_name = "altr_ocram_trigger", -- 1.7.9.5 From mboxrd@z Thu Jan 1 00:00:00 1970 From: tthayer@opensource.altera.com (tthayer at opensource.altera.com) Date: Wed, 30 Mar 2016 10:27:44 -0500 Subject: [PATCH 3/7] EDAC, altera: Make OCRAM ECC dependency check generic In-Reply-To: <1459351668-14622-1-git-send-email-tthayer@opensource.altera.com> References: <1459351668-14622-1-git-send-email-tthayer@opensource.altera.com> Message-ID: <1459351668-14622-4-git-send-email-tthayer@opensource.altera.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org From: Thor Thayer In preparation for the Arria10 peripheral ECCs, the OCRAM ECC dependency check was moved into the general ECC area since this same function can be used by other memories. Signed-off-by: Thor Thayer --- drivers/edac/altera_edac.c | 43 +++++++++++++++++++++---------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c index f0a6de7..f7ffc77 100644 --- a/drivers/edac/altera_edac.c +++ b/drivers/edac/altera_edac.c @@ -648,6 +648,26 @@ static ssize_t altr_edac_device_trig(struct file *file, return count; } +/* + * Test for memory's ECC dependencies upon entry because platform specific + * startup should have initialized the memory and enabled the ECC. + * Can't turn on ECC here because accessing un-initialized memory will + * cause CE/UE errors possibly causing an ABORT. + */ +static int altr_check_ecc_deps(struct altr_edac_device_dev *device) +{ + void __iomem *base = device->base; + const struct edac_device_prv_data *prv = device->data; + + if (readl(base + prv->ecc_en_ofst) & prv->ecc_enable_mask) + return 0; + + edac_printk(KERN_ERR, EDAC_DEVICE, + "%s: No ECC present or ECC disabled.\n", + device->edac_dev_name); + return -ENODEV; +} + static const struct file_operations altr_edac_device_inject_fops = { .open = simple_open, .write = altr_edac_device_trig, @@ -853,29 +873,8 @@ static void ocram_free_mem(void *p, size_t size, void *other) gen_pool_free((struct gen_pool *)other, (u32)p, size); } -/* - * altr_ocram_check_deps() - * Test for OCRAM cache ECC dependencies upon entry because - * platform specific startup should have initialized the - * On-Chip RAM memory and enabled the ECC. - * Can't turn on ECC here because accessing un-initialized - * memory will cause CE/UE errors possibly causing an ABORT. - */ -static int altr_ocram_check_deps(struct altr_edac_device_dev *device) -{ - void __iomem *base = device->base; - const struct edac_device_prv_data *prv = device->data; - - if (readl(base + prv->ecc_en_ofst) & prv->ecc_enable_mask) - return 0; - - edac_printk(KERN_ERR, EDAC_DEVICE, - "OCRAM: No ECC present or ECC disabled.\n"); - return -ENODEV; -} - const struct edac_device_prv_data ocramecc_data = { - .setup = altr_ocram_check_deps, + .setup = altr_check_ecc_deps, .ce_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_SERR), .ue_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_DERR), .dbgfs_name = "altr_ocram_trigger", -- 1.7.9.5