From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tirumalesh Chalamarla Subject: Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 Date: Sun, 14 Feb 2016 19:36:18 -0800 Message-ID: <56C147B2.9010303@caviumnetworks.com> References: <1455319230-30201-1-git-send-email-tchalamarla@caviumnetworks.com> <20160214170152.GC3965@htj.duckdns.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20160214170152.GC3965@htj.duckdns.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Tejun Heo Cc: linux-ide@vger.kernel.org, stripathi@apm.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org List-Id: linux-ide@vger.kernel.org On 02/14/2016 09:01 AM, Tejun Heo wrote: > Hello, > > On Fri, Feb 12, 2016 at 03:20:30PM -0800, tchalamarla@caviumnetworks.com wrote: >> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c >> index 546a369..76e310e 100644 >> --- a/drivers/ata/ahci.c >> +++ b/drivers/ata/ahci.c >> @@ -1560,6 +1560,9 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) >> if (ahci_broken_devslp(pdev)) >> hpriv->flags |= AHCI_HFLAG_NO_DEVSLP; >> >> + if (pdev->vendor == 0x177d && pdev->device == 0xa01c) >> + ahci_thunderx_init(&pdev->dev, hpriv); > > So, this would make ahci fail to build if thunderx is not configured. > Maybe we should add an additional callback to update hpriv. > >> /* save initial config */ >> ahci_pci_save_initial_config(pdev, hpriv); >> >> diff --git a/drivers/ata/ahci_thunderx.c b/drivers/ata/ahci_thunderx.c > > This driver isn't upstream yet, right? Maybe just fold this change > together? > There is no need for special Driver, AHCI is sufficient for ThunderX, the file only contains this interrupt handler, is it preferable if this interrupt handler in libahci.c with others, instead of separate file? Thanks, Tirumalesh. > Thanks. > From mboxrd@z Thu Jan 1 00:00:00 1970 From: tchalamarla@caviumnetworks.com (Tirumalesh Chalamarla) Date: Sun, 14 Feb 2016 19:36:18 -0800 Subject: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 In-Reply-To: <20160214170152.GC3965@htj.duckdns.org> References: <1455319230-30201-1-git-send-email-tchalamarla@caviumnetworks.com> <20160214170152.GC3965@htj.duckdns.org> Message-ID: <56C147B2.9010303@caviumnetworks.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 02/14/2016 09:01 AM, Tejun Heo wrote: > Hello, > > On Fri, Feb 12, 2016 at 03:20:30PM -0800, tchalamarla at caviumnetworks.com wrote: >> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c >> index 546a369..76e310e 100644 >> --- a/drivers/ata/ahci.c >> +++ b/drivers/ata/ahci.c >> @@ -1560,6 +1560,9 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) >> if (ahci_broken_devslp(pdev)) >> hpriv->flags |= AHCI_HFLAG_NO_DEVSLP; >> >> + if (pdev->vendor == 0x177d && pdev->device == 0xa01c) >> + ahci_thunderx_init(&pdev->dev, hpriv); > > So, this would make ahci fail to build if thunderx is not configured. > Maybe we should add an additional callback to update hpriv. > >> /* save initial config */ >> ahci_pci_save_initial_config(pdev, hpriv); >> >> diff --git a/drivers/ata/ahci_thunderx.c b/drivers/ata/ahci_thunderx.c > > This driver isn't upstream yet, right? Maybe just fold this change > together? > There is no need for special Driver, AHCI is sufficient for ThunderX, the file only contains this interrupt handler, is it preferable if this interrupt handler in libahci.c with others, instead of separate file? Thanks, Tirumalesh. > Thanks. > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751861AbcBODum (ORCPT ); Sun, 14 Feb 2016 22:50:42 -0500 Received: from mail-bl2on0072.outbound.protection.outlook.com ([65.55.169.72]:30528 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751806AbcBODuk (ORCPT ); Sun, 14 Feb 2016 22:50:40 -0500 Authentication-Results: lists.infradead.org; dkim=none (message not signed) header.d=none;lists.infradead.org; dmarc=none action=none header.from=caviumnetworks.com; Subject: Re: [PATCH V2] AHCI: Workaround for ThunderX Errata#22536 To: Tejun Heo References: <1455319230-30201-1-git-send-email-tchalamarla@caviumnetworks.com> <20160214170152.GC3965@htj.duckdns.org> CC: , , , From: Tirumalesh Chalamarla Message-ID: <56C147B2.9010303@caviumnetworks.com> Date: Sun, 14 Feb 2016 19:36:18 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <20160214170152.GC3965@htj.duckdns.org> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [64.2.3.194] X-ClientProxiedBy: BY1PR17CA0014.namprd17.prod.outlook.com (25.162.18.152) To SN1PR0701MB1790.namprd07.prod.outlook.com (25.162.100.144) X-Microsoft-Exchange-Diagnostics: 1;SN1PR0701MB1790;2:3RGYfImVXwycXRgn8xwurIe1OfyrygnwPRJuCctISMeuv6qtmbkNnhtMppvYKMZFhaMSOfQ6D1nlypDuitf54EuuFtDL2C2INQDih5tD0pPySePF59ROIAsOPioxDKqbZa6TenBMJKUj5JNzqJ4v3g==;3:BhlCqvPA9G524lcGrfXRk7ChuKJWIz3BL/V+VaH6B0mlsfgSPFva4W09/ZBaxXlRzNzfZNvRc58aUD1QTbIpxEMGup5hAYAvIFVUea7XDt53t/G0qIUgbPgQFGk+hEkw;25:eQXxn9gNdFpkCbrwzAIPAnW+xvOlJrl1EAmVwIud5zIuU3381jna6zNgxvhuL6jt8SzDwirFxaCAvBxQX1NsVmQyKEkIBrKn4FNwe/eBIEQZCh7BxC7UBDdTzsECm7jTkLZ/T3Cr1MyBtXFzZhsLXwacs5r8JSG+olksyyZW+2cf80cHeIahMxtep/BfowpBSEOS3/ZOvinV2In3KkOFOGm1JxnzSasDtLbilGy0aRxRAni8pduYExW1m/OClfeXDl4ty8KYdUpLCt1VZ1HUpD1BoHOluMlNpfXhUU31gYjN/Yi7z4yeDagvOW1SURqx X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SN1PR0701MB1790; X-MS-Office365-Filtering-Correlation-Id: ddceb47c-5a67-4a34-558c-08d335b92cd1 X-Microsoft-Exchange-Diagnostics: 1;SN1PR0701MB1790;20:enDM25t+SNCYMOByokRR+pYr6yHeBE/2weLtBF4vQzMcykHBf+b+JrHhdJTtxyvdc5NARPoNE1qfyOg4fqA9av+7yWRfjlImJpheeHqR9CFt1vsuUs4y8YdIaFVlXCV4YZTCaD8jYL5B58QFbdrT7VqcEcfOAqgvxhPEy/IYnSNxot51sfFlBocMD77MS+Ls26YJ/c4n6U+lHbLMRktkQbXsCqN7rGpPk6xQdSRJ2Q8ANxtO5xUojN8IEUKK3pZvejohsI40aP9mgKRWpfeeBbTMq82EKsuKtuem4HIw/+ELvUBFL7nxZESbyNszaFWAty7L16lBvFz7+3BTsQ+nDHclfsCV5EudawFM9IctWQla5w3m5qXzoVuuBTJYXk2Qp8IbPh+81WldftlXK2sUOe26BP5tPpfJJWiE35ypNtN0ktOl03CmEPxYF0uPHW0vWz971RqUsUHTykbD8bhO0wHyN3ENzrvOWCfrvI810SmYboDejVAtw4DDD1Exq5QvJqWSMhM88ZKUM7rpXQHRbRB9Ea0Nkcrzw2RjuD7YhqQk6wuHl5UPuIP7qxr3t3C/tUuR09LexqTJKQyt7ga0bJnQCRNu3s0GoJnlJYncisc= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001);SRVR:SN1PR0701MB1790;BCL:0;PCL:0;RULEID:;SRVR:SN1PR0701MB1790; X-Microsoft-Exchange-Diagnostics: 1;SN1PR0701MB1790;4:SvlrCkZ/WChH2d5vhbCC5TqJ9b9qCFTJy0ywLT8pjQhkFbpb/T1QgkVmlWz0goXQzhlAPYBYEphVzAgLpzKdw7eLUC6r6NXxUfst/F7XcJ7F/E+2wvAXS3WeHVwBylV9jMPBmjyFnvOnop5YbdJt+J1zTIV/11NDBfPKUcpwet+2w03wrhyK15vcisAhgI6WxEJs+hUb3DuI+MhTIH/9gp+Jn1s52g3cs4LwYMHstMiJCiFHpSNJl545CBtPuMvqOCgjg3KWE0uWo6slm6/SbzNt6u96myV56XkGwc41bzKnymL3Li15vHdRRLNW0M0eMNLQ+Vmd3ucDkTU5GlyQieNJmdQLN/8WuhEjDzs4959LL6JzLePXSeI8b92HSB0X X-Forefront-PRVS: 08534B37A7 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(164054003)(479174004)(24454002)(377454003)(1096002)(6116002)(3846002)(65816999)(87266999)(36756003)(92566002)(4326007)(77096005)(230700001)(2906002)(50466002)(2950100001)(189998001)(33656002)(83506001)(5008740100001)(5001960100002)(4001350100001)(110136002)(80316001)(19580395003)(19580405001)(64126003)(5004730100002)(47776003)(40100003)(87976001)(65956001)(66066001)(23746002)(65806001)(122386002)(50986999)(54356999)(586003)(76176999)(42186005);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR0701MB1790;H:[10.18.104.43];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN1PR0701MB1790;23:Y3AEhXiRHteR/ae9qJc59btYhlorChqwnlg?= =?Windows-1252?Q?0QhJRxLjjyUW1nOGBEnFwfLOCs4zqW87tffKvpY9kvMQpwEHqktIEgin?= =?Windows-1252?Q?lQrglwZT9iBFJWbZT9cuVb9gZgPel4R4HIeIiuFgaUEjZKAZfsoz8nwS?= =?Windows-1252?Q?UcxY4y4zFo85dDIRR//02gSoD3zBA8HoopqysvvrDyv3pnBCA1v3C/7m?= =?Windows-1252?Q?4UFdaA/5N3DBfoxuKCvAjn/yM5cf/hLFFjAhnpAIrlXAtILGiVJQo++g?= =?Windows-1252?Q?AFYitlOk00xE9d58uPtSOiGYSgtB0+aI8TGTGwCD1P2shV3eibvZ4K9I?= =?Windows-1252?Q?kcUswx7zZrX1xbGLLIZJeDWnqzQbKk+oJ6s4Q8Wll8i/b/k55p4i/vZ/?= =?Windows-1252?Q?NthDKOEmbDNaIImF9qUrONn+RzkPLHck2beipwaLHrb8qf279+j+Bbg0?= =?Windows-1252?Q?qy7KivQYg3FgnJN7APzhf11jF+MrPCc9zzklzHzV49C78ynTJnHEGVfV?= =?Windows-1252?Q?1t/keYze7eJCYHTdLTKYtXca6b6OFohQXvX/sICpBMwGxWWMMCrs84J5?= =?Windows-1252?Q?jkqVzSm4z5Bm+ykV3nWH5Kvs9gkkGshtKRkT4u4T40womZdIpzXuseP2?= =?Windows-1252?Q?0a5c9fRDMNUKIni2yTIGr8y40KVu/Pd7tfgfDvejP2++UTaVd+YlpbSX?= =?Windows-1252?Q?FNBZ+r8X0z2ThACLhvRdxb/2KlubLfVQx6ip29vDL2xTDUuTA4qWAhcD?= =?Windows-1252?Q?8UEI//zf54qzyntOJYGAY7XwUX0MbSmCSOYjpX2NbBl68mHCoEWO1ZOE?= =?Windows-1252?Q?OIaA/ZR0WJxeq0ziL/dS8/tNVTw/4UmzF9zorZ8FPmg8naTp5JPbuNIE?= =?Windows-1252?Q?5mc1YmnSVx6cerJUAdtCtVH3t6UIQ7OL6Jo0OINMG66vP2icDItyLbg6?= =?Windows-1252?Q?pYhFCwZhlXk7jVdmgC3422d0+yWALzJ0h9nRFZFqoLyOPXbHFR/A+sD+?= =?Windows-1252?Q?YohbAaaNsQHItrUFJx1YYdiiGlH0ZJxT29s0I/LvU8gf/9CuY0FIqhle?= =?Windows-1252?Q?mgudFHJYlWOjcs74ZYIB8XR7tW4UCDqyBnDtJNvqgqx+XoQCA2QVZ/24?= =?Windows-1252?Q?5yH4wv7KbelBMCZHI9JDYWSQGgO1xyhKruzMrqv4Nrr+kKWWpLPgQdX5?= =?Windows-1252?Q?xPr0CcE2A/+5Ii1xz8oGzqxsR7vB/b7e3DYAaLh3mwUAGepQ8VFMjveb?= =?Windows-1252?Q?G6SXhrVlGEeBTwq6JS6cJWboB0opSiZDLtWAGI90=3D?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR0701MB1790;5:dj1CgvnKjVOHW2Z1wMaFnnVheDbqdutbgXB8RQGirU+H/EBx7G9oQaquH+II432eDkgP47Cw+bgZD/LptfkXlqzkH+o336jiF1HGrLNOtz5WHlf2WpU9yZJRdJR0QWYM4H8isyEabIybaug0hdQkyA==;24:eyr4Zqu6AFOafU3TN0W1j/2z2PGQLxZ7PoAGQD2YlEjqWtkxd1ZaO7z3WltIRC6IQgbDUm3emjNbPy+TveFaLHjNYv/a/2JPEUyXhp24TSI= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Feb 2016 03:36:22.3697 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR0701MB1790 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/14/2016 09:01 AM, Tejun Heo wrote: > Hello, > > On Fri, Feb 12, 2016 at 03:20:30PM -0800, tchalamarla@caviumnetworks.com wrote: >> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c >> index 546a369..76e310e 100644 >> --- a/drivers/ata/ahci.c >> +++ b/drivers/ata/ahci.c >> @@ -1560,6 +1560,9 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) >> if (ahci_broken_devslp(pdev)) >> hpriv->flags |= AHCI_HFLAG_NO_DEVSLP; >> >> + if (pdev->vendor == 0x177d && pdev->device == 0xa01c) >> + ahci_thunderx_init(&pdev->dev, hpriv); > > So, this would make ahci fail to build if thunderx is not configured. > Maybe we should add an additional callback to update hpriv. > >> /* save initial config */ >> ahci_pci_save_initial_config(pdev, hpriv); >> >> diff --git a/drivers/ata/ahci_thunderx.c b/drivers/ata/ahci_thunderx.c > > This driver isn't upstream yet, right? Maybe just fold this change > together? > There is no need for special Driver, AHCI is sufficient for ThunderX, the file only contains this interrupt handler, is it preferable if this interrupt handler in libahci.c with others, instead of separate file? Thanks, Tirumalesh. > Thanks. >