From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161161AbbENU0i (ORCPT ); Thu, 14 May 2015 16:26:38 -0400 Received: from mail-bn1on0082.outbound.protection.outlook.com ([157.56.110.82]:31936 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S965034AbbENU0e (ORCPT ); Thu, 14 May 2015 16:26:34 -0400 Authentication-Results: spf=fail (sender IP is 66.35.236.236) smtp.mailfrom=opensource.altera.com; arm.com; dkim=none (message not signed) header.d=none; Authentication-Results: gmail.com; dkim=none (message not signed) header.d=none; Message-ID: <555503A4.2070802@opensource.altera.com> Date: Thu, 14 May 2015 15:20:52 -0500 From: Dinh Nguyen User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 MIME-Version: 1.0 To: , , , , , , , , , , CC: , , , , , Subject: Re: [PATCH 3/4] edac, altera: Addition of Arria10 EDAC References: <1431553787-27741-1-git-send-email-tthayer@opensource.altera.com> <1431553787-27741-4-git-send-email-tthayer@opensource.altera.com> In-Reply-To: <1431553787-27741-4-git-send-email-tthayer@opensource.altera.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: SN1PR07CA0006.namprd07.prod.outlook.com (25.162.170.144) To BN3PR03MB1367.namprd03.prod.outlook.com (25.163.34.153) X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1367;2:WKtxYXOvFJN6nC0yFtm1+UXLy22DFU0A4tpT0BKcY0/0w/Cm9ujMYgk7XGfPjZq1;2:snYhDPxvYzuOWVvHMpkirYx5UL19Wo9PRVy5n9C+nmCC/Myt5+rPjTCojHebCwKfGyH3gwHvbgGGOVhPnXJc/jz/RNgJDODAXkeKDHh+3LK9mhlTx5KicQf0XStqgwQJ2Ik6aq1qBaMoW0WOJRXd8w==;6:VJtM9k2yDo+rj2+0taNg+q2EHevISkwIaiQDeeFQKqSzuq4sh8cPMzmzxYtGhdO6SOBccm9qvBovaynvl0RyvZJs0uQfBTYGPdTsQ52+kmQbRfpku6RLd9stB9r4hBneeoyyOsj1FSYZKD0A9iba+w==;3:61awpHPaxD3KlUeq/Iq8qD026sgP7tK7sU/0I6hEsOROifu6p5HChL+0fjYayy5lbL8kML1owL3sHBFP7QONn8PTh36KgfzBb0wbMmhhW046fDb4DQd1tTMh5Df2OLnJFLMxaPxjPEY0xS8ntIOQgsippQLfT6t+AQrD7ujfdMF+XB/jNicEjbe+Wq12LExKT+TMcfAN5Wyit0mLUpmqXg3doFV7XTcFMoqmepaaFUeok1nuDzFwyC3aJOXf7xzSNGiLw7EEMxP713VTzq9TL27L6AlgluhdJd+J490bvbw= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1367;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1429;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR03MB1491;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR03MB101; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:;UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BN3PR03MB1367;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1367;BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BLUPR03MB1491;BCL:0;PCL:0;RULEID:;SRVR:BLUPR03MB1491; X-Forefront-PRVS: 0576145E86 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(6049001)(6009001)(24454002)(51704005)(377454003)(479174004)(77096005)(59896002)(83506001)(33656002)(5001960100002)(65956001)(2201001)(46102003)(66066001)(65816999)(50986999)(87266999)(76176999)(54356999)(42186005)(189998001)(47776003)(5001770100001)(122386002)(4001350100001)(92566002)(50466002)(62966003)(77156002)(2950100001)(40100003)(19580395003)(23746002)(87976001)(86362001)(19580405001)(80316001)(99136001)(921003)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR03MB1367;H:[137.57.160.210];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?Windows-1252?Q?1;BN3PR03MB1367;9:/MSRqbZwHjmw+WhBOfzOGceS/6VAaAbBa/GDid?= =?Windows-1252?Q?P+q4ylSGxYRENyoMhrIJxW1xZtYei+sgkI/BJsfaBVo1sguRqBgXAEYB?= =?Windows-1252?Q?+2csCGHaB5bxL8ZeIRzanuw4qzzbPOhzuxpAetncg/eGnPC5hpvkbMhc?= =?Windows-1252?Q?oHi/TGHaMfxRR0HMy28CE3iUhAnDGu1VTd/7hewFDoxGKygSv0jjLrD8?= =?Windows-1252?Q?oaikYeL6bhep/xeYYS6KcO0gSaJuwwHotP7tqcMGxem8YKkKgJVNISPe?= =?Windows-1252?Q?3UHzv2W1clNd2LlWKYxwZixGkqfPjpnOYzE1fvXYRwov114+YfcxbxKm?= =?Windows-1252?Q?Ug+pFRkLUfiQI91ueSmh1YD/cjPKP1shyp+qqg85BRbDDRawzq2YM4yS?= =?Windows-1252?Q?QEDCzk2iiLKBAjRiHptYuCfjQU4rsBmpoE8qcdiZlh+ATqY2naxDAm1q?= =?Windows-1252?Q?vJmrWNwp/YDV6OGOc2S5bINuYrNdq3oFetnZz3p1yTa1jZIqp42t5xcW?= =?Windows-1252?Q?0GYZ57C4ZgDgaXaM9mHehlJESwt2uHwtNRTqPmRsId7NrNys6Ezjyr+m?= =?Windows-1252?Q?v9xx4oymeHVc/gsFxzSI0VZqQR+yj1Hs9bQJ4gAGC8GQ0Tax84tooXTW?= =?Windows-1252?Q?UiD+Qc8y2vy+rhRLbnNhbwll+njKdN7abT+4EDJS5XorKC13jvJmk0k3?= =?Windows-1252?Q?np2oTdg1VEwUmkR4hodi6RIjUOPGd4kmOOB+t1GObclFcywM/0ek9Uyi?= =?Windows-1252?Q?cER1q3anA8tSEH9bTG51SxO7A2OnBL4csrhFzkVZB1lXo2Ihl+sdrjLu?= =?Windows-1252?Q?MBUo2G90lQd5PsryAifhDNqwGUBX151gXZ41LiEH7wXHgJ4Lka4Sq+A1?= =?Windows-1252?Q?v77Xg/clgAh2vdFGKxH0SoqaaVkDPAXbISZDVZXDnSx6gIrIZUJw820M?= =?Windows-1252?Q?nrQhIQA7vyP7e0sarT+woPv6LfNkouS26fH1PallET2OfJlwDNfzhuOm?= =?Windows-1252?Q?DwDdjtPIaxpu71ulVkVoqNaWkoAD+iO+1VouSaKtQZ9nJqRkpzRzQJox?= =?Windows-1252?Q?kDNmxUobwuW6oVcattqrrs9tuLTdTfMNM3N9GT9NrrI5PzbxDQ2gqsFM?= =?Windows-1252?Q?hC72fuj0owaz49Eordhe5PY6ksT/IZRbgW0ThARtbf?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1367;3:0Ff8lcPOCRcY5ps/uF2FED5lQ6UN3Lfv97fz7PSFol0ckn4XK3mb91Mu6RYavma+36JU/VKwPv744PTj8IbdjTDUsBaGuSCjQtKAMS9yWl3/gHFWJ3J8BKyyi2lN8y0zFDJRf/Vw/0U5e3K38tDKEw==;10:mXOjnKAU/lzqVN/3m/12z06IBk2OuZvU0C8rWSuyuYOhxLZxLFpX2ICXbi4b4lyQR+/yQJ+RbQPBHiLmZj/fmAVShRYISY2JoTymCx9Nuq8=;6:Wg/EBkBzTSc7suUdPyAFPyVf0oB2FOdHAxw8xHyrVGC813bfaeqPBrQOeYKuyGCVYprPpQxWHGQiQAhOQCbznnoDvyH+5RItW4VMmj4LaFHoba+lOQc30z2DSJ8KRIqXmCyruDAh0uI8i6qDOPnQCQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1367 X-Microsoft-Exchange-Diagnostics-untrusted: 1;BN3PR03MB1429;2:83LZMuDrnFcBoWGTE30Xgs3f92wjQZIN0gte90rlmWTWHROObOkuawXrWB/FqxwO;2:OFtdTOqDHds6zLl9XlxTCYf5ZQWiiLhntLs+7Lmaypklt0T7xH/uy2XeLHzQB5Xjmhbp8Z4yEph9fbyXkkG/BHO686vGfYdELFzGjFuxJzV0rbptAqmXSeZDastUQ4YuGu5ASnZpdyekxF+vjD7MWg==;9:wNT1/3djEToi2/KO8qt8J4IdZoufgdcX6axEI6VIX2UUYftdXYqi+7v+RCyljLO6TvmKOQ9z6KbhdDkkMDI/3vP2VrvX9iWyVCijpL6XFY6Xxh1lJqF6Lx2RYkoZnnJVqZUdBWQR8e5c5h1XTTg6ww== X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BN1AFFO11FD029.protection.gbl X-Microsoft-Exchange-Diagnostics: 1;BN1AFFO11FD029;1:TQKYYPmiifTQ1REFSKbfQOhofqoxC3I8xDog0fma5Gdksif7pJeilIfR9dQDPNXj1JVGTTJfVgpjm1/rvvd2IC6QfWBkRiM3xZl/6ZNdH3by4pNyvXtK4OaStX3K5uL6Vp2gw39//wyzw+VzBkKoaIu8nzlQEPbHFf+uNjCQ8Su18CBd97ncGFbU3XTRQdMbGlyjKdKP+Ee9PxyMp/rTY1EVbfr7hNLIJqosVurF0abHinOENxwCNLm+92lPyTm/OVFAcu9Q8A7SEmOj4IzOn1uD+3IbNLSOcT5A6PGf2tMHgEtKYtk/3r3NvNYG1/8v X-Forefront-Antispam-Report: CIP:66.35.236.236;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(339900001)(24454002)(199003)(51704005)(377454003)(479174004)(189002)(64126003)(77096005)(6806004)(59896002)(90366008)(85426001)(83506001)(33656002)(106466001)(5001960100002)(65806001)(65956001)(2201001)(46102003)(66066001)(65816999)(50986999)(87266999)(76176999)(54356999)(189998001)(47776003)(5001770100001)(81156007)(122386002)(4001350100001)(92566002)(50466002)(62966003)(77156002)(2950100001)(40100003)(19580395003)(23746002)(87936001)(86362001)(19580405001)(80316001)(105606002)(99136001)(7099028)(921003)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:BLUPR03MB1491;H:sj-itexedge04.altera.priv.altera.com;FPR:;SPF:Fail;MLV:ovrnspm;A:3;MX:1;PTR:InfoDomainNonexistent;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB1491;2:gGN0SI0g7px85mUc+AC9Y2y0z4hIE3cbeVHWdXOGt6/08VjBKPGrYOhjJCmyWDpV;2:3+lk7pIUS74rE8xHPFzvznZ3vQoV19jHit2LURzRQtegGJspz2KQDR/NcGmftI5AzEfA8G8kYD7ryYmBRsvJjKp7qK6TzOTHICV1CQ6xbIkW44Nl85BxH4l9lg/EDhnONWnIltZjP5QVXV+XnqyinOxE9T8VnUq/gBN1RigLxPTP7J4JQaYjqhivnXIe8vDgM7Y8LN3QT1Ku5aYzCJoBIrSu7Qaxmes6wthF3muPoig=;6:CisR4y3lMsE+Q2oplonTOfyhOIV14TN46Yu33oJ55i36Bu2oni3unhF+rJCCBX8yjB5WWT6l/ch/WbhtCQS6gV/AJdI2TaycWxisB9g4TU6SZKJoHwYFrDOY6G3oxjpOS3dtKvUSrQv2Hi25nLpX1g==;3:au1vYdPuSIRazHLY1ggXtHFMi0PE+AfUQ5lt7DYiCPrzwrtBwt+Hrv/ZOBSKEi22xomswvnVeTYXUsXdgEy2VWgAzWQxF7Iu9WKYcwyngAiK88EBdyT5eXGDOFd/mzJGEMUcb3Wu7XyxeWluTGertWYHGQWNT0n3vrOAVSfbcLUJI0GTwxU2kEft3D1S95+go2+RZfx39Cz7diK3nAh1lYi4CBVsk16fnSxNWmOQUOgs483wkWREh30dbJis0Na7l5wfCR6yDUYcIYEI9r1BDrtVd/HusPjnGDPfC2HT/No= X-Forefront-PRVS: 0576145E86 X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BLUPR03MB1491;9:Y9RiZqw0E9LFD3BOfzLF97+ngqfS4CDnJfiH+u?= =?Windows-1252?Q?zGGFNCbMAvUR17gShmbqmWr4sPgR0qPDMTDoA1n96p6pZcEuQ9MTTnqg?= =?Windows-1252?Q?0w9NrRdZYvND+K2W4ASLKXFhZnSQKDfKIPAdY0w93SNeisGW6SidH0jD?= =?Windows-1252?Q?vhJob2Rlkm3InL+0I3Ppzy5jOTnZqvXyBpIfxS02zrjXZAVIGddq8QN2?= =?Windows-1252?Q?rvAN3HkmwY6C41nvfrzW/JXAnL8EB00K8Rbwi3mvcBS4KQ3HesGCH/Wg?= =?Windows-1252?Q?H4AfwztB2POVw6xhUBGHCe+h7nVyhc3cSySS64NYKyiAIjCwSmZZq7/X?= =?Windows-1252?Q?ZqAZvk5bwbJFeMrV6Lm3wPtC6+/OCuDiv0W0CRlI9YpgBRAbX4UAlgsi?= =?Windows-1252?Q?NIwFDOJzQUdn9SzE0d/rpM0UW1hETkBMQQpnSx7BCW2LKc77wQ7yjAy1?= =?Windows-1252?Q?Cq3I5FDfrgWnMgfqXwHvuvsCIZt7Sb8QmSCMFXIfQJ54o/ARX2idXpqg?= =?Windows-1252?Q?nRGnZpudHR1igre6wO/XgKxPe1dbW04Re8pUV9HoGwkpxsCNq73KWMLn?= =?Windows-1252?Q?KPQZxQQAQVrPl9CHI8JddGGTNzV5McrJ2AdYiO8pmGtqDQwVU1eS6P4U?= =?Windows-1252?Q?7cBWBXgpdGgnXcfNwjuGA08RyYhkTY5nOdlRy4wdssgeky/rYid5vS82?= =?Windows-1252?Q?L73cNFWzaLy+944ZHOklBAEWVzojChDLUg68olUb8Gkw9sLZ29XKKfoj?= =?Windows-1252?Q?iL+pz4HKybrDUCEoacwlWPB0X393vNU4HyrCQ3D1rqGu2keekwxXYXox?= =?Windows-1252?Q?V3xBCftcybTlHU0xcX8YaQfA1BOTS8/qPUrnPAuMVI4ByS6PK/zBjWw5?= =?Windows-1252?Q?YDLqSaQaaLfrUuarUhwHvzC4ZUdYqq5WEkCGNpPg64D8Qy6MPkQxAi8T?= =?Windows-1252?Q?qImpVZmeRMWsqf4v5s7MM9burxKbx38PTpwJVHTDx+6L3ZUFXc4FOba3?= =?Windows-1252?Q?gofkuUVRqmIMcnJX3xddWs2t9XwgCG46De1ExfmHBh5imAzINx0uWQMZ?= =?Windows-1252?Q?9c6k2ZsXWlYxBg86NrQkLgpMZxOf4p/Ly22+CZypxPQdyjcQQbwTIxDz?= =?Windows-1252?Q?h7wiETBeL7xyTp2qMg6Is6u6da2SUX/QKjs7U2/vwPrM87aiCvq8uJe9?= =?Windows-1252?Q?8GRMEzXuDCJ26Kkvo3rA+M9+F5POvO1bdFVx2JwjBvr6hsLPkTuKNxpi?= =?Windows-1252?Q?WKtAkD/9/juPnp99xo5u4pWAw5Fvl/H2InjlEHef+vgZiMHMXgE/u4n9?= =?Windows-1252?Q?1rqPwAPXqi4rlbLucaV/tYEgguyNp36o58VKk2Z6Mf4WBwxWZBQMJ9wb?= =?Windows-1252?Q?JBSMnU7yWs?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB1491;3:2j2agclyCWWC4x4S+nzyMqUUn96jH1UK3e9xTuPSdWCWSgdpBjERnWhwhufFtvZVaGs8dKBPbYgm/THrCZjB0hqcoJS8iWI+oqC8sdw/ovMMaJOO9A81EgFae6Wyk04D1hbubI48CVLUeDTDvpobpg==;10:20evfvV8yHVqhihPwjETIPz/nluuo+HUsew+XkZvEU4iNeHuPx5bgqCM2/yincHX2S+C7o+WirEHm3l2XKR3EcXQnmr7YSjds/TKNRup/RM=;6:OT/A1SPoBX8ZJv+SHTB7MgEazaOvSGwpxq0B6CP/908a89z7f574z1Tc86PJnMNrfDnVn2jtdULDbtfTzomFfUDr5kvKx1mj9cWfwg9OGv4AbEoLoR7h/8YfNJQ2ZsoWu9i4jjeQOOhUrLPKlAV8sQ== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 May 2015 20:26:12.7973 (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: BLUPR03MB1491 X-OriginatorOrg: opensource.altera.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05/13/2015 04:49 PM, tthayer@opensource.altera.com wrote: > From: Thor Thayer > > The Arria10 SDRAM and ECC system differs significantly from the > Cyclone5 and Arria5 SoCs. This patch adds support for the Arria10 > SoC. > 1) IRQ handler needs to support SHARED IRQ > 2) Support sberr and dberr address reporting. > > Signed-off-by: Thor Thayer > --- > drivers/edac/altera_edac.c | 132 ++++++++++++++++++++++++++++++++++++++------ > drivers/edac/altera_edac.h | 85 ++++++++++++++++++++++++++++ > 2 files changed, 201 insertions(+), 16 deletions(-) > > diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c > index 204ad2d..735a180 100644 > --- a/drivers/edac/altera_edac.c > +++ b/drivers/edac/altera_edac.c > @@ -42,6 +42,7 @@ const struct altr_sdram_prv_data c5_data = { > .ecc_stat_ce_mask = CV_DRAMSTS_SBEERR, > .ecc_stat_ue_mask = CV_DRAMSTS_DBEERR, > .ecc_saddr_offset = CV_ERRADDR_OFST, > + .ecc_daddr_offset = CV_ERRADDR_OFST, > .ecc_cecnt_offset = CV_SBECOUNT_OFST, > .ecc_uecnt_offset = CV_DBECOUNT_OFST, > .ecc_irq_en_offset = CV_DRAMINTR_OFST, > @@ -57,37 +58,62 @@ const struct altr_sdram_prv_data c5_data = { > #endif > }; > > +const struct altr_sdram_prv_data a10_data = {\ This should be static. > + .ecc_ctrl_offset = A10_ECCCTRL1_OFST, > + .ecc_ctl_en_mask = A10_ECCCTRL1_ECC_EN, > + .ecc_stat_offset = A10_INTSTAT_OFST, > + .ecc_stat_ce_mask = A10_INTSTAT_SBEERR, > + .ecc_stat_ue_mask = A10_INTSTAT_DBEERR, > + .ecc_saddr_offset = A10_SERRADDR_OFST, > + .ecc_daddr_offset = A10_DERRADDR_OFST, > + .ecc_irq_en_offset = A10_ERRINTEN_OFST, > + .ecc_irq_en_mask = A10_ECC_IRQ_EN_MASK, > + .ecc_irq_clr_offset = A10_INTSTAT_OFST, > + .ecc_irq_clr_mask = (A10_INTSTAT_SBEERR | A10_INTSTAT_DBEERR), > + .ecc_cnt_rst_offset = A10_ECCCTRL1_OFST, > + .ecc_cnt_rst_mask = A10_ECC_CNT_RESET_MASK, > +#ifdef CONFIG_EDAC_DEBUG > + .ce_ue_trgr_offset = A10_DIAGINTTEST_OFST, > + .ce_set_mask = A10_DIAGINT_TSERRA_MASK, > + .ue_set_mask = A10_DIAGINT_TDERRA_MASK, > +#endif > +}; > + > > + > static int altr_sdram_probe(struct platform_device *pdev) > { > const struct of_device_id *id; > @@ -221,8 +295,8 @@ static int altr_sdram_probe(struct platform_device *pdev) > struct regmap *mc_vbase; > struct dimm_info *dimm; > u32 read_reg; > - int irq, res = 0; > - unsigned long mem_size; > + int irq, irq2, res = 0; > + unsigned long mem_size, irqflags; > > id = of_match_device(altr_sdram_ctrl_of_match, &pdev->dev); > if (!id) > @@ -288,6 +362,9 @@ static int altr_sdram_probe(struct platform_device *pdev) > return -ENODEV; > } > > + /* Arria10 has a 2nd IRQ */ > + irq2 = platform_get_irq(pdev, 1); > + > layers[0].type = EDAC_MC_LAYER_CHIP_SELECT; > layers[0].size = 1; > layers[0].is_virt_csrow = true; > @@ -332,8 +409,31 @@ static int altr_sdram_probe(struct platform_device *pdev) > if (res < 0) > goto err; > > + /* Only the Arria10 has separate IRQs */ > + if (irq2 > 0) { > + /* Arria10 specific initialization */ > + res = a10_init(mc_vbase); > + if (res < 0) > + goto err2; > + > + res = a10_unmask_irq(pdev, A10_DDR0_IRQ_MASK); > + if (res < 0) > + goto err2; > + > + res = devm_request_irq(&pdev->dev, irq2, > + altr_sdram_mc_err_handler, > + IRQF_SHARED, dev_name(&pdev->dev), mci); > + if (res < 0) { > + edac_mc_printk(mci, KERN_ERR, > + "Unable to request irq %d\n", irq2); > + res = -ENODEV; > + goto err2; > + } > + irqflags = IRQF_SHARED; > + } > + > res = devm_request_irq(&pdev->dev, irq, altr_sdram_mc_err_handler, > - 0, dev_name(&pdev->dev), mci); > + irqflags, dev_name(&pdev->dev), mci); irqflags was never set for the case of !(irq2 > 0). Dinh