From patchwork Tue Apr 12 22:13:00 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: tthayer@opensource.altera.com X-Patchwork-Id: 8816951 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 12E06C0553 for ; Tue, 12 Apr 2016 22:12:28 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id E26C820357 for ; Tue, 12 Apr 2016 22:12:26 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A8B57201C8 for ; Tue, 12 Apr 2016 22:12:25 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1aq6WJ-0005iF-9U; Tue, 12 Apr 2016 22:10:51 +0000 Received: from mail-bl2on0067.outbound.protection.outlook.com ([65.55.169.67] helo=na01-bl2-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1aq6Uf-00038r-8k for linux-arm-kernel@lists.infradead.org; Tue, 12 Apr 2016 22:09:14 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.onmicrosoft.com; s=selector1-opensource-altera-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=u/epQQZzcQFXjfHX+PCSXk8rnjZQz+lqdOnIJvFpwK4=; b=Ou5m/df64BxpqUTkz3ZfLroFWllmud1j8tIkXR4CJF/9EL0VreZo/GkhiCG8omxVt74sa1iOHdrs91BjjE8kJNfJhwLEw+2/MsFo8ADEH5vAYVXhnRzfzIY9mCu7Xfwf7zA0U6BzVIouFOUtNlcSSuePEVTviLVsNUQbnlp+Hhc= Received: from DM2PR03CA0004.namprd03.prod.outlook.com (10.141.96.14) by BN3PR0301MB1284.namprd03.prod.outlook.com (10.161.210.148) with Microsoft SMTP Server (TLS) id 15.1.453.26; Tue, 12 Apr 2016 22:08:46 +0000 Received: from BY2FFO11OLC001.protection.gbl (2a01:111:f400:7c0c::195) by DM2PR03CA0004.outlook.office365.com (2a01:111:e400:2428::14) with Microsoft SMTP Server (TLS) id 15.1.453.26 via Frontend Transport; Tue, 12 Apr 2016 22:08:45 +0000 Authentication-Results: spf=fail (sender IP is 66.35.236.236) 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; Received-SPF: Fail (protection.outlook.com: domain of opensource.altera.com does not designate 66.35.236.236 as permitted sender) receiver=protection.outlook.com; client-ip=66.35.236.236; helo=sj-itexedge04.altera.priv.altera.com; Received: from sj-itexedge04.altera.priv.altera.com (66.35.236.236) by BY2FFO11OLC001.mail.protection.outlook.com (10.1.15.185) with Microsoft SMTP Server (TLS) id 15.1.453.6 via Frontend Transport; Tue, 12 Apr 2016 22:08:44 +0000 Received: from na01-by2-obe.outbound.protection.outlook.com (207.46.163.242) by webmail.altera.com (66.35.236.236) with Microsoft SMTP Server (TLS) id 14.3.174.1; Tue, 12 Apr 2016 15:06:58 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.onmicrosoft.com; s=selector1-opensource-altera-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=u/epQQZzcQFXjfHX+PCSXk8rnjZQz+lqdOnIJvFpwK4=; b=Ou5m/df64BxpqUTkz3ZfLroFWllmud1j8tIkXR4CJF/9EL0VreZo/GkhiCG8omxVt74sa1iOHdrs91BjjE8kJNfJhwLEw+2/MsFo8ADEH5vAYVXhnRzfzIY9mCu7Xfwf7zA0U6BzVIouFOUtNlcSSuePEVTviLVsNUQbnlp+Hhc= Authentication-Results: alien8.de; dkim=none (message not signed) header.d=none;alien8.de; dmarc=none action=none header.from=opensource.altera.com; Received: from tthayer-HP-Z620-Ubuntu.137.57.187.33 (64.129.157.38) by CY1PR03MB1485.namprd03.prod.outlook.com (10.163.17.158) with Microsoft SMTP Server (TLS) id 15.1.453.26; Tue, 12 Apr 2016 22:08:40 +0000 From: To: , , , , , , , , , , Subject: [PATCH 5/6] EDAC, altera: Add Arria10 Ethernet EDAC support Date: Tue, 12 Apr 2016 17:13:00 -0500 Message-ID: <1460499181-23080-6-git-send-email-tthayer@opensource.altera.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1460499181-23080-1-git-send-email-tthayer@opensource.altera.com> References: <1460499181-23080-1-git-send-email-tthayer@opensource.altera.com> MIME-Version: 1.0 X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: BLUPR11CA0038.namprd11.prod.outlook.com (10.141.240.48) To CY1PR03MB1485.namprd03.prod.outlook.com (10.163.17.158) X-MS-Office365-Filtering-Correlation-Id: 62aca72b-65b1-434e-5729-08d3631f03cd X-Microsoft-Exchange-Diagnostics-untrusted: 1; CY1PR03MB1485; 2:W95fsJ2jY8agpXnO4PxjCHQv9/d78UQrw8tIXywQtC5++94xP6vB/iOhyhfTDaxQAN5EvNyd9HdVtVT3lcwox2oY6aQxJP9/wOaZUsmTzfk/EmcHZuYOqMzg2balQfG3yVr6+YdwpD9OvQfvwDIuprOdsKvnerOSZrCNUEtoA+ZCusFfiXLR7qeMZ4GXFdfm; 3:ieJd5RP0A/eK2diAF0zr4E3jo6a9kA+66cd375kBdIdCNORLMwkbN5aLk/HOUSsmPbF0rS/Msvfl2naXqvnJC9gg2wECG8FdMLVc58zcxkkGAOWo3/SK/15nSvKu1HHK X-Microsoft-Antispam-Untrusted: UriScan:; BCL:0; PCL:0; RULEID:; SRVR:CY1PR03MB1485; X-Microsoft-Exchange-Diagnostics-untrusted: 1; CY1PR03MB1485; 25:dhh6JhrQSEAfxgGRnW7rfdLaO9/0BnBRnveMZSOMExxQ+GS5hZwVTZjNXTz/2ia1gTdYDwR8FIqfNqrFRvUFpTNiojqCKW3PEtdXpSsl/geqAnQoV7jSI0AkCw4lPkb8S4ryfK857pn4QCUszbw+6/jnK+u7VQhrAEFbyrXMEyhVoVLKSP1gRjRHfvff5tf796hwQqe6flIV/IvRt2ZMUXMu96zK113iDm46UbSNAECF1kqpruHGSU7G6DjOdl+vtMcmkJNNT494MSNN9kKbaAOLVsevws0rc3VuPT8z4hpVBFnfsRzEo7rOy/7dNWYJYEgh7mgJptfRTiIKROh05x2O2m7C6M8NMTeLGXuwQIdkRBzwrnkyhutyxqnIY5d6iXiErInA7LVmk4wvR8Cd58CnuAXwTTI1m7229IBRTYxhj3B/31t8Ek8/7RjyW8WYQdB8+pS3eF8HoA10EDtKGLTm9yxCOkhQtKmvH6Hdc47Rs7NcNT7bJgL1IUg8cRaG+qZfPlGnrsI/OZk2yy3w0veffBN7G6mzofmQxk2dVKiks1FSmiPe85Q5ZfTcx0MDX/snE4cP4fKq8cuyWWSDUcv7puALFH1VcqZmwMXi0FE60SqvgiAMiRQgQ80SxZdcHhoAGZlectarF+7Ru8HVHQ==; 20:AG6h7YxZaTCer9oHz934RXpTXs+oJTZzJiIEgDB2Ps79XRrMdoAK/qO7BQ86QsnkG4BNUiBme2Z4IHV35zyjSUrQfqP3INSOCKLXh0fNPwJ3So7GKTnDSJjeQI+FYcgrMHJwh2ppNoE5g2NfOUbRiYaPOspVowmUp56yZCnAOMM= 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)(10201501046)(3002001); SRVR:CY1PR03MB1485; BCL:0; PCL:0; RULEID:; SRVR:CY1PR03MB1485; BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(13018025)(13017025)(13015025)(13024025)(13023025)(8121501046)(10201501046)(3002001); SRVR:BN3PR0301MB1284; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0301MB1284; X-Microsoft-Exchange-Diagnostics-untrusted: 1; CY1PR03MB1485; 4:IIFk/fdeUg6tCI2Qie/NINJF0lKdFSEalDZ/eUWM8j/qM2EuOxR8vXNCjd0QxqkJORijO0DaTXaBdBqDz4+0qRW85tAMJCHU2X3JyxmVOvMkpBvmNIb8QbSGYl+UzvrVEz8UZSRhKRbts0t9hsBRdHETldiimfdOB6ctDVQyvCpbRMWfkP2d9E+X/wpjEgEox8jx9vIJwCXGUmfyHRTpiyfl9BBPCnYX9s2Q7i39aWNtqA/0TQj3y9D6rEowsyIz52QsCyLhl77o92+3LHDaFWH4VnBjjy8GpYrEl3qTMgAKp0oX501JWHDjK8Xr/jjjRSgPpr1Gmc0+rqZcj+Y2lWisbJo15pvDSqsczO5IARBNXY8rpRS4fgZfJ9KNbKNV X-Forefront-PRVS: 0910AAF391 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6049001)(5008740100001)(48376002)(189998001)(5001770100001)(50466002)(92566002)(107886002)(2906002)(4001430100002)(42186005)(4326007)(5003940100001)(33646002)(2876002)(229853001)(50986999)(76176999)(50226001)(2950100001)(47776003)(19580395003)(575784001)(1096002)(19580405001)(586003)(77096005)(6116002)(3846002)(2201001)(5004730100002)(86362001)(86152002)(81166005)(921003)(4720700001)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR03MB1485; 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; CY1PR03MB1485; 23:UzakFptqE5DYvyK18HfB2qgH/uuVuCdRmuRaMCqYk?= =?us-ascii?Q?QI+zo8/hs0ylb474o1fSzL+vB7cnH43PY4mM3rInL+gl7aa5okil3Nim/LxI?= =?us-ascii?Q?GrYWOGuqyCGUbPNTVpfsAbppF4RoyuIn1FSkIu38UVozSFU3M5o5wlVAobes?= =?us-ascii?Q?aR1UzMli2dsQDskYXMONqoL7b1AzbqtRAU53m+45L3juJGZzflP/wxoSp1LC?= =?us-ascii?Q?0POoc0FDSKNmLQdOm98+wSimuJwoj2SPsSVULGuEaIFDQVN+Trm+T2oCG78Y?= =?us-ascii?Q?yGEW9D35mpEHkJdd/prYwH74HiFKLSrcgqkbcVhDcoUqgomIl0TFTd5XHq7L?= =?us-ascii?Q?hsOofoBxHFPRBgJAKZomGMzeRFXFxXHZuNPM4wCh4ESAsJJZpPI0saBi4Akg?= =?us-ascii?Q?j9k5P2C+cn/YRi3TQWqC2PVC6ZuIhOrX4EWxr2/Eqjm6hgbj6s03euEG04DZ?= =?us-ascii?Q?+byCH5H9GxYqj4nKAdxRJM7Wgp1k+3lanSGd0GWCPK9K2SUJGuO+E28OmbI1?= =?us-ascii?Q?14EhsTZvZvvh1T2pA7BaKsWLZUhdxWoocypDxG/j6fVCnzhWHBU3W/iZp6U/?= =?us-ascii?Q?f2epTgQ0LW8SLDuEpGO31+BG+QKEyAafVMO3V26NPWD8z5L/1ZfqYQ2aoxI/?= =?us-ascii?Q?wpd5s/1fRxcou9BVLrvd/vpCt88rQMlnatZ7/GiOwVMhm6y+2B26IyRuFFtT?= =?us-ascii?Q?Mn/wum3lxQXvVdAi4sarbliThOw7yOYguXwpMQDT5i2bDEGj2GPloZeHemMn?= =?us-ascii?Q?UDTeXzILi1t0Qms0icI4W8XVoSxysjC/nk6pEqBlJpcxRuR4IvDLargRAu2b?= =?us-ascii?Q?nVEclqB7Cqm6OPYuY4VDJDc01apM7ScHqOXnZ8i5PJG7iPBPYii9gkj/4+dh?= =?us-ascii?Q?MXMoCu0Zk6CY6Dgy6xRHEdsQE6y7X5NwfKP7XWaj9j/gAUpnSHiFiNmjG7I1?= =?us-ascii?Q?BTpdKwUVO2sXB11lLWTtF8ViB1RKuYt58YHVwf533d/ppL3ZH10cUoDYwMXb?= =?us-ascii?Q?BMoE17cKSHm4isIjqWQpRnYFdAzUYFR8/0V//RaMclsWsU3vsBWVxh3+hGyd?= =?us-ascii?Q?fwcftM=3D?= X-Microsoft-Exchange-Diagnostics-untrusted: 1; CY1PR03MB1485; 5:oFIaitx4QAufotZtMy1PFwZ3ws+TUKErpM3aF7aGV4iUW08RJoJlHHUUNAArBUEMcCTVAM/Po5Te59p5Tqk+r4icKC/T8wOKzj9cWal/hGTC6qJIoIRZ1lRV4Dju5ksrmupQktJhdN6oFa8CxtATeA==; 24:WyFPQx3rSEtHZYrlT8jQ8MBWwKsDjFeKfmrlDq6pUZh0wLmHMUGIRKtQRdraVVsSwhnJ8J+BrJTM3PJsmx/FGOrfbMqFPTJBS3UyDep7+1M=; 20:mSyMGzvbhrRiYvVOl/78if/rvnxP4WY9Ceg/xIFtHz0f4q9SkHGc2FQC5TjzmLvHnVg59rz6mtYvroDsbrBrnd1ZVup+k5R9+5+EPJq0mB6DQv0gXrtIuPycuhwD2ODLdDvTJRcyHlQD3PLQ7FJepx0KZgDWnhVWWjY3ELqUQUU= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1485 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BY2FFO11OLC001.protection.gbl X-Forefront-Antispam-Report: CIP:66.35.236.236; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(3720700001)(81166005)(6806005)(2201001)(92566002)(4326007)(50986999)(50226001)(86152002)(956001)(2906002)(1220700001)(76176999)(87936001)(586003)(6116002)(3846002)(50466002)(48376002)(2876002)(4001430100002)(33646002)(21840400001)(189998001)(1096002)(5004730100002)(106466001)(2950100001)(85426001)(16796002)(229853001)(5003940100001)(5008740100001)(19580395003)(105606002)(47776003)(86362001)(19580405001)(5001770100001)(107886002)(77096005)(575784001)(7099028)(921003)(4720700001)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0301MB1284; H:sj-itexedge04.altera.priv.altera.com; FPR:; SPF:Fail; MLV:sfv; MX:1; A:0; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11OLC001; 1:rVxrSdmdZqGed6DK6Q+AInoS/kpmG33YGnNmWKyL8nQtZprxJ59FowQ24E4DBmwyjAScAxsIMLNo7r5tU6L4G4DBzF0rhe5iNJBQjapY1R57LNzJrKoZN2rO1Dk+yqKeBiMyPG492FcfIvS9CZQCJmOXTBw1NZMmcWb0kST6retnNgIE7MUFvjrzNNSVVLTbTfij2pvr897qdDhFdEj6Z7JrPaF7a+edU1AEhD0WiRvNLcGXvFhLos3BQcN8mmUTArS24euMIWwcF83Pqs2P2wBXuJsFXSJYW7yricqQrV4YSnSMnB/BhTXMB/Kp8HvR4KqnAMHW956FhBUUdH3KbVKLAjgQd71KNd59gcL+Rf7kpg+oUkDalflfmKXEY3uAM6/SD5OK0+TWbm4BzPP/swgBLP5uCHB4gwA6nVzMrf84TXhWqcRwdi6TNKvmVCRhPPdA7B+SBu23tj7+IuPSiBtOA00Y2Yi0DfoUAr+T/ulY4S7pRyivUQfPkZupLE3GHh7RSr8xV42jznhYoEC9SUXjizAFHJN+s2BNqAdQs2JAnR0DJtWiSwoULhIE50Jo X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1284; 2:k/5MUfBJrwIdyuPlrWEYFJac2XBbxY4UMnCixqDlmJ5DMG3uJ30sTsFtwgigdQlTwqLAQ7LvpQdstXrTrbgXPj8S8BQNC/sQnMjBvYS7akDh91oY3/SW1qGHE/GQpxcFEypda4eha1HR7ph5Z+eYHyLoYiDRP9tvFDOXQl+iZjYNkCxlqgZW+8gzSNTajHNl; 3:r1sgPMPHdQdWVTd1ZKw/RwP5UCB5lMUl3wE0iFMREKwIJ7v9dFhMHpURKHK9YUO6qwREXp6P2f2izc3lmoZ3vEQBCOY2hI244I2opz0rMYAP4guklOdUzunmW5QiYv4gPleiaZVxgksIqrZWbsXcbOsKSY61hKFBB19Nb2HB6tZp/z0Tmhk6paBK69frVd+OyzpP5fyli+diK5J4eABYzTWy1NZZy3HtpfWYnicA+aZaPhd/Xo8ZIE9SmVhx+Nmn; 25:0LOY77JMv91856B1ZXPwkxbPCpFyXlTpBWH1UNRsmucUBxh8g4ALcGePRAV9LOrLOudi+D2xPUvjyhFAaI1nQSdCkwThyRRrriYzi3Gb6pMzFa3nGaRWrLb3l/T9fsiN+6MAYcfiwVYmZONLdd08L4gDFIFpAUk1nAjhPkG1VkUaSoiexW/g4lmuWHNeOh231a3anq0v+cQsUSPRuZzHegknA0WuDy3PPE+UZDNyRM8ojkrLCJvlXREwIIvvyzJW6KLKhnA/EtdZjb8vqmT37yqrggBvMFmK2800GpJzp+QkFOcV/X60PjkKpOx1qdT4V5duzeIyg/F0W9XJI4Jgyg== X-DkimResult-Test: Passed X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(3001016); SRVR:BN3PR0301MB1284; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1284; 20:1aVsqH7gTRfjizucAhckX2ZoTTLaPVgPzlWMXUEqtXYK18VTokMpWTE0u8DkZu6H9eJGwn4Uz8x8v37746H8hQ01RVTwdLw/PnJ3tLhfEtPbnqfTwJC7qTUlfXYo1akETJsCsu1krlCGYeL1Hx29k0WrzUuPDEMldOnY3pG7yys=; 4:sW1XwEboN4xtMgUAnTRbbIF08eoVBfWFUOcah5VXLVjkJVI1QrHx2NKP9gq10p+FmTyDMfeMoaUfVBk5z75Gl0NlnjXlc0x/2QnUxVzwdVlQ9pD+UCZ7zsc/I7uHBTYbbcFR9ZL//zlSrOAb5qO2YqBenxHa+0miLIsjDMycB2IietGzJeGH06/G8WZYMXFl9xzSaKuTa8mpcqTQlBBqycB+VhrQAYPZSm0aSPpdxQ2Z6QYZsv9dXQHx3nbKVSDqWO2/cAzGLTVgDVCHlWEPDaM4PRTZcCbi4Zc4BFCAfycWrbF5F3J8P+JAnaNvjRjObT3jXsCBrQJ+eJQQPp/+aNge/+tvggMCpz9UpEvp4fq992zapIj8KkpZvjc6oHRgpStfOQArOg321q4u1rLfA5f3/xZc0Lqn/DUChWP0gD6xERaKD1dh7I7WXZqJx8yylKoOlqdb/T8zF54tji4pyA== X-Forefront-PRVS: 0910AAF391 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0301MB1284; 23:rVDcZ8tkJ/TpdUXUUVIOigJ1kP29wFWEfwVRVYq?= =?us-ascii?Q?RYp0NIOlbde1ggQcru32WyEYgInrrKC+YUr6OovofRxmLiiaawLVmhjexYpH?= =?us-ascii?Q?aYmSndapjilZobxfmBaDRFKMcgu9qqkXoLBSGxNKpOn01jaZ6OH4tjjqrOBs?= =?us-ascii?Q?JQEhl8cO4T7vY9E9C3gtiip3wABJ89d5r0o72o+3qPoebWyNIfcWTkQt+gYN?= =?us-ascii?Q?M54utjd7CLOcdl17TrLoAohAdOVqjBy8Uztsv5U3yG/+/aRT372SByAHls8O?= =?us-ascii?Q?d7IYbKSSlYBWDf0C/RRGl3TY/2jGQfneynGgjB5uvL2hFzB3UZO44Be0XqGj?= =?us-ascii?Q?kFAQMDh0c7RkGvdvW5LGOw9lG2Fiyzb5VziJMovnT9/YOwIV/DfWzz0IlueA?= =?us-ascii?Q?LrQFjLlfTJz/fMsotZODf34PviKrmaPOatDJOiI7j9iPn1ytXzu6zgH/oVaf?= =?us-ascii?Q?pSvOG6rLdHg1d90PXYBy2VSRC/HrSt+S4YUXHoDBW6Xh9SwKV8fY2Qkdx74F?= =?us-ascii?Q?8xS61R+Xad/cjyKV+WevmWCEfgmvWKaJsJAUPRY7hFGDmeqx+yT5yPOh1jQh?= =?us-ascii?Q?xvuLv5tvZZ52NErYnUO5Z6SnyLkQDob6kipNxSdvLi/l57BpP0aUVZmsUsPM?= =?us-ascii?Q?ubPbx1m3f7pLuhaYROlkIV6JH2gwX1lzFGtqmzEhRYkWdmdZI9k84SySc82D?= =?us-ascii?Q?HtOoVukOChF3LmAlFbMPvx+zI9CaZzTuI/Ov1V7HUtFvVKPlqtRwNUhnefkS?= =?us-ascii?Q?AeaxJZfET6dLXLtuDnGvhj6gmJRrZuK7g8oR2IuBsOwBLEoLWvFzgqRBWK4c?= =?us-ascii?Q?r7mte6cDGomSHnT0YluPvJ0lZ8FQI8T3JX8BC3hE4g6SHCEqV7tADwWv3BqM?= =?us-ascii?Q?MA/hYvoP3Y82EOImkoYWiIfq6LPoDZ2VPxCrNDjtEm7GDr2nOy2qUnjvYVwJ?= =?us-ascii?Q?1ENcqTsjAAFJZtluoF0cFFdnAJqU0w3tTF8p/CWETmRNa3yeubvUDGGTDaGs?= =?us-ascii?Q?u7ItODaNCVZe/L6z7rtxpAZ2EDd/92fHTEwXRI3hlPDFsshOFiMyETkhIcda?= =?us-ascii?Q?LO+HAD9JBt2uGARIswP2a4IJ9FW90AxgkXrkUn1KBSRWhB82OMehhzS9ZZfk?= =?us-ascii?Q?8ILMRBD2ERkrPSlvrmMWcqg2rOJ7gnOKVDMJu3EpW86uC7WlHZJkL/Ld1jEW?= =?us-ascii?Q?kEc6TIuxxqfWd6mjuOcCb1szQuvRjtDnLQ4Ld6hXPFls7prJJimmj6t9VRG7?= =?us-ascii?Q?9OSGG+Hfwrszg/NeQHun50TdEsN/KKXXhCofL/+XTE+xe/NFwr1vnQiWJ6Q4?= =?us-ascii?Q?9jRVtr75w6vaXFBX1FmU4I7bL+z19wtxr7M+93WDCMy2w?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0301MB1284; 5:Rgq3nGwBViA9kOhVuiEcHc2Aw/1jRwCfP+sfb+6CJy9/p1wCa2D8fVBqLDiVrC5qHtWl10qDqCb0QepAEIK3m9W9FkQCcQBq+37FO8jVQJeCEmJGwhbl0WwHLVWexJ9bMf/CSr3uCTV3hNgTZdzmsA==; 24:oBmEXnxjImzsxiouphZhyV/u4ym+MbrKMVJVLEIagNYKRu5gY35DTShxmdUAVrQzzpeNInXhAOmGJPxzHdDs6ysaDv+NbGpoT8h/aPCi9sA=; 20:/SAcJHb5wmQ6Lbfd15YP1MeZnHt/S5VKtOoFc+CEr3SENwO6TsELnJVEh/f7Dzl8rZWQXAWBD/3gubhE0NThqNhlbwBU+PF7aiAf5pXiGRzuNCptwHGUW6+Oq4PMvMwcDsXuIQwkY9jJ/Rik2D9ogiuMuH9Cj418Mu7geStr2TA= X-OriginatorOrg: opensource.altera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2016 22:08:44.6112 (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: BN3PR0301MB1284 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160412_150910_052738_20A3ED75 X-CRM114-Status: UNSURE ( 7.95 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -1.9 (-) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, tthayer.linux@gmail.com, tthayer@opensource.altera.com, linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-5.1 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED,RCVD_IN_DNSWL_MED,RP_MATCHES_RCVD,T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Thor Thayer Add Altera Arria10 Ethernet FIFO memory EDAC support. Signed-off-by: Thor Thayer --- drivers/edac/Kconfig | 7 ++ drivers/edac/altera_edac.c | 153 ++++++++++++++++++++++++++++++++++++++++++++ drivers/edac/altera_edac.h | 14 ++++ 3 files changed, 174 insertions(+) diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig index 6ca7474..d0c1dab 100644 --- a/drivers/edac/Kconfig +++ b/drivers/edac/Kconfig @@ -391,6 +391,13 @@ config EDAC_ALTERA_OCRAM Support for error detection and correction on the Altera On-Chip RAM Memory for Altera SoCs. +config EDAC_ALTERA_ETHERNET + bool "Altera Ethernet FIFO ECC" + depends on EDAC_ALTERA=y + help + Support for error detection and correction on the + Altera Ethernet FIFO Memory for Altera SoCs. + config EDAC_SYNOPSYS tristate "Synopsys DDR Memory Controller" depends on EDAC_MM_EDAC && ARCH_ZYNQ diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c index 0955ab0..43b6f36 100644 --- a/drivers/edac/altera_edac.c +++ b/drivers/edac/altera_edac.c @@ -553,6 +553,12 @@ const struct edac_device_prv_data ocramecc_data; const struct edac_device_prv_data l2ecc_data; const struct edac_device_prv_data a10_ocramecc_data; const struct edac_device_prv_data a10_l2ecc_data; +const struct edac_device_prv_data a10_enet0rxecc_data; +const struct edac_device_prv_data a10_enet0txecc_data; +const struct edac_device_prv_data a10_enet1rxecc_data; +const struct edac_device_prv_data a10_enet1txecc_data; +const struct edac_device_prv_data a10_enet2rxecc_data; +const struct edac_device_prv_data a10_enet2txecc_data; static irqreturn_t altr_edac_device_handler(int irq, void *dev_id) { @@ -716,6 +722,20 @@ static const struct of_device_id altr_edac_device_of_match[] = { { .compatible = "altr,socfpga-a10-ocram-ecc", .data = (void *)&a10_ocramecc_data }, #endif +#ifdef CONFIG_EDAC_ALTERA_ETHERNET + { .compatible = "altr,socfpga-a10-emac0-rx-ecc", + .data = (void *)&a10_enet0rxecc_data }, + { .compatible = "altr,socfpga-a10-emac0-tx-ecc", + .data = (void *)&a10_enet0txecc_data }, + { .compatible = "altr,socfpga-a10-emac1-rx-ecc", + .data = (void *)&a10_enet1rxecc_data }, + { .compatible = "altr,socfpga-a10-emac1-tx-ecc", + .data = (void *)&a10_enet1txecc_data }, + { .compatible = "altr,socfpga-a10-emac2-rx-ecc", + .data = (void *)&a10_enet2rxecc_data }, + { .compatible = "altr,socfpga-a10-emac2-tx-ecc", + .data = (void *)&a10_enet2txecc_data }, +#endif {}, }; MODULE_DEVICE_TABLE(of, altr_edac_device_of_match); @@ -1033,6 +1053,126 @@ const struct edac_device_prv_data a10_l2ecc_data = { #endif /* CONFIG_EDAC_ALTERA_L2C */ +/********************* Ethernet Device Functions ********************/ + +#ifdef CONFIG_EDAC_ALTERA_ETHERNET + +const struct edac_device_prv_data a10_enet0rxecc_data = { + .setup = altr_check_ecc_deps, + .ce_clear_mask = ALTR_A10_ECC_SERRPENA, + .ue_clear_mask = ALTR_A10_ECC_DERRPENA, + .irq_status_mask = A10_SYSMGR_ECC_INTSTAT_EMAC0RX, + .dbgfs_name = "altr_emac0rx_trigger", + .ecc_enable_mask = ALTR_A10_ETHERNET_ECC_EN_CTL, + .ecc_en_ofst = ALTR_A10_ECC_CTRL_OFST, + .ce_set_mask = ALTR_A10_ECC_TSERRA, + .ue_set_mask = ALTR_A10_ECC_TDERRA, + .set_err_ofst = ALTR_A10_ECC_INTTEST_OFST, + .ecc_irq_handler = altr_edac_a10_ecc_irq, + .inject_fops = &altr_edac_a10_device_inject_fops, +}; + +const struct edac_device_prv_data a10_enet0txecc_data = { + .setup = altr_check_ecc_deps, + .ce_clear_mask = ALTR_A10_ECC_SERRPENA, + .ue_clear_mask = ALTR_A10_ECC_DERRPENA, + .irq_status_mask = A10_SYSMGR_ECC_INTSTAT_EMAC0TX, + .dbgfs_name = "altr_emac0tx_trigger", + .ecc_enable_mask = ALTR_A10_ETHERNET_ECC_EN_CTL, + .ecc_en_ofst = ALTR_A10_ECC_CTRL_OFST, + .ce_set_mask = ALTR_A10_ECC_TSERRA, + .ue_set_mask = ALTR_A10_ECC_TDERRA, + .set_err_ofst = ALTR_A10_ECC_INTTEST_OFST, + .ecc_irq_handler = altr_edac_a10_ecc_irq, + .inject_fops = &altr_edac_a10_device_inject_fops, +}; + +const struct edac_device_prv_data a10_enet1rxecc_data = { + .setup = altr_check_ecc_deps, + .ce_clear_mask = ALTR_A10_ECC_SERRPENA, + .ue_clear_mask = ALTR_A10_ECC_DERRPENA, + .irq_status_mask = A10_SYSMGR_ECC_INTSTAT_EMAC1RX, + .dbgfs_name = "altr_emac1rx_trigger", + .ecc_enable_mask = ALTR_A10_ETHERNET_ECC_EN_CTL, + .ecc_en_ofst = ALTR_A10_ECC_CTRL_OFST, + .ce_set_mask = ALTR_A10_ECC_TSERRA, + .ue_set_mask = ALTR_A10_ECC_TDERRA, + .set_err_ofst = ALTR_A10_ECC_INTTEST_OFST, + .ecc_irq_handler = altr_edac_a10_ecc_irq, + .inject_fops = &altr_edac_a10_device_inject_fops, +}; + +const struct edac_device_prv_data a10_enet1txecc_data = { + .setup = altr_check_ecc_deps, + .ce_clear_mask = ALTR_A10_ECC_SERRPENA, + .ue_clear_mask = ALTR_A10_ECC_DERRPENA, + .irq_status_mask = A10_SYSMGR_ECC_INTSTAT_EMAC1TX, + .dbgfs_name = "altr_emac1tx_trigger", + .ecc_enable_mask = ALTR_A10_ETHERNET_ECC_EN_CTL, + .ecc_en_ofst = ALTR_A10_ECC_CTRL_OFST, + .ce_set_mask = ALTR_A10_ECC_TSERRA, + .ue_set_mask = ALTR_A10_ECC_TDERRA, + .set_err_ofst = ALTR_A10_ECC_INTTEST_OFST, + .ecc_irq_handler = altr_edac_a10_ecc_irq, + .inject_fops = &altr_edac_a10_device_inject_fops, +}; + +const struct edac_device_prv_data a10_enet2rxecc_data = { + .setup = altr_check_ecc_deps, + .ce_clear_mask = ALTR_A10_ECC_SERRPENA, + .ue_clear_mask = ALTR_A10_ECC_DERRPENA, + .irq_status_mask = A10_SYSMGR_ECC_INTSTAT_EMAC2RX, + .dbgfs_name = "altr_emac2rx_trigger", + .ecc_enable_mask = ALTR_A10_ETHERNET_ECC_EN_CTL, + .ecc_en_ofst = ALTR_A10_ECC_CTRL_OFST, + .ce_set_mask = ALTR_A10_ECC_TSERRA, + .ue_set_mask = ALTR_A10_ECC_TDERRA, + .set_err_ofst = ALTR_A10_ECC_INTTEST_OFST, + .ecc_irq_handler = altr_edac_a10_ecc_irq, + .inject_fops = &altr_edac_a10_device_inject_fops, +}; + +const struct edac_device_prv_data a10_enet2txecc_data = { + .setup = altr_check_ecc_deps, + .ce_clear_mask = ALTR_A10_ECC_SERRPENA, + .ue_clear_mask = ALTR_A10_ECC_DERRPENA, + .irq_status_mask = A10_SYSMGR_ECC_INTSTAT_EMAC2TX, + .dbgfs_name = "altr_emac2tx_trigger", + .ecc_enable_mask = ALTR_A10_ETHERNET_ECC_EN_CTL, + .ecc_en_ofst = ALTR_A10_ECC_CTRL_OFST, + .ce_set_mask = ALTR_A10_ECC_TSERRA, + .ue_set_mask = ALTR_A10_ECC_TDERRA, + .set_err_ofst = ALTR_A10_ECC_INTTEST_OFST, + .ecc_irq_handler = altr_edac_a10_ecc_irq, + .inject_fops = &altr_edac_a10_device_inject_fops, +}; + +static const struct a10_ecc_init_vars a10_enet_ecc_init[] = { + {"altr,socfpga-a10-emac0-rx-ecc", A10_SYSMGR_ECC_INTSTAT_EMAC0RX}, + {"altr,socfpga-a10-emac0-tx-ecc", A10_SYSMGR_ECC_INTSTAT_EMAC0TX}, + {"altr,socfpga-a10-emac1-rx-ecc", A10_SYSMGR_ECC_INTSTAT_EMAC1RX}, + {"altr,socfpga-a10-emac1-tx-ecc", A10_SYSMGR_ECC_INTSTAT_EMAC1TX}, + {"altr,socfpga-a10-emac2-rx-ecc", A10_SYSMGR_ECC_INTSTAT_EMAC2RX}, + {"altr,socfpga-a10-emac2-tx-ecc", A10_SYSMGR_ECC_INTSTAT_EMAC2TX}, +}; + +static int __init socfpga_init_ethernet_ecc(void) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(a10_enet_ecc_init); i++) { + altr_init_a10_ecc_block(a10_enet_ecc_init[i].ecc_str, + a10_enet_ecc_init[i].irq_mask, + ALTR_A10_ETHERNET_ECC_EN_CTL, 0); + } + + return 0; +} + +early_initcall(socfpga_init_ethernet_ecc); + +#endif /* CONFIG_EDAC_ALTERA_ETHERNET */ + /********************* Arria10 EDAC Device Functions *************************/ /* @@ -1411,6 +1551,19 @@ static int altr_edac_a10_probe(struct platform_device *pdev) else if (of_device_is_compatible(child, "altr,socfpga-a10-ocram-ecc")) altr_edac_a10_device_add(edac, child); + else if ((of_device_is_compatible(child, + "altr,socfpga-a10-emac0-rx-ecc")) || + (of_device_is_compatible(child, + "altr,socfpga-a10-emac0-tx-ecc")) || + (of_device_is_compatible(child, + "altr,socfpga-a10-emac1-rx-ecc")) || + (of_device_is_compatible(child, + "altr,socfpga-a10-emac1-tx-ecc")) || + (of_device_is_compatible(child, + "altr,socfpga-a10-emac2-rx-ecc")) || + (of_device_is_compatible(child, + "altr,socfpga-a10-emac2-tx-ecc"))) + altr_edac_a10_device_add(edac, child); } return 0; diff --git a/drivers/edac/altera_edac.h b/drivers/edac/altera_edac.h index 7e66015..d2275b4 100644 --- a/drivers/edac/altera_edac.h +++ b/drivers/edac/altera_edac.h @@ -255,6 +255,12 @@ struct altr_sdram_mc_data { #define A10_SYSMGR_ECC_INTSTAT_DERR_OFST 0xA0 #define A10_SYSMGR_ECC_INTSTAT_L2 BIT(0) #define A10_SYSMGR_ECC_INTSTAT_OCRAM BIT(1) +#define A10_SYSMGR_ECC_INTSTAT_EMAC0RX BIT(4) +#define A10_SYSMGR_ECC_INTSTAT_EMAC0TX BIT(5) +#define A10_SYSMGR_ECC_INTSTAT_EMAC1RX BIT(6) +#define A10_SYSMGR_ECC_INTSTAT_EMAC1TX BIT(7) +#define A10_SYSMGR_ECC_INTSTAT_EMAC2RX BIT(8) +#define A10_SYSMGR_ECC_INTSTAT_EMAC2TX BIT(9) #define A10_SYSGMR_MPU_CLEAR_L2_ECC_OFST 0xA8 #define A10_SYSGMR_MPU_CLEAR_L2_ECC_SB BIT(15) @@ -280,6 +286,9 @@ struct altr_sdram_mc_data { /* Arria 10 OCRAM ECC Management Group Defines */ #define ALTR_A10_OCRAM_ECC_EN_CTL (BIT(1) | BIT(0)) +/* Arria 10 Ethernet ECC Management Group Defines */ +#define ALTR_A10_ETHERNET_ECC_EN_CTL BIT(0) + /* A10 ECC Controller memory initialization timeout */ #define ALTR_A10_ECC_INIT_WATCHDOG_10US 10000 @@ -326,4 +335,9 @@ struct altr_arria10_edac { struct list_head a10_ecc_devices; }; +struct a10_ecc_init_vars { + u8 ecc_str[32]; + u32 irq_mask; +}; + #endif /* #ifndef _ALTERA_EDAC_H */