Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932610AbcLHQCL (ORCPT ); Thu, 8 Dec 2016 11:02:11 -0500 Received: from mail-co1nam03on0061.outbound.protection.outlook.com ([104.47.40.61]:14208 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752252AbcLHQCG (ORCPT ); Thu, 8 Dec 2016 11:02:06 -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:2438;Count:27 From: Bharat Kumar Gogada To: Bjorn Helgaas CC: "linux-kernel@vger.kernel.org" , "linux-pci@vger.kernel.org" , Marc Zyngier , "Janusz.Dziedzic@tieto.com" , "rmanohar@qti.qualcomm.com" , Kalle Valo , "ath9k-devel@qca.qualcomm.com" Subject: RE: ATH9 driver issues on ARM64 Thread-Topic: ATH9 driver issues on ARM64 Thread-Index: AQHSUWNLKRFHQUL67ky5AgPY+zl5DKD+JeSA Date: Thu, 8 Dec 2016 15:29:08 +0000 Message-ID: <8520D5D51A55D047800579B094147198263A72F5@XAP-PVEXMBX02.xlnx.xilinx.com> References: <8520D5D51A55D047800579B094147198263A7222@XAP-PVEXMBX02.xlnx.xilinx.com> <20161208145608.GA19822@bhelgaas-glaptop.roam.corp.google.com> In-Reply-To: <20161208145608.GA19822@bhelgaas-glaptop.roam.corp.google.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)(39860400002)(39850400002)(39450400003)(39410400002)(39840400002)(2980300002)(438002)(189002)(40224003)(24454002)(199003)(51234002)(46406003)(54356999)(55846006)(47776003)(76176999)(50986999)(50466002)(97756001)(106466001)(106116001)(575784001)(63266004)(8746002)(2906002)(4326007)(8936002)(8676002)(33656002)(229853002)(81156014)(3846002)(6116002)(23726003)(102836003)(5660300001)(5250100002)(7846002)(356003)(2950100002)(6916009)(7696004)(305945005)(110136003)(38730400001)(189998001)(2900100001)(81166006)(2920100001)(92566002)(626004)(7736002)(107986001);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR0201MB0882;H:xsj-pvapsmtpgw01;FPR:;SPF:Pass;PTR:unknown-60-83.xilinx.com;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;CY1NAM02FT018;1:i3h3Ww1xVzQqSoAEHroAPUYylsCY14AsT2oIqBlwqHtgFW1oPGxVdLtYcWh+RTWas2QgfXZ6Yeq5WnKM01GFsLQduWJqntkVYNhI3AHrh7BfKslNkx0q44GJUZ17vjejUZd+3SaF9opILvuoNI3U8r80TjQPGuWbacL0eK8XIjWQx7F784kYd+RoXjcnGThUx4jxt3t/Hovwb/Oxj9276CaDGO/fc09r+XA5X+03QopVf6h/gHX+M5TRxesk4pIWmPbgqVudFfo6NQxwYSWFHBXwjaL3RFy7xuU+F9Q4AehaiqBcNCUK/leyIoKh/KdftBrkay0hy6K7rkFiwDxAa3Y6TjlX796Tu1xyAwGc6EO6T1MTmhCjBBsQVqCsn0Js0wB3XNgJRsei9DfusUWCbeh44sKH8Yu+9t9/qqHeoIulobxZmym34lKEy75PmlW0HrflFtAcH74c+/XWDBu8QC4YEkSGL5HexTnJJHp+PRebR0Vk3/17LxzB4MwS4lwZoah16nvBjwEDg3z0xWIdh5CJJIcbJ6NG6wSG6XBN1Ml6jYBQrZ35xj6fq9f5JNJsvwCflX3w3DDAlgUeDV0F0voNbD98IfASQiN8I8LM65aML1dKf2FfNoL0MSszNx0X X-MS-Office365-Filtering-Correlation-Id: f0b00667-31d7-4140-11b6-08d41f7ef6a7 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(8251501002);SRVR:BN3PR0201MB0882; X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0882;3:6qNorLINzkJS5Ho2vDRSBFbdB33aTX9sIaCvDNLA3KtfvKqWkraI0r441EjZ8hk+HxhusVm/kPgQxY0H359S+NIZwvBlYrBTQlk+L9t2cWbPNlmcDgOYZDDC6vVHabjMr8oy2gIgVF1doroR2wVy1jeRF3VJbCkBidbEIFuij2FzhJrsHRum+VF34+dI5iPtFR4j6YbEM3bLfLAcMqew1BYWuA8pEEXNn1q3XLoT+W8HaYeAv+5jYvm4Mj7AHkVs/56BASVdmT82h6MUW8mTAKtkpOXRtRPfdyOpm3o8evYrsfHhr61ad+/8tnKlJxL2osqk+2a1GSc+Qmf1oBikVtmNwspjzP7as0fEFWWVKmmldP0NbqYIF3MvafVgMhD0fGCVUpffFR8fYEVpVqXz2w== X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0882;25:ykZiHQ9XMKKZ5vHHHJZ8lo2AE6yPyNSBYnynVCQkSdBxgJ/9SX6tQTHMKc0S6qRAzIaTaGk0OXxOg7wuja+Qj9Te2dJ21K2hKUbLAkZjAv5JYfjIPKu+EoLKrU9mo9Yu07RuktU9tYRCgSW2TDbCodwE0rcsI2eWBdlHpOU8J4jOZrP82IujXKL5R0BDolOaxEpYYD4P2FjmEmUl6CgSkvBhf/NQavma2Et4/EsaRuIRS7XJgdmDxsAnRjqbKKRXCjvRIrgR4Dh9gi32dwaUOFYN8GVznBZXNEbg4H0pdTiDfIUhiI15T/PGcRXrv8RPDv03cwwj1L/yS9ZffqmieBCLtW90rw0CBLM+4mcRRtAph1VLISCmgdAsXzmkbsHQJ4V0flHFHvbKMPqPhOM3LHyCGw86jooBE2/ossKcND2Ziyd8ra/qgn+CdynWSYVpoeJLoMSVTbefj1Xilwmm3VZqvrAZlrJhxLLpnp7bwmxKbTfuegVqId6A8lgvOvhYbDhEJMhibkynkaL7u/4U8soI6lhmIDREu6Pv+SmFVfow5Ov7rDVKX3KU6pPUYGVoN0TqFR2qsjZApIxcp81K3nkU2nVkrpQMMcrlg/LYTdaKbojooput+xNtnwvNlcXiL2eoQGVVBOzjiU22D3hyIn9FZTD4XCUVfslo66bMbTgbRGaRo3GebHe+wgfAdu+6225aVHkQNiJ8EMwzI+5wdXm4aJQ9eZAkCjHjjkDnw9I0bmUwpcwoG/xj2UBW/pzMt7Vq3UVPnEiRQgxJyRz5lYXdEG07RrDtREF5L5v/qBoa55Dmz6zIMX0wbhR4sYXJDna+r1rj9x98cHQ2LZLnAg== X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0882;31:GxWfXFPKRduQtl+RjYzyi+vid4YKx0PFlh9O5DUDP2nGW+VuaLw+jot3gtCwpfPfqMUJzggshlbyKgATI7NvfaFvFsj6x5tidn+Vt1onmMCVmVNGJpXTpLyn0EOcVhjoS9qJeBguvZhn4eU5DZ7DQXq/W2PecU8bPyDTHKF3BrVZasyIZgQNltW6oylMKFKbB7NxpiAm4TarXV/Zv7NhZTsTqhMpUO8XKC/euA0uXvHIOR/dM01mPxZc9P/PA6P/gKwlL+ihEtjmBZ1tRhc8pGEzI3CJH+A9o+g8VF5dvoQ=;20:wqzwb8uQtjQO5eA4HgSxtPWQnkFZeR5Dy0lPfD2muuZ3c74c4iDObfr2nOSEUA+v7bMMsmK09YUaY8JVfiaY0MwYrPwj2LNMBskjM/rzXge1F8qvlJEWbAlo0XehVxtIKglqwoT/lw5MHRXSnAyEulAlmjvTJnl3La3bQwpnhmSPF4MRYprkXAJyZNS9tYUneg79oQbHb0gOa60z/mbNinX7mDkdslrb74IajXFciADsgPdmsB0DsN5kRESUEs2tAVz2IT0ibKDs2b21FwO8bYtTE19Leolk7Ht+GOTJa9IHlVXV8A0GIQGURwVh+Ty2mcR+3pw34XvL+H4PA72QGutDPiwusUxNFj8psAzdH6O9BdCgxpakwsGk8gL5+DPvBVXi/VTQ1LgoGcaqaeVvxCpfN3X2gJpcC2sY32NsE777RhZhdsyJYXyeNQJMDtKXLM7DJ0bS5qE8/1MOJ/WgdkXy20VAPieJMYf4lXDM2JTc/QFfOyMCktmjnAt8HWQE X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(211171220733660); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(13023025)(13017025)(13015025)(13024025)(13018025)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123564025)(20161123562025)(20161123555025)(6072148);SRVR:BN3PR0201MB0882;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0201MB0882; X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0882;4:6Ne632LWClT1plwTptADiepIf8T8ssKHAb2dSDLQOlfvn0PBR2Hl8ZsZEp51L1fYRTsW59uD5OS0VoY+v3XN4O6mirMbCHbkLp2wx3nqR13MH5XE/nRpfaQH+dOi25v9US4IGIcx3V00VWRYdJqli/xUro75onmKbehERi+lo4q58sNkYG2LNqRNVVJDC/runK+74Sug0QaxkE+lonionrOhfWXiQFLQYE5fRlcNrvV+VqWzoMaDFNnj1xjJOf+5jSqQyYmwiq+bb/GW2HT5THQaV21gar8ufg0ytzQiEtNCCLJhlUy3E8LWw9rV+IsJIzGJEkq0H8zvcbJoFQXAvj4V5URIQl1pIg4at+yDYKvxBVT7Yi5amFHsawbcr1IaY4igCWYSrPMx+LtCgEoHcm132oht84YwGw+jHHn6oiqhX3JKOhonb3VXfxXc6lFQdx8ZHUdIDFlgTA3fgeKqouJ1YNvhbr7ADXcGIMNIee344D3pV8+/opxazg0pRBF89ENhqW1zX67JcrNe0LI0jauEG5seuhSxeqdkE/rqnafVx9JVY3h+wOUD/GRxohzubtSwbq8b3aTCceYcmTWFl7GctKtKo2KvvnBOR0J4z1JXzbhSgmB5pAkcrJeRD248WA0M42Gso9+go2pZX6vu7T5wLdhyOmBEfrmsOBUXS5iSYTBpKYUIJBVj+RSmLdMSU79EL1TPCkGjyiYvg6zTktLlrGFl8GpvhktuxNSWodI= X-Forefront-PRVS: 0150F3F97D X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BN3PR0201MB0882;23:4yp9nNriEckZTJVIY20ngSkR86dGjFcAh5NKpW5?= =?us-ascii?Q?se0wVR+H2BPsUSuUHypcVQPP0yR59LFkBexIYEAxarObuWLk5ZFCoKL49Fhz?= =?us-ascii?Q?Z7zIzbGmLVf0XHw9LUreYRqgVblq6D6AK0ptwJtKGt0FDDbaonfBlIaKp/Ro?= =?us-ascii?Q?8C+yFaebk/GtKkC3ViDVsvxemdGscMnhOmuc4Moh+SLuvDcAhUisIe1/KsO/?= =?us-ascii?Q?SNxPbvHAmA3y8uedDfb5EIK1QEGE/jhhGwEPOCHtNpPkZQSA/MKOoEoU9DL3?= =?us-ascii?Q?d6HmkT6ovGmYmB4AxPM3azC0mRZL7TkWSWyYAvZINWnjjXuVMZnNFgMbyuxl?= =?us-ascii?Q?eruF9YJQ62rIlc/6FYsVxPd9wegqDVGcWgiJhb/LbTo2BZn9v1naSVK/fUfJ?= =?us-ascii?Q?2HIcw94yFg5uj0fi6V04qa5nmXaEz3TzJNFE8DHoLLPDlLuRGs6PDKD28wby?= =?us-ascii?Q?pH6ahahNbiuFb/GdMGOG+sDN+zfKEsE3Hgja2Ms3Gm4aa8n6+AxG8kp+pqXx?= =?us-ascii?Q?36fscFdFyGxsztSsUmgVH1LZEbO9XP0/ZpDMnOCGgmAnAeyO/dAySIjRx4P8?= =?us-ascii?Q?7ZGyr57xd7EnpSA8/kC6IPwXh7sH1VYSRh6Wtlcu6Cr45Y43qpvMaiRcmDEW?= =?us-ascii?Q?It4PuFUYPzRSNT7A5Nm1kn0Bg6qmTr7ycgK/+PJeblUIqgJyksExgHdt0fAt?= =?us-ascii?Q?h1qNQ2JfojHpQynrvKwE1/odJMw+exmcloOqYEIrcRQR2mSF2NmnP8mSQcqk?= =?us-ascii?Q?mhcGKZ8lSruKiwR4H4L/fcPR5qO+QezatsQq1fKTKbvJ39Qe45AdlwceX92v?= =?us-ascii?Q?HPOy2Ej0gmkWLUlAtuxVryJ+Z8E7PTsOAbc+GXjWS4ikMbLK04pmnW/Wwu2K?= =?us-ascii?Q?QHx+mJtuJSiyurwztIyrpRoXq/V/4qtKrm1b/XhHVaRrK9PhZDC/CzslkQKO?= =?us-ascii?Q?atyaQmwPP9efZ3EXFvFex7tFlFGYhi6GdaHKZfRlockgG28Su9lpkAWJAUzl?= =?us-ascii?Q?pK/6pETE64Ec+aleJTgBehEVlePHOsUngzzSehkbQmfkbQgmg1QAhdlVRUbk?= =?us-ascii?Q?gTXSyqy43z0Lrwf7dzB3/2WH8LfKVnCTGIBnlRwAdZNSlfva2o/lQo1JunF+?= =?us-ascii?Q?80MnrAzkgrmcvLRjjw1DaZH029UFvNxJApkE8yLANQPJ70oFxjUEEcH9aC1h?= =?us-ascii?Q?EMZxCE1hgXnJPPlH/fsqJ3n+FPk4CjmBjRCp9oZtCV/gVzozBgA8Pu1SfVHl?= =?us-ascii?Q?pjmVPZGZE9tEw9Z040IymcI4zxiK2ci2VJYDpPqv5wm6LZahENI4A8DIz0/9?= =?us-ascii?Q?XsoyAGv+SRGPqXoijXTH34N9H0mAa8mSuTFJ55bip/7fU?= X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0882;6:CIMH1SkPZ7DGavXBQzFkHzod8Cmzv2K1Yt+JlYuNwg3tihyHvtJt1mh+RH62MjdWG2xQJ18CVWY+ROisXGklb9jZnfNwR+vJXBG3sX45u76fE7tL8l7Ks/Wip4jQZJc4OcnvBobnllt7JPszuWhbIfJvFqfR5VQUyq03N7ClP6jECIlzfqttNfA/9t4haOizg+BMwluVMPUujZkv+dD/Vhqml7G/N1rjySqQAgEeYUe2E/j79VXifCGdhIxoIfsGkJlGz/Eris43q4l7bGQhXOe3MJoM3dlKsJR9i4YxmIZeawL4MTTYvwKyl3qhIt/Ib+qHymn2Nfyf/BSh9zqHBn/Z1BkWioUUnTITuIZGi2ZSZTIEUdr+yD2AdWCsvDzZh5EFUvf7VhZ/mJ/K4ZxbE2sWt2zpSpUOwkLGXE7xhRbriPQaP8NJ+101P9cpy0Te7k45Dqs+F2y8Y+tyb3FbDA==;5:5H3NxbTeCSLflmrJ2RnAQmPbS9xvqDke/egHTL27mw4sH+jZseB5DM8DbqNCX9pE02oQYwhkHfq6q5deotrR4eTUhZxGEN5TTAm2Q8KYjiYdKlAQpTh+zOJ+d1s1Eyk8ZT8bWh13v55GAe46PLc2asC7fASsZMWQS1WhRpd2usU=;24:YaisuBWdg2En/Rp7Xmupg5ctkuJNUlWAlX9tiiOcWg4BM0Vuu5dQG0F6vsXo4GnxShWNWnuKiGjDIzOUzY7ojspvDKgiI018vFkYQ/F7uac= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN3PR0201MB0882;7:D9889wkaT/2ojIXj02gmXxCfh738jLm3e7/SLSTKyMfukuJmzpEXp7MAsupDWr1NQVvor0AAUWIwAlppuZLbhrL4aXQuII5HlbfMJhoYV37PSGsB0LY1x+JOnIOArpTrETtV28i2vwim2MBqsc6c81ChOq0tOiuIGSsMBUbyxZi1dql3K2Tck3kXGV6TwdmvYhpNoIxxTp+4mRBV7q7d5Ubh4nPM9IV93d4QB4nXA4e2PGgWHD4ShFKFvDvsFfizAX6+xCvCWo46eLKbbkaEWEs+QktVCQf5bgA288/+s1+YYmUhwZKwwicePrcnOfTpl0g8pZWKdWrRJOhZgOnk1BdZoXk2jH/bVNnl5+v5cvazEOqMYsuD4x7qLA+MORNsSi9N5466rlj5NlJRF+ap+JeACb/uYY939b9ECwphzTsSNxA+8BMMEekTtbVOs5HrUjVqmIIeJWRh+obQT+P0cw== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2016 15:29:12.4473 (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: BN3PR0201MB0882 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 uB8G2G1b007057 Content-Length: 20563 Lines: 384 > [+cc Kalle, ath9k list] > > 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- TAbort- 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-