Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753631AbcLIGzk (ORCPT ); Fri, 9 Dec 2016 01:55:40 -0500 Received: from mail-bn3nam01on0086.outbound.protection.outlook.com ([104.47.33.86]:61712 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752342AbcLIGzh (ORCPT ); Fri, 9 Dec 2016 01:55:37 -0500 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; qca.qualcomm.com; dkim=none (message not signed) header.d=none;qca.qualcomm.com; dmarc=bestguesspass action=none header.from=xilinx.com; X-IncomingTopHeaderMarker: OriginalChecksum:;UpperCasedChecksum:;SizeAsReceived:2789;Count:27 From: Bharat Kumar Gogada To: Bharat Kumar Gogada , Kalle Valo CC: Bjorn Helgaas , "linux-kernel@vger.kernel.org" , "linux-pci@vger.kernel.org" , Marc Zyngier , "Janusz.Dziedzic@tieto.com" , "ath9k-devel@qca.qualcomm.com" , "linux-wireless@vger.kernel.org" , "rmanohar@qca.qualcomm.com" Subject: RE: ATH9 driver issues on ARM64 Thread-Topic: ATH9 driver issues on ARM64 Thread-Index: AQHSUXmsKRFHQUL67ky5AgPY+zl5DKD/DqbAgAAgmPA= Date: Fri, 9 Dec 2016 06:55:24 +0000 Message-ID: <8520D5D51A55D047800579B094147198263A7C91@XAP-PVEXMBX02.xlnx.xilinx.com> References: <8520D5D51A55D047800579B094147198263A7222@XAP-PVEXMBX02.xlnx.xilinx.com> <20161208145608.GA19822@bhelgaas-glaptop.roam.corp.google.com> <8520D5D51A55D047800579B094147198263A72F5@XAP-PVEXMBX02.xlnx.xilinx.com> <874m2emif9.fsf@purkki.adurom.net> <8520D5D51A55D047800579B094147198263A7A64@XAP-PVEXMBX02.xlnx.xilinx.com> In-Reply-To: <8520D5D51A55D047800579B094147198263A7A64@XAP-PVEXMBX02.xlnx.xilinx.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.23.94.45] Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.0.0.1202-22748.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-IncomingHeaderCount: 27 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(39450400003)(39840400002)(39850400002)(39410400002)(2980300002)(438002)(199003)(51234002)(24454002)(40224003)(189002)(46406003)(5001770100001)(55846006)(38730400001)(229853002)(2910100002)(47776003)(575784001)(189998001)(93886004)(63266004)(5660300001)(8676002)(81156014)(81166006)(356003)(92566002)(76176999)(33656002)(54356999)(3846002)(23726003)(102836003)(2900100001)(2920100001)(2940100001)(106116001)(97756001)(106466001)(6116002)(4326007)(2906002)(50986999)(5250100002)(305945005)(7736002)(50466002)(2950100002)(7696004)(8936002)(8746002)(626004)(107986001)(422495003);DIR:OUT;SFP:1101;SCL:1;SRVR:BY1PR0201MB0904;H:xsj-pvapsmtpgw01;FPR:;SPF:Pass;PTR:unknown-60-83.xilinx.com;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;SN1NAM02FT001;1:/5FIvKEysMLJ60EQqLloECuAxVBWQgxNUcV79ibqBnw83Oa+82LNUDdJcuLJiSghSxnXYXSTimZLIfp7613xD8ZtKxysHKIUKKZD/DAx4FK2/lw4HGi1phIy0a1d7AjLy22f+cf0UGcsl4DZ0hfFfvVs5qBDt+LcWrGpkBIg77YteeUXbErzKXhbR8UpAxJPRLy5SIOZrjiV+isgfUP33R8Z9GsRu576roRfuuzhIrT5aWCQ7/NXkoA+agRZg8eESHI7//gcCXAJT6+bGXv3WKDlt4kxbYpysv204SAWTr5q/nDMwPrE77lnHEXTp4M8gGyT/6hw+1knobB3Mta+UkmPhrDnCsqWHvnOJkzqfSiFO5SzZOc9lufvIrULrF4+Z9LEx037096xF1uT6/F4mvwanQ+ttc7hGTedEmxgytaGDa4/2LZb0EYPoz1y9lwaRAsNQw1SL8KAPbBIYicAoXQQyaKaf4yLKv/Ov/q6mj7+LnCIJ6gMkk88OjLEt7KTkcBKNMs/KJWE7a726gmrFAFLlf/yqpxC8LEDVQZBsPeyS06zxvA+X8opM7r/l3kt6FsqIkqnHN8HjR0lxUNtMTVgHSf1qSFKZEwBCzCol6sg3Dz7SyXfBiiKMJp3/20S X-MS-Office365-Filtering-Correlation-Id: 6c59581b-4e89-4c7a-3cd2-08d420005e67 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(8251501002);SRVR:BY1PR0201MB0904; X-Microsoft-Exchange-Diagnostics: 1;BY1PR0201MB0904;3:4BU6dteLhVuJbCK5JGFXzEhycVQz6+zmSnK1um1j4Xun9QVAxPJrXJm+x5VvNTJ+4o1Js63Sve0qtQuUkxtQSRf7rv4RQxvqyNdpVbLCFnp8ZID2wv4M7uIG4JTQNGBSYtSYMvoiAnfb4f1NZTF5i9XY5YDyzX6jMkVzp+JEPazy/2b+NsjeXQSB/HsQ6hCN3vqnGvq57AdYMsQlGJJD0/8okFdbUCKPoIFK8Ae1YbNoyTtKDA1Ad4U/Y9SlpUghutA4QXLKAPUJ5L9rijU/C6vvVISZ0XMUJAXg52aznXxsZ+0L4c7NPq41u34J88pu495FsyNIzODh+TWhe5M/tIOipk9lTRUclNyxXVcSQE6ifMgKKx43E7ZJ1arZx0o4Xpc7JqUcpyqPEABuYN6xMg==;25:j5Q9+RcUez6nDaMEKT7Q9g7I/5YZoDwBZmrukLUZTpxy5+/N0p4vZ5Mzt+kC6di0wId76RCdtx0ScnSmU/p0jWo1ckmDPzybRZaYr8nH1muxtjYngpVapfmsGXgxtGk3FRT578zDZj+XTFuQLJcO5gsBiEsDhXm2J7XoVwbf3GbODI1lvPgksWxfC5JVy0DiDPZldAnYjDrhuU99rsbi9ImcZ8rBLDhTfVhs4c7zx2FOYXaoh9IJ05j13UuUu6Roh6sz8+q8FlumlHTzPdBcQQPdxIR2k8J2i0I0v4RL16QHQ9ul0HlZkCf4m3SwFYrRN+m0mOwr2IyyTsvt2h/DaeFVogaDEfO6slfgscaMvxO80uqZ6ojSQ9KAcZZZ16nGHJ5JQLohekdzHbnvTyRs2UcdztFrPu22ICEllE0Fgw8F4CCwzrwcDSZEPq2j2VmQDqMvba0mWL5NMHgZFwh44w== X-Microsoft-Exchange-Diagnostics: 1;BY1PR0201MB0904;31:iNzx/v9sA0hFh4/kGUuFovhaLKX0yHv6np223m6hwpVpdPlzIjaujHLCKlDAJWir55xUTYd0Yubql7fmebPiJRCFLBzG4Bn5sEDo3oss5fRouzZqSKxceeLVHmBHsg+46qEI2ATEIFPKOMkt7KDe0462lYMT10BuZeanQZ0pPntPY3EwO3iZZbfBjz4uhBUULbQWyUHL4o1byXk71C4NqWrAv0nghDkH4TtR9Cvq+k8NFDUqZwb2BFKXkszwpmf7xDx6Nm/Br2ve/M4a93lHHg==;20:fBLPObZP/IWQzun6f5JPP7PukGn+sOvnYaPH7gaHBhC1jez6ZMWtO7/9JOxhjCSrtkeo5HxSksxoC9nmHIXjOmQKGRlfnRV64wLlq7PIp501s/fAm4ee2nWAJMRkaZz6vwmCQmsxjZWCRYqVeQQSUQsA7q1lwRrnOOcUTLLuUhrHUFItwGkPuJCVmq2g2Q5teHqtX55zWiVfiiOU/Wq4tISKdXEpF3OaU+BsLMmEZhPKF3sIRkViA1femCZ9lb9gKBgujC3fvfpFDBHYHB9pdubDHhJB/1O5a/eRYYo38ZbeLCldsEe7+87wJMINRWDXr8mkH8Vl7yW89h65T4X37iWzzVkJJ3reecMh82uZN7kKSc4JKTWSH51LKt0/xGQGpc0unM7G6dmyqGQHOaocmG6R18Vira7il0n7ijY/H9yIOgloIu/sjJmVIwm9nGV6vDcDVs0nCRjwcEQIjHWrx96X36mP0RbxdqN2fj/3h/sqNvHvK6OQvgd5qNGnuWAr X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(9452136761055)(211171220733660); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(13017025)(13015025)(13023025)(13024025)(13018025)(10201501046)(3002001)(6055026)(6041248)(20161123562025)(20161123555025)(20161123564025)(20161123560025)(6072148);SRVR:BY1PR0201MB0904;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0201MB0904; X-Microsoft-Exchange-Diagnostics: 1;BY1PR0201MB0904;4:Hvi5OtL+NAq4BOHTMC/O5a7yfgp8jmYwjrUXFyZV/4u977ic7l1GNMIcskVXmSQwaZrPRtCnM79j2wGUuNBLqDiYNfKv3d36m7h72/UnGNdL6xtHo3H55Iw/47HEb8Z7tpdxpl8wZcwa/JFGCSufcE+XVzT4dHHNB8Ce7oT7fTIl6Au+jF18uGBADpKHYgcT9uKOVeKjpmZkbhEkSThD+YrLxlZ2IzqAW5+7lOc0AigL4CW14VRIknEnL7EAMgIFBS2gXMXEXWqjTr+NwPEj4anPUfRFzRda4Z0xlCC5GWdeQf3Yx3hPQZNUUHCsoWLrLtWO52Z3ebRDEdyvwiE76fnVtc1nh6lFtOntunTmDGDa43fEJ4ehu/5ulNXHT+e78Yit8TckOjCCrRod6VVy+iosgJifbFvJhcLDsmn3rYsXiCmNqYtOGgXFTuU8oyTCgy3TxYlbuyhFY7l1S/NIoajfY6k5IIo4lKdhe/Bvr5dRDBKZTou3fxyaV+nXPiv46NLZ4wBvCTTV5KfR5gAurV8m/2XQokfH8HBAc3N7HTdhst/+Ba7EzuP9CSvVcXmTyVKSJBs1jVgRz5uyOOtGyVBYn7J/pT4kytt1GsqjJfVN46EBXhrH+FaRX1/An0L0Z83vdgjCm6GGQcuPuI1k7H3bIWB0R1RQeIlHPo4gs47cgXFZvh+BqnK3SLj8ZZsaWcS2y/ehouxOh+OUEKwFf6RYtbIxk/+zFFqRZF1CBZzCm7/Skz/Gwz4UAlESYOqC X-Forefront-PRVS: 015114592F X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY1PR0201MB0904;23:iS0ZxAlz61mix+QAqTuFDEtXujTjdueu+61pRV6?= =?us-ascii?Q?oAYEXbneU7mMgUSCRASUBN3vBj2T5AExKeSzIa5kf/LnNrURbCk2Bnw0Y3/Y?= =?us-ascii?Q?Px71OVkkQ67ory2fHmXS+uVmwPNUodsRCxd9GFQEMhmVgFSEUgmHdF5E+3hB?= =?us-ascii?Q?Q+QrGDKuD6PAVBh7L1gmrqoJZrhkQZ14PkVK/7NioecYhGzEJMTtRcuKlItl?= =?us-ascii?Q?Rb4Io+VWR3gWhC7MaqfRq68oU9OmYHC1ebD0cMEpvpn+z0Z9nsAW+hnTz6MH?= =?us-ascii?Q?akdMxYrwvYtazEWUti0upKX49gu7EMDollhVJQYboYTuD361Hn5uXyEfM/4E?= =?us-ascii?Q?EPkXqP+Tx+bsRqBebRKm6N1Snpx9p8uSW3sAG/45IWf2ccL66h+UdOR5C9XF?= =?us-ascii?Q?oxu5S/wMyciSNTLmdu5+X1V1IgdDLE0Qvq8NDNRwtp16CB5M433MFVOvTmTq?= =?us-ascii?Q?wI+zGaKsxHcxePH+zbCqOQ2X9aiDo6+2LB6bXb6vT5frVZwSih5ppv7F5SeC?= =?us-ascii?Q?BFAkayK5O7+6dasAvkPQ9JNPKC2Jm9ZdQDLQdkL0q91/U3a1p9TIwnASTU3B?= =?us-ascii?Q?8fsGcZ59ZyBrAYOw4ixvW+0catrsIxIbEusJRwEkxL7+8OmTAGappqDyk27p?= =?us-ascii?Q?w0Xhq6Q1HHYrHnYj12IOsjZVL2yLpKdsGWFf7/YQWuZL0YGp2vDfweV7jEDv?= =?us-ascii?Q?LHF4GC0zMwc5UQptuyndqKutI1lZQ+B8G3a8SBWSRtRsGuupHC5jaGFfIcjE?= =?us-ascii?Q?T7k/dj41eLeJTSoGfxuEwA3oR9/66lDEZJP8XZpKFN2S8KeBzMrf5h29C+1g?= =?us-ascii?Q?i39tErvqDAAMxJbwUB9FtKyesu61yauAmZXxqsLt1c/JItRJ0ccuLD4jcQrT?= =?us-ascii?Q?O53Ordsk+LmTtWjH4wyO2q3UDqkPw6iE2sprx+17wQ8lxWoJaM6YsGL7qEQ8?= =?us-ascii?Q?JgPVFXne9AzPcFxbJzHHL/vT/8qZ2azKs7pgAhjP/AbaTqESCBPWPJheyPss?= =?us-ascii?Q?+DkcQNKpGB0zX7jAciHVtbuW4ht8dQsqFkrNWxCubUSEkhelOjigIIUwOvys?= =?us-ascii?Q?it3Zd23wA/T2ct+fQ1ztFTukJea/9X/D2WgRpp0A+ea87T5zuytsPDYNE00f?= =?us-ascii?Q?6OrB9XD2rvTqaVhWZGphI7hMRDAfQP0MyDmPOKNeL3iGgrwkOk08DXzkVa45?= =?us-ascii?Q?UhdjYbvEq9ubmBIj7pNySzjcSWXRAvPVjcJuLZFfVKam9paiE6mh79AH035z?= =?us-ascii?Q?FAogzGUsBmm/fABN2CvHrJ2DNbd4e5lc1jbaxruUS2yxbcIFs3AAHlKG7IGG?= =?us-ascii?Q?NA9tj0D26ZTY6PGecGIrnl9JRGhWy6Tdb9OamLm0jB7s7/ybZvpe9Z9xVA2H?= =?us-ascii?Q?up3kkWUiFXPyKDb1KQyoJic//6qg=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR0201MB0904;6:MDO6uacKed8zyyNGf+2BVzPfCHxBNctsb/1d38/pRiaBD0SXbOoqlLSNh4vMx7EhqaP1OP0VuXb4LJSdidLmPHrMgI+UrBy+AnqPeG6ViqLY7KotYEfe4G0IIXoTFv2Iiu1qhh/y1nvnIfglefIUpE+KpGiPdVLPOmqVMAhs6USF/yzMXiFm+eryuI7wzEE0Tp2Zq+pqhA8XYu5P9ZYCxRbz43w4HnPFUpUIiDSP3sNgp851xYd9CiJQIlt4/qYekXh1uNMHgrZGFn7VSRHIVLYRX5HzpQDWdFhfbwjrawngoidNAZvPG0MrYyPlGjVsYviqhEh2gWNtyDzl3sI1u/8DoOIEr28Jg77ln1lfKp4LQ2U6eiCIChTZOlamuC9gRXbVtFjwBtELu/PxHTw56d4JS3/1eIKrobvPhmq8KQeN5i/fmXen0j0KLNzMRys1cDIJ38D1Cm/dBzgg97gMGs2iatpE9gY9oEbicAX2xqoamzAQWIXeQyAED3dW/qsY;5:nu52wYxYjJsCTrf0loyTdRDrZ1xi4qsh6h53AOspfVn29GQ/Sti8hgrNrXhPLMPfBvhI6BFvVv0WHU25cAbt2/2V+OCCg9RcmZsiNBjfUZMb3vQ5s5lt/U6N8Q/PaYP/lOW1yQqCTOhZpwuhTE9O+A==;24:rQJrzZVpF1WTSdSy2ulouXp9QR3ePzhmLOk/eJwgbfkyqwz2WkvjTvdpQt1EaPslDs5JclvF9pn+iO0vXhA259wF+LdOGFTAwp+NU8IvrNg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BY1PR0201MB0904;7:pFu9UEnaqG9x9FmhcVyUVqhx1jub6pTH682CcLhMXJHV6nfaAoStM767Jy9605Cwt95w5Er9K2ZovZh34uxO42Zo5lKN51gXePdK92A7vPvA/jnddPdpQo8daRU7lMUHJN99hVWtR+MkWfSxUDXyAWhAy8zf0YPucgAEqcBC/C4q9hLplZ50AehefxIIzbCzVpyYfEtLzqkxFtkyozlia0GGAKGhHQhszKKOARGHCgrT8TPfLZsZJalH/vH7a38UNlXfCanS2DxOZah6CgGYMlBsnbu7Naxaxbeasj6sZKsvc9+eTYFbSiIkXV4KXAJ7habBAqx9yn/LmYxj2IDmXJ4DwamsASdQIHCP0nmETLbeVruppsyxLTcwmf8O74N8EXgOFs5tIT+nPes8qleS2+Zp4AyhmpPNRt9buw85pUwJ5gUp4T5ocTFKFxb37rWDHM3VSNpmNXqUfqDZgaPg+g== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Dec 2016 06:55:31.7151 (UTC) X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c;Ip=[149.199.60.83];Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0201MB0904 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mail.home.local id uB96tjWM019772 Content-Length: 23655 Lines: 477 Sorry, Forgot to add kernel version, we are using 4.6 kernel. > Hi, > Can any one tell, when exactly the chip sends ASSERT & DEASSERT in driver. > It might help us to debug issue further. > > Thanks & Regards, > Bharat > > > > > [+cc Kalle, ath9k list] > > > > Thanks, but please also CC linux-wireless. Full thread below for the folks there. > > > > >> On Thu, Dec 08, 2016 at 01:49:42PM +0000, Bharat Kumar Gogada wrote: > > >> > Hi, > > >> > > > >> > Did anyone test Atheros ATH9 > > >> > driver(drivers/net/wireless/ath/ath9k/) > > >> > on ARM64. The end point is TP link wifi card with which supports > > >> > only legacy interrupts. > > >> > > >> If it works on other arches and the arm64 PCI enumeration works, my > > >> first guess would be an INTx issue, e.g., maybe the driver is > > >> waiting for an interrupt that never arrives. > > > We are not sure for now. > > >> > > >> > We are trying to test it on ARM64 with > > >> > (drivers/pci/host/pcie-xilinx-nwl.c) as root port. > > >> > > > >> > EP is getting enumerated and able to link up. > > >> > > > >> > But when we start scan system gets hanged. > > >> > > >> When you say the system hangs when you start a scan, I assume you > > >> mean a wifi scan, not the PCI enumeration. A problem with a wifi > > >> scan might cause a *process* to hang, but it shouldn't hang the > > >> entire system. > > >> > > > Yes wifi scan. > > >> > When we took trace we see that after we start scan assert message > > >> > is sent but there is no de assert from end point. > > >> > > >> Are you talking about a trace from a PCIe analyzer? Do you see an > > >> Assert_INTx PCIe message on the link? > > >> > > > Yes lecroy trace, yes we do see Assert_INTx and Deassert_INTx > > > happening > > when we do interface link up. > > > When we have less debug prints in Atheros driver, and do wifi scan > > > we see Assert_INTx but never Deassert_INTx, > > >> > What might cause end point not sending de assert ? > > >> > > >> If the endpoint doesn't send a Deassert_INTx message, I expect that > > >> would mean the driver didn't service the interrupt and remove the > > >> condition that caused the device to assert the interrupt in the > > >> first place. > > >> > > >> If the driver didn't receive the interrupt, it couldn't service it, > > >> of course. You could add a printk in the ath9k interrupt service > > >> routine to see if you ever get there. > > >> > > > The interrupt behavior is changing w.r.t amount of debug prints we > > > add. (I kept many prints to aid debug) root@Xilinx-ZCU102-2016_3:~# > > > iw dev > > wlan0 scan > > > [ 83.064675] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.069486] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.074257] ath9k_hw_kill_interrupts 793 > > > [ 83.078260] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.083107] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.087882] ath9k_hw_kill_interrupts 793 > > > [ 83.095450] ath9k_hw_enable_interrupts 821 > > > [ 83.099557] ath9k_hw_enable_interrupts 825 > > > [ 83.103721] ath9k_hw_enable_interrupts 832 > > > [ 83.107887] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.112748] AR_SREV_9100 0 > > > [ 83.115438] ath9k_hw_enable_interrupts 848 > > > [ 83.119607] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.124389] ath9k_hw_intrpend 762 > > > [ 83.127761] (AR_SREV_9340(ah) val 0 > > > [ 83.131234] ath9k_hw_intrpend 767 > > > [ 83.134628] ath_isr 603 > > > [ 83.137134] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.141995] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.146771] ath9k_hw_kill_interrupts 793 > > > [ 83.150864] ath9k_hw_enable_interrupts 821 > > > [ 83.154971] ath9k_hw_enable_interrupts 825 > > > [ 83.159135] ath9k_hw_enable_interrupts 832 > > > [ 83.163300] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.168161] AR_SREV_9100 0 > > > [ 83.170852] ath9k_hw_enable_interrupts 848 > > > [ 83.170855] ath9k_hw_intrpend 762 > > > [ 83.178398] (AR_SREV_9340(ah) val 0 > > > [ 83.181873] ath9k_hw_intrpend 767 > > > [ 83.185265] ath_isr 603 > > > [ 83.187773] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.192635] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.197411] ath9k_hw_kill_interrupts 793 > > > [ 83.201414] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.206258] ath9k_hw_enable_interrupts 821 > > > [ 83.210368] ath9k_hw_enable_interrupts 825 > > > [ 83.214531] ath9k_hw_enable_interrupts 832 > > > [ 83.218698] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.223558] AR_SREV_9100 0 > > > [ 83.226243] ath9k_hw_enable_interrupts 848 > > > [ 83.226246] ath9k_hw_intrpend 762 > > > [ 83.233794] (AR_SREV_9340(ah) val 0 > > > [ 83.237268] ath9k_hw_intrpend 767 > > > [ 83.240661] ath_isr 603 > > > [ 83.243169] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.248030] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.252806] ath9k_hw_kill_interrupts 793 > > > [ 83.256811] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.261651] ath9k_hw_enable_interrupts 821 > > > [ 83.265753] ath9k_hw_enable_interrupts 825 > > > [ 83.269919] ath9k_hw_enable_interrupts 832 > > > [ 83.274083] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.278945] AR_SREV_9100 0 > > > [ 83.281630] ath9k_hw_enable_interrupts 848 > > > [ 83.281633] ath9k_hw_intrpend 762 > > > [ 83.281634] (AR_SREV_9340(ah) val 0 > > > [ 83.281637] ath9k_hw_intrpend 767 > > > [ 83.281648] ath_isr 603 > > > [ 83.281649] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.281651] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.281654] ath9k_hw_kill_interrupts 793 > > > [ 83.312192] ath9k: ath9k_ioread32 ffffff800a400024 > > > [ 83.317030] ath9k_hw_enable_interrupts 821 > > > [ 83.321132] ath9k_hw_enable_interrupts 825 > > > [ 83.325297] ath9k_hw_enable_interrupts 832 > > > [ 83.329463] ath9k: ath9k_iowrite32 ffffff800a400024 > > > [ 83.334324] AR_SREV_9100 0 > > > [ 83.337014] ath9k_hw_enable_interrupts 848 > > > .. > > > .. > > > This log continues until I turn off board without obtaining scanning result. > > > > > > In between I get following cpu stall outputs : > > > 230.457179] INFO: rcu_sched self-detected stall on CPU > > > [ 230.457185] 2-...: (31314 ticks this GP) > > idle=2d1/140000000000001/0 softirq=1400/1400 fqs=36713 > > > [ 230.457189] (t=36756 jiffies g=161 c=160 q=16169) > > > [ 230.457191] Task dump for CPU 2: > > > [ 230.457196] kworker/u8:4 R running task 0 1342 2 0x00000002 > > > [ 230.457207] Workqueue: phy0 ieee80211_scan_work [ 230.457208] > > > Call > > > trace: > > > [ 230.457214] [] dump_backtrace+0x0/0x198 [ > > > 230.457219] [] show_stack+0x14/0x20 [ 230.457224] > > > [] sched_show_task+0x98/0xf8 [ 230.457228] > > > [] dump_cpu_task+0x40/0x50 [ 230.457233] > > > [] rcu_dump_cpu_stacks+0xa0/0xf0 [ 230.457239] > > > [] rcu_check_callbacks+0x468/0x748 [ 230.457243] > > > [] update_process_times+0x3c/0x68 [ 230.457249] > > > [] tick_sched_handle.isra.5+0x3c/0x50 > > > [ 230.457253] [] tick_sched_timer+0x44/0x90 [ > > > 230.457257] [] __hrtimer_run_queues+0xf0/0x178 > > > ** 10 printk messages dropped ** [ 230.457302] f8c0: > > > 0000000000000000 0000000005f5e0ff 000000000001379a > 3866666666666620 > > > [ 230.457306] > > > f8e0: ffffff800a1b4065 0000000000000006 ffffff800a129000 > > > ffffffc87b8010a8 [ 230.457310] f900: ffffff808a1b4057 > > > ffffff800a1c3000 ffffff800a1b3000 ffffff800a13b000 [ 230.457314] > > > f920: 0000000000000140 0000000000000006 ffffff800a1b3b10 > > > ffffff800a1c39e8 [ 230.457318] f940: 000000000000002f > > > ffffff800a1b8a98 ffffff800a1b3ae8 ffffffc87b07f990 [ 230.457322] > > > f960: ffffff80080d6230 ffffffc87b07f990 ffffff80080d6234 > > > 0000000060000145 > > > ** 1 printk messages dropped ** [ 230.457329] [] > > > el1_irq+0xa0/0x100 > > > ** 9 printk messages dropped ** [ 230.457373] [] > > > ieee80211_hw_config+0x50/0x290 [ 230.457377] [] > > > ieee80211_scan_work+0x1f8/0x480 [ 230.457383] [] > > > process_one_work+0x120/0x378 [ 230.457386] [] > > > worker_thread+0x48/0x4b0 [ 230.457391] [] > > > kthread+0xd0/0xe8 [ 230.457395] [] > > ret_from_fork+0x10/0x40 > > > [ 230.480389] ath9k_hw_intrpend 762 > > > > > > > > > [ 545.487987] ath9k: ath9k_ioread32 ffffff800a400024 [ 545.526189] > > > INFO: rcu_sched self-detected stall on CPU > > > [ 545.526195] 2-...: (97636 ticks this GP) > > idle=2d1/140000000000001/0 softirq=1400/1400 fqs=115374 > > > [ 545.526199] (t=115523 jiffies g=161 c=160 q=51066) > > > [ 545.526201] Task dump for CPU 2: > > > [ 545.526206] kworker/u8:4 R running task 0 1342 2 0x00000002 > > > ** 3 printk messages dropped ** [ 545.526231] [] > > > show_stack+0x14/0x20 > > > ** 9 printk messages dropped ** [ 545.526280] [] > > > arch_timer_handler_phys+0x30/0x40 [ 545.526284] > > > [] > > > handle_percpu_devid_irq+0x78/0xa0 [ 545.526291] > > > [] > > > generic_handle_irq+0x24/0x38 [ 545.526296] [] > > > __handle_domain_irq+0x5c/0xb8 [ 545.526299] [] > > > gic_handle_irq+0x64/0xc0 [ 545.526302] Exception > > > stack(0xffffffc87b07f870 > > to 0xffffffc87b07f990) > > > [ 545.526306] f860: 0000000000009732 ffffff800a1eaaa8 > > > ** 8 printk messages dropped ** [ 545.526341] f980: > > > ffffff800a1c39e8 > > > 0000000000000036 [ 545.526345] [] > > > el1_irq+0xa0/0x100 [ 545.526349] [] > > > console_unlock+0x384/0x5b0 [ 545.526353] [] > > > vprintk_emit+0x2dc/0x4b0 [ 545.526357] [] > > > vprintk_default+0x38/0x40 [ 545.526362] [] > > > printk+0x58/0x60 [ 545.526366] [] > > > ath9k_iowrite32+0x9c/0xa8 [ 545.526372] [] > > > ath9k_hw_kill_interrupts+0x28/0xf0 > > > [ 545.526376] [] ath_reset+0x24/0x68 > > > ** 2 printk messages dropped ** [ 545.526391] [] > > ieee80211_hw_config+0x50/0x290 > > > ** 11 printk messages dropped ** [ 545.532834] > > > ath9k_hw_kill_interrupts > > 793 > > > [ 545.532890] ath9k_hw_enable_interrupts 821 > > > > > > > > > But if we have less debug prints it does not reach EP handler > > > sometimes, due to following Condition in "kernel/irq/chip.c" in > > > function handle_simple_irq > > > > > > if (unlikely(!desc->action || irqd_irq_disabled(&desc->irq_data))) { > > > desc->istate |= IRQS_PENDING; > > > goto out_unlock; > > > } > > > Here irqd_irq_disabled is being set to 1. > > > > > > With lesser debug prints it stops after following prints: > > > root@Xilinx-ZCU102-2016_3:~# iw dev wlan0 scan > > > [ 54.781045] ath9k_hw_kill_interrupts 793 > > > [ 54.785007] ath9k_hw_kill_interrupts 793 > > > [ 54.792535] ath9k_hw_enable_interrupts 821 > > > [ 54.796642] ath9k_hw_enable_interrupts 825 > > > [ 54.800807] ath9k_hw_enable_interrupts 832 > > > [ 54.804973] AR_SREV_9100 0 > > > [ 54.807663] ath9k_hw_enable_interrupts 848 > > > [ 54.811843] ath9k_hw_intrpend 762 > > > [ 54.815211] (AR_SREV_9340(ah) val 0 > > > [ 54.818684] ath9k_hw_intrpend 767 > > > [ 54.822078] ath_isr 603 > > > [ 54.824587] ath9k_hw_kill_interrupts 793 > > > [ 54.828601] ath9k_hw_enable_interrupts 821 > > > [ 54.832750] ath9k_hw_enable_interrupts 825 > > > [ 54.836916] ath9k_hw_enable_interrupts 832 > > > [ 54.841082] AR_SREV_9100 0 > > > [ 54.843772] ath9k_hw_enable_interrupts 848 > > > [ 54.843775] ath9k_hw_intrpend 762 > > > [ 54.851319] (AR_SREV_9340(ah) val 0 > > > [ 54.854793] ath9k_hw_intrpend 767 > > > [ 54.858185] ath_isr 603 > > > [ 54.860696] ath9k_hw_kill_interrupts 793 > > > [ 54.864776] ath9k_hw_enable_interrupts 821 > > > [ 54.867061] ath9k_hw_kill_interrupts 793 > > > [ 54.872870] ath9k_hw_enable_interrupts 825 > > > [ 54.877036] ath9k_hw_enable_interrupts 832 > > > [ 54.881202] AR_SREV_9100 0 > > > [ 54.883892] ath9k_hw_enable_interrupts 848 > > > [ 75.963129] INFO: rcu_sched detected stalls on CPUs/tasks: > > > [ 75.968602] 0-...: (2 GPs behind) idle=9d5/140000000000001/0 > > softirq=1103/1109 fqs=519 > > > [ 75.976675] (detected by 2, t=5274 jiffies, g=64, c=63, q=11) > > > [ 75.982485] Task dump for CPU 0: > > > [ 75.985696] ksoftirqd/0 R running task 0 3 2 0x00000002 > > > [ 75.992726] Call trace: > > > [ 75.995165] [] __switch_to+0xc4/0xd0 > > > [ 76.000281] [] 0xffffffc87b830500 > > > [ 139.059027] INFO: rcu_sched detected stalls on CPUs/tasks: > > > [ 139.064430] 0-...: (2 GPs behind) idle=9d5/140000000000001/0 > > softirq=1103/1109 fqs=2097 > > > [ 139.072593] (detected by 2, t=21049 jiffies, g=64, c=63, q=11) > > > [ 139.078489] Task dump for CPU 0: > > > [ 139.081700] ksoftirqd/0 R running task 0 3 2 0x00000002 > > > [ 139.088731] Call trace: > > > [ 139.091165] [] __switch_to+0xc4/0xd0 [ > > > 139.096285] [] 0xffffffc87b830500 > > > > > > > > >> > We are not seeing any issues on 32-bit ARM platform and X86 > > >> > platform. > > >> > > >> Can you collect a dmesg log (or, if the system hang means you can't > > >> collect that, a console log with "ignore_loglevel"), and "lspci -vv" > > >> output as root? That should have clues about whether the INTx got > > >> routed correctly. /proc/interrupts should also show whether we're > > >> receiving interrupts from the device. > > > > > > Here is the lspci output: > > > 00:00.0 PCI bridge: Xilinx Corporation Device d022 (prog-if 00 > > > [Normal > > decode]) > > > Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- > > ParErr- Stepping- SERR- FastB2B- DisINTx- > > > Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- > > SERR- > > Latency: 0 > > > Interrupt: pin A routed to IRQ 224 > > > Bus: primary=00, secondary=01, subordinate=0c, sec-latency=0 > > > I/O behind bridge: 00000000-00000fff > > > Memory behind bridge: e0000000-e00fffff > > > Prefetchable memory behind bridge: 00000000fff00000- > > 00000000000fffff > > > Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- > > > > BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- > > > PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- > > > Capabilities: [40] Power Management version 3 > > > Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA > > PME(D0+,D1+,D2+,D3hot+,D3cold-) > > > Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- > > > Capabilities: [60] Express (v2) Root Port (Slot-), MSI 00 > > > DevCap: MaxPayload 256 bytes, PhantFunc 0 > > > ExtTag- RBE+ > > > DevCtl: Report errors: Correctable- Non-Fatal- Fatal- > > Unsupported- > > > RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ > > > MaxPayload 128 bytes, MaxReadReq 512 bytes > > > DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- > > TransPend+ > > > LnkCap: Port #0, Speed 5GT/s, Width x2, ASPM not supported, > > Exit Latency L0s unlimited, L1 unlimited > > > ClockPM- Surprise- LLActRep- BwNot+ ASPMOptComp+ > > > LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk- > > > ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- > > > LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ > > DLActive- BWMgmt- ABWMgmt- > > > RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna- > > CRSVisible+ > > > RootCap: CRSVisible+ > > > RootSta: PME ReqID 0000, PMEStatus- PMEPending- > > > DevCap2: Completion Timeout: Range B, TimeoutDis+, LTR-, > > OBFF Not Supported ARIFwd- > > > DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, > > OBFF Disabled ARIFwd- > > > LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis- > > > Transmit Margin: Normal Operating Range, > > EnterModifiedCompliance- ComplianceSOS- > > > Compliance De-emphasis: -6dB > > > LnkSta2: Current De-emphasis Level: -3.5dB, > > EqualizationComplete-, EqualizationPhase1- > > > EqualizationPhase2-, EqualizationPhase3-, > > LinkEqualizationRequest- > > > Capabilities: [100 v1] Device Serial Number 00-00-00-00-00-00-00-00 > > > Capabilities: [10c v1] Virtual Channel > > > Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 > > > Arb: Fixed- WRR32- WRR64- WRR128- > > > Ctrl: ArbSelect=Fixed > > > Status: InProgress- > > > VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- > > > Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- > > WRR256- > > > Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff > > > Status: NegoPending- InProgress- > > > Capabilities: [128 v1] Vendor Specific Information: ID=1234 Rev=1 > > > Len=018 > > > > > > 01:00.0 Network controller: Qualcomm Atheros AR93xx Wireless Network > > Adapter (rev 01) > > > Subsystem: Qualcomm Atheros Device 3112 > > > Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- > > ParErr- Stepping- SERR- FastB2B- DisINTx- > > > Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- > > SERR- > > Latency: 0, Cache Line Size: 128 bytes > > > Interrupt: pin A routed to IRQ 224 > > > Region 0: Memory at e0000000 (64-bit, non-prefetchable) [size=128K] > > > [virtual] Expansion ROM at e0020000 [disabled] [size=64K] > > > Capabilities: [40] Power Management version 3 > > > Flags: PMEClk- DSI- D1+ D2- AuxCurrent=375mA > > PME(D0+,D1+,D2-,D3hot+,D3cold-) > > > Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- > > > Capabilities: [50] MSI: Enable- Count=1/4 Maskable+ 64bit+ > > > Address: 0000000000000000 Data: 0000 > > > Masking: 00000000 Pending: 00000000 > > > Capabilities: [70] Express (v2) Endpoint, MSI 00 > > > DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency > > L0s <1us, L1 <8us > > > ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- > > SlotPowerLimit 0.000W > > > DevCtl: Report errors: Correctable- Non-Fatal- Fatal- > > Unsupported- > > > RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop- > > > MaxPayload 128 bytes, MaxReadReq 512 bytes > > > DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- > > TransPend- > > > LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit > > Latency L0s <2us, L1 <64us > > > ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp- > > > LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk- > > > ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- > > > LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ > > DLActive- BWMgmt- ABWMgmt- > > > DevCap2: Completion Timeout: Not Supported, TimeoutDis+, > > LTR-, OBFF Not Supported > > > DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, > > OBFF Disabled > > > LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- > > SpeedDis- > > > Transmit Margin: Normal Operating Range, > > EnterModifiedCompliance- ComplianceSOS- > > > Compliance De-emphasis: -6dB > > > LnkSta2: Current De-emphasis Level: -6dB, > > EqualizationComplete-, EqualizationPhase1- > > > EqualizationPhase2-, EqualizationPhase3-, > > LinkEqualizationRequest- > > > Capabilities: [100 v1] Advanced Error Reporting > > > UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- > > RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- > > > UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- > > RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- > > > UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- > > RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- > > > CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- > > NonFatalErr- > > > CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- > > NonFatalErr+ > > > AERCap: First Error Pointer: 00, GenCap- CGenEn- > > ChkCap- ChkEn- > > > Capabilities: [140 v1] Virtual Channel > > > Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 > > > Arb: Fixed- WRR32- WRR64- WRR128- > > > Ctrl: ArbSelect=Fixed > > > Status: InProgress- > > > VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- > > > Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- > > WRR256- > > > Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff > > > Status: NegoPending- InProgress- > > > Capabilities: [300 v1] Device Serial Number 00-00-00-00-00-00-00-00 > > > Kernel driver in use: ath9k > > > > > > Here is the cat /proc/interrupts (after we do interface up): > > > > > > root@:~# ifconfig wlan0 up > > > [ 1548.926601] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready > > > root@Xilinx-ZCU102-2016_3:~# cat /proc/interrupts > > > CPU0 CPU1 CPU2 CPU3 > > > 1: 0 0 0 0 GICv2 29 Edge arch_timer > > > 2: 19873 20058 19089 17435 GICv2 30 Edge arch_timer > > > 12: 0 0 0 0 GICv2 156 Level zynqmp-dma > > > 13: 0 0 0 0 GICv2 157 Level zynqmp-dma > > > 14: 0 0 0 0 GICv2 158 Level zynqmp-dma > > > 15: 0 0 0 0 GICv2 159 Level zynqmp-dma > > > 16: 0 0 0 0 GICv2 160 Level zynqmp-dma > > > 17: 0 0 0 0 GICv2 161 Level zynqmp-dma > > > 18: 0 0 0 0 GICv2 162 Level zynqmp-dma > > > 19: 0 0 0 0 GICv2 163 Level zynqmp-dma > > > 20: 0 0 0 0 GICv2 164 Level Mali_GP_MMU, > Mali_GP, > > Mali_PP0_MMU, Mali_PP0, Mali_PP1_MMU, Mali_PP1 > > > 30: 0 0 0 0 GICv2 95 Level eth0, eth0 > > > 206: 314 0 0 0 GICv2 49 Level cdns-i2c > > > 207: 40 0 0 0 GICv2 50 Level cdns-i2c > > > 209: 0 0 0 0 GICv2 150 Level nwl_pcie:misc > > > 214: 12 0 0 0 GICv2 47 Level ff0f0000.spi > > > 215: 0 0 0 0 GICv2 58 Level ffa60000.rtc > > > 216: 0 0 0 0 GICv2 59 Level ffa60000.rtc > > > 217: 0 0 0 0 GICv2 165 Level ahci- > ceva[fd0c0000.ahci] > > > 218: 61 0 0 0 GICv2 81 Level mmc0 > > > 219: 0 0 0 0 GICv2 187 Level arm-smmu global fault > > > 220: 471 0 0 0 GICv2 53 Level xuartps > > > 223: 0 0 0 0 GICv2 154 Level fd4c0000.dma > > > 224: 3 0 0 0 dummy 1 Edge ath9k > > > 225: 0 0 0 0 GICv2 97 Level xhci-hcd:usb1 > > > > > > Regards, > > > Bharat > > > > -- > > Kalle Valo > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of > a message to majordomo@vger.kernel.org More majordomo info at > http://vger.kernel.org/majordomo-info.html