From patchwork Fri Mar 27 09:57:03 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 11462125 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B6F0C6CA for ; Fri, 27 Mar 2020 09:57:12 +0000 (UTC) Received: by mail.kernel.org (Postfix) id B13F420717; Fri, 27 Mar 2020 09:57:12 +0000 (UTC) Delivered-To: soc@kernel.org Received: from mail-lf1-f67.google.com (mail-lf1-f67.google.com [209.85.167.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 445E920578 for ; Fri, 27 Mar 2020 09:57:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="FiSWKVdv" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 445E920578 Authentication-Results: mail.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linus.walleij@linaro.org Received: by mail-lf1-f67.google.com with SMTP id j188so7317586lfj.11 for ; Fri, 27 Mar 2020 02:57:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=dxMnZPx7ZOP/i1MY4HPIw99MqretVFofELnazmV9s8M=; b=FiSWKVdv3ZebfphDlJuCD7J3uZBdOnPFA/urx+0HWfImxZIkMK7H/IdDaUN57/YOt9 d8X9OY95Hie/d+/LP1ElMVx8q0Ufz9LrN9cj4BOJpBZrM5LEIjRWO7ViPOykT/ndB4ji 1Q4GQLjIWlpG4FktaryrG+xZSukiCfw3rwSQXHp1zp316rm4BtkV33msA1XSgUlgw3Ot POhBAL5dHkIlKpBCYkzh0TIRB1EaRS0GUYhiH6YgPZ9Ur5flHTfuT3OTMGpi5qqsc8st fm9/p+o4ejmdPehymdxPEY1fWDEr9C0SokIbTIz2aNaUSbfsdArfHF03x6HY1Wy0u0vm cJNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=dxMnZPx7ZOP/i1MY4HPIw99MqretVFofELnazmV9s8M=; b=qkJ9aVgyu+UuCEKkcXSxhPmRbt9vs4E1jckwohc0IeAI571fIgXwcG/80PLAkq00Ft KdT3mVh55U4mSPCrV8uVOMfLQDN2OS5s3BFWVAzgdd2btdlrE7x3kMAxzPyTjR2Nwr/2 s4kpYnJBxamjXLT6QpTP4lvXJaKwi8na/MVWGAcyqyRhD0x2lhjfvGWq9jA+yKW+/mwW TmH8OU+b87LnC04v/bcQudfvsm6b8+k5Go8ffX9HcKl5yD2fX3KTmRsBpxbm3DcEmjnW IaQi8X6zcdgW5c88Rfg1EJtSXzP0XhHDxXEm585rFv8xmRMbGlSV5r8eTXxFeNsTpzSC 0sSQ== X-Gm-Message-State: ANhLgQ1Cc8PqGEbwpWDCKmw0bdBTd625NxiNBvlQIbT4M62MV1R4c3SQ H9N57t4fK9thbtsl3S+smjsZJg== X-Google-Smtp-Source: ADFU+vtkGs3QgJqZ35JeakVvXD76oNN6bsPLXBQzue+1DzzAqwNa3FqhmK+7S4kbPR6v4/BHo1wiuQ== X-Received: by 2002:a19:74c:: with SMTP id 73mr8275773lfh.56.1585303030318; Fri, 27 Mar 2020 02:57:10 -0700 (PDT) Received: from localhost.localdomain (h-81-170-219-154.NA.cust.bahnhof.se. [81.170.219.154]) by smtp.gmail.com with ESMTPSA id z5sm2711890lfq.71.2020.03.27.02.57.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2020 02:57:09 -0700 (PDT) From: Linus Walleij List-Id: To: arm@kernel.org, soc@kernel.org Cc: linux-arm-kernel@lists.infradead.org, Linus Walleij , Vincent Guittot , Viresh Kumar , Sudeep Holla Subject: [PATCH] ARM: vexpress: Make schedutil governor available Date: Fri, 27 Mar 2020 10:57:03 +0100 Message-Id: <20200327095703.93178-1-linus.walleij@linaro.org> X-Mailer: git-send-email 2.24.1 MIME-Version: 1.0 When building the kernel for Versatile Express we need to consider that some of these boards are big.LITTLE HMP systems. As can be seen from kernel/sched/topology.c: "EAS can be used on a root domain if it meets all the following conditions: 1. an Energy Model (EM) is available; 2. the SD_ASYM_CPUCAPACITY flag is set in the sched_domain hierarchy. 3. no SMT is detected. 4. the EM complexity is low enough to keep scheduling overheads low; 5. schedutil is driving the frequency of all CPUs of the rd;" This means that at the very least, schedutil needs to be available as a scheduling policy for EAS to work on these systems. Make this explicit by selecting CPU_FREQ and CPU_FREQ_GOV_SCHEDUTIL from the Versatile Express machine. Currently users of the TC2 board (like me) has to figure these dependencies out themselves and it is not helpful. It is still necessary to configure in the schedutil as default governor manually to actually get a working b.L system, so this just makes the right governor available to b.L systems, it does not turn it on by default. Cc: Vincent Guittot Cc: Viresh Kumar Cc: Sudeep Holla Signed-off-by: Linus Walleij Acked-by: Viresh Kumar --- arch/arm/mach-vexpress/Kconfig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/mach-vexpress/Kconfig b/arch/arm/mach-vexpress/Kconfig index 726a68085c3b..0a5a67448c94 100644 --- a/arch/arm/mach-vexpress/Kconfig +++ b/arch/arm/mach-vexpress/Kconfig @@ -8,6 +8,8 @@ menuconfig ARCH_VEXPRESS select ARM_GLOBAL_TIMER select ARM_TIMER_SP804 select COMMON_CLK_VERSATILE + select CPU_FREQ + select CPU_FREQ_GOV_SCHEDUTIL select GPIOLIB select HAVE_ARM_SCU if SMP select HAVE_ARM_TWD if SMP