From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A4B4EC433EF for ; Thu, 11 Nov 2021 17:39:41 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8CC9661268 for ; Thu, 11 Nov 2021 17:39:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 8CC9661268 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.ozlabs.org Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4HqprB6kdNz3bWX for ; Fri, 12 Nov 2021 04:39:38 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org (client-ip=198.145.29.99; helo=mail.kernel.org; envelope-from=maz@kernel.org; receiver=) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4Hqpqk04Jkz2xXL for ; Fri, 12 Nov 2021 04:39:13 +1100 (AEDT) Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0976F610CB; Thu, 11 Nov 2021 17:39:10 +0000 (UTC) Received: from sofa.misterjones.org ([185.219.108.64] helo=why.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1mlE2U-004sFt-Sj; Thu, 11 Nov 2021 17:39:06 +0000 Date: Thu, 11 Nov 2021 17:39:06 +0000 Message-ID: <87mtma8udh.wl-maz@kernel.org> From: Marc Zyngier To: Christian Zigotzky Subject: Re: [PASEMI] Nemo board doesn't recognize any ATA disks with the pci-v5.16 updates In-Reply-To: <78308692-02e6-9544-4035-3171a8e1e6d4@xenosoft.de> References: <3eedbe78-1fbd-4763-a7f3-ac5665e76a4a@xenosoft.de> <15731ad7-83ff-c7ef-e4a1-8b11814572c2@xenosoft.de> <17e37b22-5839-0e3a-0dbf-9c676adb0dec@xenosoft.de> <3b210c92-4be6-ce49-7512-bb194475eeab@xenosoft.de> <78308692-02e6-9544-4035-3171a8e1e6d4@xenosoft.de> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: chzigotzky@xenosoft.de, bhelgaas@google.com, alyssa@rosenzweig.io, lorenzo.pieralisi@arm.com, robh@kernel.org, matthew@a-eon.biz, darren@stevens-zone.net, madskateman@gmail.com, rtd2@xtra.co.nz, info@xenosoft.de, axboe@kernel.dk, damien.lemoal@opensource.wdc.com, kw@linux.com, arnd@arndb.de, robert@swiecki.net, olof@lixom.net, linuxppc-dev@lists.ozlabs.org, linux-pci@vger.kernel.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: axboe@kernel.dk, Rob Herring , lorenzo.pieralisi@arm.com, "R.T.Dickinson" , Arnd Bergmann , kw@linux.com, "linux-pci@vger.kernel.org" , damien.lemoal@opensource.wdc.com, Olof Johansson , Darren Stevens , mad skateman , "bhelgaas@google.com >> Bjorn Helgaas" , robert@swiecki.net, Matthew Leaman , linuxppc-dev , Alyssa Rosenzweig , Christian Zigotzky Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Wed, 10 Nov 2021 18:07:24 +0000, Christian Zigotzky wrote: > > On 09 November 2021 at 03:45 pm, Christian Zigotzky wrote: > > Hello, > > > > The Nemo board [1] doesn't recognize any ATA disks with the > pci-v5.16 updates [2]. > > > > Error messages: > > > > ata4.00: gc timeout cmd 0xec > > ata4.00: failed to IDENTIFY (I/O error, error_mask=0x4) > > ata1.00: gc timeout cmd 0xec > > ata1.00: failed to IDENTIFY (I/O error, error_mask=0x4) > > ata3.00: gc timeout cmd 0xec > > ata3.00: failed to IDENTIFY (I/O error, error_mask=0x4) > > > > I was able to revert the new pci-v5.16 updates [2]. After a new > compiling, the kernel recognize all ATA disks correctly. > > > > Could you please check the pci-v5.16 updates [2]? > > > > Please find attached the kernel config. > > > > Thanks, > > Christian > > > > [1] https://en.wikipedia.org/wiki/AmigaOne_X1000 > > [2] > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0c5c62ddf88c34bc83b66e4ac9beb2bb0e1887d4 > > Hi All, > > Many thanks for your nice responses. > > I bisected today [1]. 0412841812265734c306ba5ef8088bcb64d5d3bd > (of/irq: Allow matching of an interrupt-map local to an interrupt > controller) [2] is the first bad commit. Can you please give the following hack a go and post the result (including the full dmesg)? Thanks, M. diff --git a/drivers/of/irq.c b/drivers/of/irq.c index 32be5a03951f..8cf0cc9b7caf 100644 --- a/drivers/of/irq.c +++ b/drivers/of/irq.c @@ -156,14 +156,15 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq) /* Now start the actual "proper" walk of the interrupt tree */ while (ipar != NULL) { + bool intc = of_property_read_bool(ipar, "interrupt-controller"); + /* * Now check if cursor is an interrupt-controller and * if it is then we are done, unless there is an * interrupt-map which takes precedence. */ imap = of_get_property(ipar, "interrupt-map", &imaplen); - if (imap == NULL && - of_property_read_bool(ipar, "interrupt-controller")) { + if (imap == NULL && intc) { pr_debug(" -> got it !\n"); return 0; } @@ -244,8 +245,14 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq) pr_debug(" -> imaplen=%d\n", imaplen); } - if (!match) + if (!match) { + if (intc) { + pr_info("%pOF interrupt-map failed, using interrupt-controller\n", ipar); + return 0; + } + goto fail; + } /* * Successfully parsed an interrrupt-map translation; copy new -- Without deviation from the norm, progress is not possible.