Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp6200imw; Mon, 4 Jul 2022 04:18:16 -0700 (PDT) X-Google-Smtp-Source: AGRyM1u/AUW9tqGDQKJpHqy3gun23qtAm0AEhN913T7SIvk5rr31//IQtn3oAEV9tGcFLoA30m08 X-Received: by 2002:a05:6402:428a:b0:42e:8f7e:1638 with SMTP id g10-20020a056402428a00b0042e8f7e1638mr38115666edc.228.1656933496621; Mon, 04 Jul 2022 04:18:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656933496; cv=none; d=google.com; s=arc-20160816; b=fWLMHGtXQn1/V7MTzYpRdg0MH8WBlMXvedb9arKxVWbALVBuT88QQtFrJHxxMXpDIg VwgeuahztZZLdXeRwd6HgnU2VqtKNn/Sgag6T0u2mW37ustuQEVxzuZsxFfBvJw1UE8q 06UmPZEfwH7E/uaXWlQ2dNaOeReQfFPCe54AET1jbbCyj/kiwyoTUglgItvhU6GZF8Sq Ksq3aJ7ZIARUq8yI3LJFUp4tki7Yv5PDZRSyhNHKo0sM3+7mL501SgYuUelZ4BwfKkUE xyqeS2H7Nndo9ZeDR+SsR8gzy1wkDx8yC1XxPQw8Lmx/DjyLNUnaagdlHtPSO7xfLifp LAWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=sH+xk8BuIB5Xy70IDC8M2h0DS29shmRCh1F+UiUnBR8=; b=ctpoEZ9iOMcLEyJP7dttuutb0imkoNIrbDM08uZIU4qUIxQtvQb86p8SfR/WLJDmoP jmTx3ov141N4tsV10/EDcJ6C3pj2ttSWWlj45LbClsO1SWsK/cbH9Ttorxb07nKVaa+L YkhLwVT0hlnSiwidLlh78qVzV2xzqACQC0n0mtPiomEzSK3b11Nf6NnuHFE210lU+qua D1OID5votcEszlaicHvNyFYvzlskPguKklEmD/5O/3PIquXsYx44QqDlmBxl3QEtXQJU jat7uz/14vaZ7SNpWPL8zTMJIdN6Aoy8kUNaC2QKaKl6YNx0L78Awfkila3/eInCf/dz tMjg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d11-20020aa7d68b000000b0043a4b4ba0ccsi3313542edr.175.2022.07.04.04.17.52; Mon, 04 Jul 2022 04:18:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233725AbiGDKRF (ORCPT + 99 others); Mon, 4 Jul 2022 06:17:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35030 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234037AbiGDKQY (ORCPT ); Mon, 4 Jul 2022 06:16:24 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id BF68DDF61 for ; Mon, 4 Jul 2022 03:16:23 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D243414BF; Mon, 4 Jul 2022 03:16:23 -0700 (PDT) Received: from usa.arm.com (e103737-lin.cambridge.arm.com [10.1.197.49]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A64EA3F792; Mon, 4 Jul 2022 03:16:21 -0700 (PDT) From: Sudeep Holla To: linux-kernel@vger.kernel.org, Greg Kroah-Hartman Cc: Sudeep Holla , conor.dooley@microchip.com, valentina.fernandezalanis@microchip.com, Vincent Guittot , Dietmar Eggemann , Qing Wang , Rob Herring , "Rafael J . Wysocki" , Ionela Voinescu , Pierre Gondois , linux-arm-kernel@lists.infradead.org, linux-riscv@lists.infradead.org, Gavin Shan Subject: [PATCH v6 04/21] cacheinfo: Move cache_leaves_are_shared out of CONFIG_OF Date: Mon, 4 Jul 2022 11:15:48 +0100 Message-Id: <20220704101605.1318280-5-sudeep.holla@arm.com> X-Mailer: git-send-email 2.37.0 In-Reply-To: <20220704101605.1318280-1-sudeep.holla@arm.com> References: <20220704101605.1318280-1-sudeep.holla@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org cache_leaves_are_shared is already used even with ACPI and PPTT. It checks if the cache leaves are the shared based on fw_token pointer. However it is defined conditionally only if CONFIG_OF is enabled which is wrong. Move the function cache_leaves_are_shared out of CONFIG_OF and keep it generic. It also handles the case where both OF and ACPI is not defined. Tested-by: Ionela Voinescu Reviewed-by: Gavin Shan Signed-off-by: Sudeep Holla --- drivers/base/cacheinfo.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/drivers/base/cacheinfo.c b/drivers/base/cacheinfo.c index e13ef41763e4..2cea9201f31c 100644 --- a/drivers/base/cacheinfo.c +++ b/drivers/base/cacheinfo.c @@ -33,13 +33,21 @@ struct cpu_cacheinfo *get_cpu_cacheinfo(unsigned int cpu) return ci_cacheinfo(cpu); } -#ifdef CONFIG_OF static inline bool cache_leaves_are_shared(struct cacheinfo *this_leaf, struct cacheinfo *sib_leaf) { + /* + * For non DT/ACPI systems, assume unique level 1 caches, + * system-wide shared caches for all other levels. This will be used + * only if arch specific code has not populated shared_cpu_map + */ + if (!(IS_ENABLED(CONFIG_OF) || IS_ENABLED(CONFIG_ACPI))) + return !(this_leaf->level == 1); + return sib_leaf->fw_token == this_leaf->fw_token; } +#ifdef CONFIG_OF /* OF properties to query for a given cache type */ struct cache_type_info { const char *size_prop; @@ -193,16 +201,6 @@ static int cache_setup_of_node(unsigned int cpu) } #else static inline int cache_setup_of_node(unsigned int cpu) { return 0; } -static inline bool cache_leaves_are_shared(struct cacheinfo *this_leaf, - struct cacheinfo *sib_leaf) -{ - /* - * For non-DT/ACPI systems, assume unique level 1 caches, system-wide - * shared caches for all other levels. This will be used only if - * arch specific code has not populated shared_cpu_map - */ - return !(this_leaf->level == 1); -} #endif int __weak cache_setup_acpi(unsigned int cpu) -- 2.37.0