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 X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 79F3FC433F5 for ; Mon, 20 Sep 2021 11:36:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5C8D46101C for ; Mon, 20 Sep 2021 11:36:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230336AbhITLha (ORCPT ); Mon, 20 Sep 2021 07:37:30 -0400 Received: from mail.kernel.org ([198.145.29.99]:52564 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229522AbhITLh3 (ORCPT ); Mon, 20 Sep 2021 07:37:29 -0400 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 2689E60F93; Mon, 20 Sep 2021 11:36:03 +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 1mSHab-00BkQY-8l; Mon, 20 Sep 2021 12:36:01 +0100 Date: Mon, 20 Sep 2021 12:36:00 +0100 Message-ID: <87v92vv5r3.wl-maz@kernel.org> From: Marc Zyngier To: Kishon Vijay Abraham I Cc: Thomas Gleixner , Bjorn Helgaas , , , Lorenzo Pieralisi , Subject: Re: [PATCH 0/3] PCI/gic-v3-its: Add support for same ITS device ID for multiple PCIe devices In-Reply-To: <96caa71f-2632-6eb7-e211-1c2f43a3be16@ti.com> References: <20210920064133.14115-1-kishon@ti.com> <871r5jwqw3.wl-maz@kernel.org> <96caa71f-2632-6eb7-e211-1c2f43a3be16@ti.com> 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: kishon@ti.com, tglx@linutronix.de, bhelgaas@google.com, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, lorenzo.pieralisi@arm.com, lokeshvutla@ti.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 20 Sep 2021 12:22:48 +0100, Kishon Vijay Abraham I wrote: > > Hi Marc, > > On 20/09/21 2:44 pm, Marc Zyngier wrote: > > On Mon, 20 Sep 2021 07:41:30 +0100, > > Kishon Vijay Abraham I wrote: > >> > >> AM64 has an issue in that it doesn't trigger interrupt if the address > >> in the *pre_its_window* is not aligned to 8-bytes (this is due to an > >> invalid bridge configuration in HW). > >> > >> This means there will not be interrupts for devices with PCIe > >> requestor ID 0x1, 0x3, 0x5..., as the address in the pre-ITS window > >> would be 4 (1 << 2), 12 (3 << 2), 20 (5 << 2) respectively which are > >> not aligned to 8-bytes. > >> > >> The DT binding has specified "msi-map-mask" using which multiple PCIe > >> devices could be made to use the same ITS device ID. > >> > >> Add support in irq-gic-v3-its-pci-msi.c for such cases where multiple > >> PCIe devices are using the same ITS device ID. > >> > >> Kishon Vijay Abraham I (3): > >> PCI: Add support in pci_walk_bus() to invoke callback matching RID > >> PCI: Export find_pci_root_bus() > >> irqchip/gic-v3-its: Include "msi-map-mask" for calculating nvecs > >> > >> drivers/irqchip/irq-gic-v3-its-pci-msi.c | 21 ++++++++++++++++++++- > >> drivers/pci/bus.c | 13 +++++++++---- > >> drivers/pci/host-bridge.c | 3 ++- > >> include/linux/pci.h | 8 ++++++-- > >> 4 files changed, 37 insertions(+), 8 deletions(-) > > > > What I don't see in this series is how you address the other part of > > the problem, which is your reuse of the Socionext hack. Please post a > > complete series addressing all the issues for this HW. > > No additional patches are pending. Socionext configuration is used as is > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/ti/k3-am64-main.dtsi#n72 Hmmm. You are pretty lucky that the Socionext machine is also using a GIC-500, and that your pre-ITS widget falls into the low 4GB... > FWIW the issue that I address in this series is not observed with > standalone USB cards or NVMe cards. The issue was observed when I > tried with a multi-function PCIe card. That's indeed what I understood of the bug. M. -- Without deviation from the norm, progress is not possible.