From patchwork Wed Dec 16 15:16:13 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tomasz Nowicki X-Patchwork-Id: 7862181 X-Patchwork-Delegate: bhelgaas@google.com Return-Path: X-Original-To: patchwork-linux-pci@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 421FC9F6FA for ; Wed, 16 Dec 2015 15:17:54 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 39409202FE for ; Wed, 16 Dec 2015 15:17:53 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 36AD02037F for ; Wed, 16 Dec 2015 15:17:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965723AbbLPPRr (ORCPT ); Wed, 16 Dec 2015 10:17:47 -0500 Received: from mail-wm0-f42.google.com ([74.125.82.42]:36396 "EHLO mail-wm0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965697AbbLPPRq (ORCPT ); Wed, 16 Dec 2015 10:17:46 -0500 Received: by mail-wm0-f42.google.com with SMTP id p187so5655195wmp.1 for ; Wed, 16 Dec 2015 07:17:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=mXhJ/SeA6sTM2vrPHXOs0ObbB8cWs/eeyC2PGdcp/ak=; b=b5nK/oaBedCfGld3F5giZkDw7AuLL1yDx3+R9gLlNKUy/iJd+65i/P9t8UHYl99yXy 02cuB7g0lyjnliE1JkYRWwR8eQB51kB8HVn5OcjT1TAP3RlXVmqJ4Vb/JTHzpr2LtScQ ABsMwFu7vM+FZTZlEhw9XCi4B8X9L3APdFzJX24gAhzHdlWePh6W4MMda5pZT3lnJqCV dQG5U0fbKiFCotMDJGcHFn7QiErL6ny7fNBWVzcC/WI8ZIxa/XEs8W3OFG3XImyzsVuc iS3KAKSUQ6EIkLuycunyzHIBRPfsFJ8jucBRCw+1QbqvxtjNo6gfMbJ1mB9TNmNLmxxO Py0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=mXhJ/SeA6sTM2vrPHXOs0ObbB8cWs/eeyC2PGdcp/ak=; b=h8skr7vbbrs0dbxE3aRsluVZX/nR641GoE1n3nPaLMlaYAWAnz2GgAu4xLWU47DFGm AeLqNBtmw2otxBrN9dFC8qUoz8hjBenO+KloaaixzErBSVRrERSLCbURuI+US+/U4RFT FSvyF/ye9/utzM2VoX6s2XNmomi6Qj51fVWluI+zeO4RlBbywrUesWMnWl3UpgOuL8s3 D2jpcHLli3rUtcWazKWwb+pgZh9f5Gvwvczo+AwEj32thF1TE5wBlHRnsnnYhUv0QJsV Kn2qymTVMrYzGwbON+ohkGXHB8TWNx9+xsJDMKEQLCSIV/6qUUkVOxumzKzv4UQViPPD EVng== X-Gm-Message-State: ALoCoQnG/qzJbrO3me7EJI+25emI9vZK1h8F0LO9BC1xmBh8lwyJe8JjzlnsXItaHPwCnJoE+Em/NW+yasNWdtEvsqBL73uq7w== X-Received: by 10.28.125.201 with SMTP id y192mr12609334wmc.23.1450279064376; Wed, 16 Dec 2015 07:17:44 -0800 (PST) Received: from tn-HP-4.semihalf.local ([80.82.22.190]) by smtp.gmail.com with ESMTPSA id z17sm6438761wjq.1.2015.12.16.07.17.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 16 Dec 2015 07:17:43 -0800 (PST) From: Tomasz Nowicki To: bhelgaas@google.com, arnd@arndb.de, will.deacon@arm.com, catalin.marinas@arm.com, rjw@rjwysocki.net, hanjun.guo@linaro.org, Lorenzo.Pieralisi@arm.com, okaya@codeaurora.org, jiang.liu@linux.intel.com, Stefano.Stabellini@eu.citrix.com Cc: robert.richter@caviumnetworks.com, mw@semihalf.com, Liviu.Dudau@arm.com, ddaney@caviumnetworks.com, tglx@linutronix.de, wangyijing@huawei.com, Suravee.Suthikulpanit@amd.com, msalter@redhat.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org, linaro-acpi@lists.linaro.org, jchandra@broadcom.com, jcm@redhat.com, Tomasz Nowicki Subject: [PATCH V2 03/23] pci, acpi, mcfg: Provide generic implementation of MCFG code initialization. Date: Wed, 16 Dec 2015 16:16:13 +0100 Message-Id: <1450278993-12664-4-git-send-email-tn@semihalf.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1450278993-12664-1-git-send-email-tn@semihalf.com> References: <1450278993-12664-1-git-send-email-tn@semihalf.com> Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID,T_RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP First function acpi_mcfg_check_entry() does not apply any quirks by default. Last two functions are required by ACPI subsystem to make PCI config space accessible. Generic code assume to do nothing for early init call but late init call does as follow: - parse MCFG table and add regions to ECAM resource list - map regions - add regions to iomem_resource Signed-off-by: Tomasz Nowicki Tested-by: Suravee Suthikulpanit --- drivers/acpi/mcfg.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/drivers/acpi/mcfg.c b/drivers/acpi/mcfg.c index 5ecef20..fad9917 100644 --- a/drivers/acpi/mcfg.c +++ b/drivers/acpi/mcfg.c @@ -57,3 +57,29 @@ int __init acpi_parse_mcfg(struct acpi_table_header *header) return 0; } + +int __init __weak acpi_mcfg_check_entry(struct acpi_table_mcfg *mcfg, + struct acpi_mcfg_allocation *cfg) +{ + return 0; +} + +void __init __weak pci_mmcfg_early_init(void) +{ + +} + +void __init __weak pci_mmcfg_late_init(void) +{ + struct pci_mmcfg_region *cfg; + + acpi_table_parse(ACPI_SIG_MCFG, acpi_parse_mcfg); + + if (list_empty(&pci_mmcfg_list)) + return; + if (!pci_mmcfg_arch_init()) + free_all_mmcfg(); + + list_for_each_entry(cfg, &pci_mmcfg_list, list) + insert_resource(&iomem_resource, &cfg->res); +}