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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3BF8EC04FFE for ; Tue, 14 May 2024 22:45:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=V7IWQEG+NBlk1svmEFcP60BJ5FavnElET12/uJy6A9E=; b=JRC1HheOfRU+EJ n1UOlwgSu3wFG3msOkC/PrM1LJGTuaG1HV4rZsc6X4m8i692sCkS2jkVDfvwCDlPXRcb62WxZfag1 CESSkwZvTncXOuoFM6y5A0O76jVJHxdxvwL1aBXkqBeVY8g0uxK24+vYpbpBY1SOnQCFse+xa14kg v8E51BYLwZejqAtgUcpP9VZxjVZZWo0YI3qUqBXaw8HdpTEdJ/dDtKJa5jqHf1K/Hw6WibUS+ULV6 jLwMbRBx0mQuMufulyq3Q1ZlpVUjvN624vgWaalfdL2DBt3vuBA2wP3LrmuIs2hY6sT4kk+i9AxuN untikk+8bT0OuJAp2+iQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s70u0-0000000HNWQ-0oYn; Tue, 14 May 2024 22:45:44 +0000 Received: from linux.microsoft.com ([13.77.154.182]) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s70ti-0000000HNL6-3SWi for linux-arm-kernel@lists.infradead.org; Tue, 14 May 2024 22:45:28 +0000 Received: from xps-8930.corp.microsoft.com (unknown [131.107.160.48]) by linux.microsoft.com (Postfix) with ESMTPSA id 594892095D11; Tue, 14 May 2024 15:45:22 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 594892095D11 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1715726722; bh=nn4KQV68n4WSbSFFxJJQzluv/kgRud1rPVzivgVs9S0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XaX/+GHnNrg4XA0FawTJAnlgsIOEcHB9P133ahRuzmaWgZZ6922vOaNOwsOEObWM7 AKTg8l8OU+3i7fIREg8gSUe0LulylVa3E4yiL/5WxMUHcppdm87ciWmuuZ4a9P2COu hpuzTKW1wNC60oQ1+gokVeFkzm41EemxwR99IiVY= From: Roman Kisel To: arnd@arndb.de, bhelgaas@google.com, bp@alien8.de, catalin.marinas@arm.com, dave.hansen@linux.intel.com, decui@microsoft.com, haiyangz@microsoft.com, hpa@zytor.com, kw@linux.com, kys@microsoft.com, lenb@kernel.org, lpieralisi@kernel.org, mingo@redhat.com, mhklinux@outlook.com, rafael@kernel.org, robh@kernel.org, tglx@linutronix.de, wei.liu@kernel.org, will@kernel.org, linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, x86@kernel.org Cc: ssengar@microsoft.com, sunilmut@microsoft.com, vdso@hexbites.dev Subject: [PATCH v2 6/6] drivers/pci/hyperv/arm64: vPCI MSI IRQ domain from DT Date: Tue, 14 May 2024 15:43:53 -0700 Message-ID: <20240514224508.212318-7-romank@linux.microsoft.com> X-Mailer: git-send-email 2.45.0 In-Reply-To: <20240514224508.212318-1-romank@linux.microsoft.com> References: <20240514224508.212318-1-romank@linux.microsoft.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240514_154527_004875_D287DBF2 X-CRM114-Status: GOOD ( 12.54 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The hyperv-pci driver uses ACPI for MSI IRQ domain configuration on arm64 thereby it won't be able to do that in the VTL mode where only DeviceTree can be used. Update the hyperv-pci driver to discover interrupt configuration via DeviceTree. Signed-off-by: Roman Kisel --- drivers/pci/controller/pci-hyperv.c | 13 ++++++++++--- include/linux/acpi.h | 9 +++++++++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c index 1eaffff40b8d..ccc2b54206f4 100644 --- a/drivers/pci/controller/pci-hyperv.c +++ b/drivers/pci/controller/pci-hyperv.c @@ -906,9 +906,16 @@ static int hv_pci_irqchip_init(void) * way to ensure that all the corresponding devices are also gone and * no interrupts will be generated. */ - hv_msi_gic_irq_domain = acpi_irq_create_hierarchy(0, HV_PCI_MSI_SPI_NR, - fn, &hv_pci_domain_ops, - chip_data); + if (acpi_disabled) + hv_msi_gic_irq_domain = irq_domain_create_hierarchy( + irq_find_matching_fwnode(fn, DOMAIN_BUS_ANY), + 0, HV_PCI_MSI_SPI_NR, + fn, &hv_pci_domain_ops, + chip_data); + else + hv_msi_gic_irq_domain = acpi_irq_create_hierarchy(0, HV_PCI_MSI_SPI_NR, + fn, &hv_pci_domain_ops, + chip_data); if (!hv_msi_gic_irq_domain) { pr_err("Failed to create Hyper-V arm64 vPCI MSI IRQ domain\n"); diff --git a/include/linux/acpi.h b/include/linux/acpi.h index b7165e52b3c6..498cbb2c40a1 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h @@ -1077,6 +1077,15 @@ static inline bool acpi_sleep_state_supported(u8 sleep_state) return false; } +static inline struct irq_domain *acpi_irq_create_hierarchy(unsigned int flags, + unsigned int size, + struct fwnode_handle *fwnode, + const struct irq_domain_ops *ops, + void *host_data) +{ + return NULL; +} + #endif /* !CONFIG_ACPI */ extern void arch_post_acpi_subsys_init(void); -- 2.45.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel