From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932120AbcCGTki (ORCPT ); Mon, 7 Mar 2016 14:40:38 -0500 Received: from mail-by2on0065.outbound.protection.outlook.com ([207.46.100.65]:28626 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753537AbcCGTjp (ORCPT ); Mon, 7 Mar 2016 14:39:45 -0500 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: [PATCHv2 05/11] EDAC, altera: Add register offset for ECC Error Clear Date: Mon, 7 Mar 2016 13:43:01 -0600 Message-ID: <1457379787-8327-6-git-send-email-tthayer@opensource.altera.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1457379787-8327-1-git-send-email-tthayer@opensource.altera.com> References: <1457379787-8327-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: BY2PR1001CA0010.namprd10.prod.outlook.com (25.164.163.148) To CY1PR03MB1486.namprd03.prod.outlook.com (25.163.17.16) X-MS-Office365-Filtering-Correlation-Id: ef868b9c-1c84-43a6-de98-08d346c03a80 X-Microsoft-Exchange-Diagnostics-untrusted: 1;CY1PR03MB1486;2:fQ5UtxoRDXURr6fFA/PUXSwGFIRlNetja+tWw7T+82CYx5851Qz+XQWpmVpobLHhwS0HWq9nBTDs4tY2wfPUfB6DpGBHutuVTijPzCHapLBdBTHBLxFJNj0K9Gg8XGz9pFosSTwb60rhW7q4PzdeC9u30mseXzWNhT7O0Te9gqL+6221YkyuerQDmXcqsep9;3:rwXkUECo6yTKDCBSY5fMRMfd3eaAGVelDVzVJ9dfWDozUCbZg5dIt/lUlmhRyUDQUTtJx7zYjItpRwE/QHX6xS4wq63aLR3xJTscnrppaK7zZkgajvqJThnVDLlhYC5w;25:kaik/a7jvTrphPw1Hb5qixCJm70SEIJhqzF4vm5w1QGvNVmkpt7vsgFvTi52fDsjC+RZy7MmMWjzkrzCdcmHKcciVrmgy/Iqo8ff8TOUnY1f/fssFFGG+V92Vvs43vU1GFBZAhOb2O2anfz34On4dUB6OH5JIC9n1ik6KOLMEQCsDr+FxcK3UXepPOBTpT2Jg3f2CTPv06YXD8YqhfOA9QfgNkoyZ+q+kKCkaQG828TkprxMvZMd0IQ7/r4LpPavWTfJl97XCZZCQVPQcAfvJq78y0BGGYa+/Utvvd8D9sEogtn8WNFxkyqR11w5gEcdeH1FU93gVWo0QRxj2eRvdg==;20:wpyFV4FEMrvW+wMwgCZWBp2Ax4HEYUKvyGHQDS07E9yDyozG8SnBhaCJoTlETiv/ddnO/Yo5U8OyNNbbyH+T3XQVB1C2L/xc+By2N6/oHX9rL+drbVIfW7xbd/5Sag3CWrhiqCnXQi2ceRKGmbuwDyZXS/E6e96sVTSpLsnNk/c= X-Microsoft-Antispam-Untrusted: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1486; 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:CY1PR03MB1486;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1486;BCL:0;PCL:0;RULEID:(601004)(2401047)(13015025)(13017025)(13023025)(13024025)(5005006)(8121501046)(13018025)(3002001)(10201501046);SRVR:SN1PR0301MB2029;BCL:0;PCL:0;RULEID:;SRVR:SN1PR0301MB2029; X-Microsoft-Exchange-Diagnostics-untrusted: 1;CY1PR03MB1486;4:fCAB2lHY9ivOVggwZaL9UIeJ5izSAKtirPkHZ1BMAV/xbx/SlnDryDk4mYHz6umBu2XJFzohuLC6/UcHsxqx7JwDnvJ/DLg88wpZffwmIowC+B87HB2wM5sbiqapvjGfy53p1Py9JMljBP3ybtyqJ4giMeL9hvexJf7dQCmC3i+cw5EJh+Y1vwhwutWuqd1hAbGxm7m2QnY3tdLP87iIGEoQHzC11VsnuMquuoFCfKO8Lq6W0pW40Equ3w3WIIu65d3uPmIA5TBetyyL08U0uegxdIORu1ViuWEyM3KrgJ5Yl++AHa8E3dyAEVmdvhuW1uaMSw4tQfeEZ0wTTE50z3d1bzhw2XsPCudR3CNGTbqhHnhSO7k3rd2gHLQkzmWQ X-Forefront-PRVS: 087474FBFA X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(4630300001)(979002)(6049001)(6009001)(5003940100001)(4326007)(81166005)(92566002)(97736004)(5001770100001)(2876002)(5004730100002)(5008740100001)(86152002)(2201001)(189998001)(77096005)(19580395003)(19580405001)(40100003)(2950100001)(2906002)(122386002)(107886002)(33646002)(48376002)(229853001)(47776003)(50986999)(76176999)(42186005)(66066001)(50226001)(6116002)(3846002)(87976001)(86362001)(50466002)(4001430100002)(1096002)(586003)(921003)(1121003)(4720700001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR03MB1486;H:tthayer-HP-Z620-Ubuntu.137.57.187.33;FPR:;SPF:None;MLV:ovrnspm;PTR:InfoNoRecords;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?us-ascii?Q?1;CY1PR03MB1486;23:QutZZx/fMw6rp80sZ2r3F11N2ZQDKaKbtE+O2zuUO?= =?us-ascii?Q?JpOpy824Hh6V1AxvQG9HKtP+Jmr+qwUwFC/G8GKiZsVWOR704Lc7z9ewC99V?= =?us-ascii?Q?nxfaH1nIRX9lJDvo8oLZvzKzWSXnNgIbeD+HFHE6KqYyT1prNbpcZuUBg5W5?= =?us-ascii?Q?5dAcaGFuG7jPtRox2dlE7iIgFmJRvHvKMg8yztfrPaTqXxiiTsXIrItLY2am?= =?us-ascii?Q?3w0MfyU3ecwODteBhc9tvNLniwCY8LgLZCe4pwrg61WLld8VJ2H0INSQ62JO?= =?us-ascii?Q?8jQQWJFgGzM9g5lWX85pYJGRzdgWncBBSQ9uqVR5dkGFijix5B8BlInh0xsm?= =?us-ascii?Q?qK4Ibyo1LAsHIhYYNihh9rb3Xg3/L/n3wXkml2pvyLGIaFZvhoLv6d9kagUQ?= =?us-ascii?Q?sa5cgLIA0IUTH5QLR6A5kcccWIsN/zgOel34azoE+gBfiWeT4DwICQ9E3W1Q?= =?us-ascii?Q?c3UwkXIhDgTJZem21OnwROwuevhLx+3CPugKndwR7/GG1C0TQG+1jRJ5XIaN?= =?us-ascii?Q?BV3gSofA+BpXKZ5y6eQkspSgcUr7lKQ/EyKaj9RBVljiV6y/X3rrXpZX4z4/?= =?us-ascii?Q?PVLddrlAf3kQYRFr2Fz8iLrPedOKsnVQ9iaY+FnaZ4OIxaDH1LELPlA/AecQ?= =?us-ascii?Q?1UYMAeHkcfm0ak1j5uRAqtwHRpEY3jPeFHMDct/PluVqfgrLsuyt769BqkTj?= =?us-ascii?Q?FlI2zkd6+HPC5bVNwAFp9LibYxqZF5NlrKpr8g94+k2gemHjd6Yj3/JYqdEW?= =?us-ascii?Q?o3wu5hhPvvCiG9PaNor+71mFLpLBSh/qB1CEL4Rx/djYI8ZOm3ANPTmOUYvS?= =?us-ascii?Q?gzm1haNB9xxQmjF8yi1mqwdJ74WipAss+Na0NocUD4MHogaP2mJlgwaNgbJ5?= =?us-ascii?Q?uTkS1X3tXuPABT5kGAz1QZ0nGiFuXihT2i6LDNByNHVgnaphTpFYUw3rgh49?= =?us-ascii?Q?lRBOCGTrM8s5ZHfaPrXkg4q9JMJH5ZvFN+tLfLSKNXmK4pVtWnQFgjS1/T+9?= =?us-ascii?Q?fwTc42as6WXxKlTPQbMB0gPqyxwETbRg1kCdzwsUgf7Ou5SQUEGN1B//UxCq?= =?us-ascii?Q?F7gUMy2KFzp8n2Ayp6Wpm7noxXv3DD/OrvVJAoJQ4lb2+mMot8wnG7hSKtUB?= =?us-ascii?Q?JgeG46xkI3Eknm05IgUUAUyWWCAz+8ksk5Gjld9EG5tthX5hQyoBhTTpSndJ?= =?us-ascii?Q?gl59aMiJOVUBt9e+Cu/qJOoIDeVESLy8S4uqf7X65XlB3/oLfDk5JiB4A=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;CY1PR03MB1486;5:3G0RfEbPf+0PrR/CCealCpdOxx4F/1oCPo/2grN2k3X9QtYhb8ajspk/1UguyJAEuuW3TsyfhqP16wEWmsiEk3yjyqThs0roVTH/GoMftF61J95PwcqreeWPnnEOU4DdQapr63+/aN1PoNYTOoavPg==;24:WQnqElPzy/NaJhTq1qVoW4SV5+ZgPC8i0kZJxclgQz/zDCzu5cNHO8sHRFT8ICSr3cHzhW7Vx6IsWAjvHXJmNxITQyMDwv4zLWTlhPeg8zY=;20:+EuVptCOiaN4L5Yr/IgjVdJq3u6vvUWN3HENcdNk4AYt11qSTf9/7u2ePhtghvm5al/wG6p69NIBFCrC5ZDpBwJg5cKEgIjdEJ/LjBl33aHdaF6RP/p7LOX4M4pS+3Sr+b43uSJehIT3ZpIUw0LIvzfgrmzzcaIL36ajqaYKanI= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1486 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BN1BFFO11FD027.protection.gbl X-Forefront-Antispam-Report: CIP:66.35.236.227;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(979002)(6009001)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(122386002)(586003)(1096002)(1220700001)(5004730100002)(40100003)(85426001)(6806005)(50226001)(6116002)(3846002)(21840400001)(19580405001)(16796002)(92566002)(5008740100001)(19580395003)(66066001)(11100500001)(33646002)(956001)(105606002)(229853001)(77096005)(48376002)(50986999)(4001430100002)(86362001)(2906002)(81166005)(97736004)(3720700001)(87936001)(2950100001)(76176999)(86152002)(2201001)(47776003)(50466002)(5001770100001)(4326007)(106466001)(107886002)(189998001)(5003940100001)(2876002)(7099028)(921003)(4720700001)(1121003)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR0301MB2029;H:sj-itexedge03.altera.priv.altera.com;FPR:;SPF:Fail;MLV:ovrnspm;MX:1;A:0;PTR:InfoDomainNonexistent;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD027;1:k+98lnhRFb17zulZ9f1IAb7759jZXd2o+5G6JZqNrs/xXNnMgt6MES18S5ZwlAs1F20iDbs/eURr0YCDy3PnqRMM9XNZ8nTqDvPgHrdBQNEDKgLnAr9bwnrGFT6YIJm9h+rotsSOF/DyexL5x3BmJtT7MMlk02jBGnkAljUSedox7duRzf27wXHd5L/AGfFizGstUbYqeJL0FrjaiFNWWZKK2+Cu5xe8Lop1qm+UnZDQon+CpOZcTtmlVCYj8MQa4AwZ9rusyTDm3A9rErGyhM3WJbvT3eS8xG1aHcESLgeaCu+vLBS76BS6AxORwKUSi33af7bdifZep9FLL8P21OJ3cXFR8Rw+p/3WtBUhEfVB2LHACOsDHISt/9bGQTCPK8dgQWPwERktlWzZfMfvQ+ufMdvR8FY2HtHoGQmqHp/8gzghkMwkWiW7bphs/6x/oytaaVQoO08eZ/6kZWnusSrnvawd2hGQVFtBdfQzomc= X-Microsoft-Exchange-Diagnostics: 1;SN1PR0301MB2029;2:Fb9lpVjFXmySmG+Uzfm0QKGl58EqVcuU1HlJa/tssYmy+OPATGuqPh0dxn47iNzCAqeTKB0REavtUHpA5Q7fkYt0xf77Nn9e/jobRsPbZPFJB9hEkQM1Zm48fADC0HUsXpGdRjkM0Bgd800DMf9wufmTmsZcyuk9tiUm5aSY9w2tU48FkszBY3J6DXOxSR/x;3:+xFQ60jwW2H1MUJvWJteVGDdzhSVoUhdEow+IIgtj/bKHwUjYNtTbOVV//apkD+78XuGsh60CiEVSP3RawKozHV5F7YQOTsMPkr0tsyIbUSxu+QgHNha+OmAziGuQ73V6aDcfUveKhwh8nRoWZJkJlCbWhYHmpuhMHYoYN9YoEnAIOYgZSojaBHry3d3MBpawqO56m8oFKTuk+FXYUqkY4PQDsOGG6nUwtyEhCEYszkCBXDJ3vJ6rvVOxEB7IopM;25:YVCZVwJAbDWh3wgXYkwmzkX1DU045WYuKx7wDf/PWZwFyMpTlKjZrkfSPsLslZs1AB+2RblJdQXXMxCYnEga6hFVVcwibv04Ephzb59MgtewsGoV0pbeYSxJbiAjgbxMYdTnE3tzHsLNL+maP0Im6k1/XOVRhAVnd+f4zb2ncGl3AKwNmqGXdNCRitMZcp28PJbJswxO0ppm574N8IHgQmg+MpBStjHP3euYilHpAqyxgCbb5uMaj39WhCsHYn9m93xkNFYhjvfQVL7kRgl0wy2EVl/wsCHJjVFrrysw2zML2ttzLM5so6QASjIkvqCNU5DXs/+PzDVBrf+s1xLDw3ZPZsvDmHWwPWxsWmW8uzurNUIYINNYPdapHsO8BtZ/ X-DkimResult-Test: Passed X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(3001016);SRVR:SN1PR0301MB2029; X-Microsoft-Exchange-Diagnostics: 1;SN1PR0301MB2029;20:rvwugT1ZbuocxoeMXz+qcepgiCr26qEy6uLfkWP5bfQFxhVm+c/gwmGVrXYvFaUPYH0x+TCyQrA5kQHicSiygsKI5+qBAVK+YY0a1Uhdfb0vqrAqByrfU5ZP4tLXOJAoDVrcrC3RD7p1num7PBe8T5MRhgeRtthKyWMJJwhG8AY=;4:B/rfMl31crVqzdqqCve1QB9FYN4J87/rsZ6VdhV/+/fK0rmbrXD0eK3vHD4pR7LiGWA/jlXzkYIxqykplgFIYtcvJFP4BPk1cr01A1pnERaczHK02gy+YRnV+tnmV06puSGoG9OeQVjI4pdXX00PXcvnAlV2kh7VdE9gSJKwDdsqtELINDZ5gPHMFWEAu4iLVDBExy5DYuc/rMHsf+wYCdNzI8VRSpgkAu8+MfVU985+9qsL6GNcgew+Kh9pVpoIz1AyE8281vbK1rj0vI3kPf5FRnPOHBHgqnllITZQmcW4BJugZNtNYqOD8gPQO+wS5zRdMtDnHUs5QLn0SUxjlxWrRzI6a0QBRJ1vRUHCILtyVL+/i1M9pdCxGuSeAEy7DyqqUyFRX3jIE/R8fM8efihu2usn4SqI6ST8i8ua8ockfxVU3r2POQQRqFm+VK3rtWUwDjV+bGnhXvUjgaLiWQ== X-Forefront-PRVS: 087474FBFA X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SN1PR0301MB2029;23:Msi3tj8NzFOJxlwg7GxSBdjai/InvBD3f9l0rTf?= =?us-ascii?Q?A2e8aZJHqMF3L5vYp3b5KQIZMj5CTQLxrMmHS9hWbgLX9AnzN+4FwSHDMqTw?= =?us-ascii?Q?2JjEYMol66J3Q81fIwNNKP5W6CaCGRc+ZtchS0ccaz2rs44xAQgmDthhWH29?= =?us-ascii?Q?laplTfzJJ/lU+I0m8YfRbzX3MyDzUgmScDUhWMSjPEMxhY6SMwdULNJpVLjt?= =?us-ascii?Q?6knOqTYn/Uu+IHsDCo9rTZAn76qTzFJwINswS1MYcqZXvjAW8V3PZPS5GZVv?= =?us-ascii?Q?ClQnXPSnj8hQJdCbnCZmIoqTcttQpbV38M7Ol5YdY3opBkSLqBDiZJOoJjt4?= =?us-ascii?Q?ul+50iHWxPYYvydqlG4nIIBH4fB2JXeyzTeUgNHcBZ84HPom01QkTSR6Yale?= =?us-ascii?Q?2ROVf4sp3ed9vQTgn3felmAp3U4D+NMdLu8KAABI5ojFiPwmeTUqp0CiJM5D?= =?us-ascii?Q?rFb12rUcP2z/eKY6XKDR4MtWquJAkvNbgGkM75iGzcPliIcHrEoPCe3/Cp6+?= =?us-ascii?Q?nB+X6qaCKdH/9A9GoIQmyeLDNHybNGaM/FTqRJ0XLDaWFiKD+1aPtrd6h9Ts?= =?us-ascii?Q?6ZPVuSkI+z8U60aDdsY3Du/v727jU1Fu4X0rlCW2otQroZLRYmmSIgAR9GAI?= =?us-ascii?Q?ImfTPOA1Fh24gXiaR1Ja9J69WZqt5+TGvTXPAXGQZ8JhWwSlqYTlvu9sf8lc?= =?us-ascii?Q?mSRJ+2KBKpkBE2VGBpyxc8e3FC9VpjJUaAoYycR7ErR0M7q69tqrN1RcebuM?= =?us-ascii?Q?jAidWQpT2e+b7zRueJ0fLcLXkrDE+NSFM51IE0teM5A0CFYlAUcYcZROA2u8?= =?us-ascii?Q?q0CuFRDbZPKzq4vywgyiLeAO7/OYU5R1YnCu7o9AuKBPpUiCJYxYAK4LMz7p?= =?us-ascii?Q?aQxbkSefjwxqYIdIQW9nexyz3Yeloxo98ofSpSlG7AGB/tvyAehB4Ypn77N3?= =?us-ascii?Q?DZkTMBNPd2NNGJG3FSn8f9o/v+SjZy0ac6dsIu9I9mpqP8pczqhGw8IJMRaZ?= =?us-ascii?Q?4whAh8yxuX6zD8PCtYsBoeSE/lyuaqPb35HtQ2UF0d9QeKqo6M2X0W+2oU0p?= =?us-ascii?Q?1MfO7oPX961g2zDxfhEfBVXKMHv8b+ivTZJ57Ya2FfuFWQtE5vHhd7/jxl7s?= =?us-ascii?Q?6E8ODWeOJzjHVevrRyI9Vxhb8ZDiYH9mJWYiI+G5MPvkok6OnrJw16D4xyhr?= =?us-ascii?Q?CfQABrSkOcNW3dVM+XhVDTFtKHzMWdm5tOOaR6AhLS+iuU20jyeXWZo2Tp4H?= =?us-ascii?Q?Qw0qJViw6drT+NFykZcy4w7Asxj6EdoWWCClr6Z0mYWJAV/5pJmOGMXnFWc2?= =?us-ascii?Q?3YCxptpHU4r3lOG7g9J/Nqjxiea+7qUny9vhUhDllpeosw3xXjClneD201Q/?= =?us-ascii?Q?7EiFhb9WL3TS1BUY8FcDJbeAB8ost9O6cjWTjgar6p/MdmAAaOJRpwh1P2ZU?= =?us-ascii?Q?Ng9vsfTOnPBbY/eEnKfe9QuU/+T6HrIL2+V0yQOVbfB9Uwweg4qilmXUp+yQ?= =?us-ascii?Q?J1IOG+7rvy/+S0AenFzhZbNyrIx9Yxw22kgpG+ULLf7R3cTV1MFg7WJty?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR0301MB2029;5:fJOMIQ4dJiewNGtnQboyV3NzHAo7258lp6VpxtngZUiWeKKNDFJ3R1eDROkFu8bOkfUCkR8KppDazYJsBW44Nu5dCbQNdHN1tPdVMFQcWTxfvNS49/6L448Rzpi4gsNCxEqUDK9hTvB1JisITysQCA==;24:is/L8QpV1vg5jm1iF8WLpXwZmsh0VjA4lYRUcUyat84UXYau4snt3p86gYhGFX1f4rfIaVFgkGbXu8V9/TnrUDu5vPYkfsKDOGBdIqmlVDw=;20:xQMtDj1GZayk/gQQ3eZBim4gGOgjwnPZ6MYQ7tI4Df5ZF6itP75MYlHj6XLLcAlRmDYGB8Hmpzz0haoSYKk2j4pT+VKxAtXM01hW+NaGhT+2NivhfLUO7nPYDqTebfBxet6gJOp0FuFPrzTRYhp354QU8DP1aqy9twjXlGN+v40= X-OriginatorOrg: opensource.altera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Mar 2016 19:39:41.4973 (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: SN1PR0301MB2029 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, a register offset from the ECC base was added to the private data structure to index to the error clear register. Since the Arria10 L2 cache ECC registers are not contiguous, a status base address was added. Signed-off-by: Thor Thayer --- v2: Split large patch into smaller patches. Add an ECC error clear offset to support the different register layout of Arria10 peripheral ECCs. --- drivers/edac/altera_edac.c | 10 ++++++++-- drivers/edac/altera_edac.h | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c index 9e62a49..c28cd78 100644 --- a/drivers/edac/altera_edac.c +++ b/drivers/edac/altera_edac.c @@ -556,15 +556,16 @@ static irqreturn_t altr_edac_device_handler(int irq, void *dev_id) struct edac_device_ctl_info *dci = dev_id; struct altr_edac_device_dev *drvdata = dci->pvt_info; const struct edac_device_prv_data *priv = drvdata->data; + void __iomem *clear_addr = drvdata->status + priv->clear_err_ofst; if (irq == drvdata->sb_irq) { if (priv->ce_clear_mask) - writel(priv->ce_clear_mask, drvdata->base); + writel(priv->ce_clear_mask, clear_addr); edac_device_handle_ce(dci, 0, 0, drvdata->edac_dev_name); ret_value = IRQ_HANDLED; } else if (irq == drvdata->db_irq) { if (priv->ue_clear_mask) - writel(priv->ue_clear_mask, drvdata->base); + writel(priv->ue_clear_mask, clear_addr); edac_device_handle_ue(dci, 0, 0, drvdata->edac_dev_name); panic("\nEDAC:ECC_DEVICE[Uncorrectable errors]\n"); ret_value = IRQ_HANDLED; @@ -742,6 +743,9 @@ static int altr_edac_device_probe(struct platform_device *pdev) if (!drvdata->base) goto fail1; + /* Except for A10 L2 cache, status reg is within alloced base mem */ + drvdata->status = drvdata->base; + /* Get driver specific data for this EDAC device */ drvdata->data = of_match_node(altr_edac_device_of_match, np)->data; @@ -875,6 +879,7 @@ const struct edac_device_prv_data ocramecc_data = { .setup = altr_ocram_check_deps, .ce_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_SERR), .ue_clear_mask = (ALTR_OCR_ECC_EN | ALTR_OCR_ECC_DERR), + .clear_err_ofst = ALTR_OCR_ECC_REG_OFFSET, .dbgfs_name = "altr_ocram_trigger", .alloc_mem = ocram_alloc_mem, .free_mem = ocram_free_mem, @@ -949,6 +954,7 @@ const struct edac_device_prv_data l2ecc_data = { .setup = altr_l2_check_deps, .ce_clear_mask = 0, .ue_clear_mask = 0, + .clear_err_ofst = ALTR_L2_ECC_REG_OFFSET, .dbgfs_name = "altr_l2_trigger", .alloc_mem = l2_alloc_mem, .free_mem = l2_free_mem, diff --git a/drivers/edac/altera_edac.h b/drivers/edac/altera_edac.h index d4105b0..f15b4ad 100644 --- a/drivers/edac/altera_edac.h +++ b/drivers/edac/altera_edac.h @@ -225,6 +225,7 @@ struct edac_device_prv_data { struct altr_edac_device_dev *drvdata); int ce_clear_mask; int ue_clear_mask; + int clear_err_ofst; char dbgfs_name[20]; void * (*alloc_mem)(size_t size, void **other); void (*free_mem)(void *p, size_t size, void *other); @@ -238,6 +239,7 @@ struct edac_device_prv_data { struct altr_edac_device_dev { void __iomem *base; + void __iomem *status; int sb_irq; int db_irq; const struct edac_device_prv_data *data; -- 1.7.9.5