From patchwork Wed Jul 28 04:00:22 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 1510721 X-Patchwork-Delegate: bmeng.cn@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=YVyZCUEa; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4GZKhL4HZdz9sT6 for ; Wed, 28 Jul 2021 14:00:48 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id EC140829E4; Wed, 28 Jul 2021 06:00:39 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="YVyZCUEa"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 5E9AB829E4; Wed, 28 Jul 2021 06:00:37 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com [IPv6:2a00:1450:4864:20::633]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 5D88A82916 for ; Wed, 28 Jul 2021 06:00:34 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=bmeng.cn@gmail.com Received: by mail-ej1-x633.google.com with SMTP id oz16so2295360ejc.7 for ; Tue, 27 Jul 2021 21:00:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=xYeY76F4NjOk7ZbYIIluDCxTUsaWbccC1UsGOUo17r8=; b=YVyZCUEazc1+iVcSdx5bSQey2ibN2dbHypPnDWuUwKtRLC56MGqRsHgFDq07QzW+0H Go+4MBqn2RCze9keFWt885JCImGO+DpEFd0+1da3SwlHioPb7DJjCuyPPP6wvRB1c5CB eCJ90usNDK2FS/f5EK6qIwocWoExHICA6mfgfMT4QJVsBdMPIOSiPXGckMPljtGSUr3z L/tZOglDthKNTAGDV0mL5kREm0QzdUkjtj6W58ghYRxFgkSvRyuPG8P2Hc6TQ+nIgmWR ABnBWCR0oO9Vj0hhA9+SH33Sil/qrIOXtoHLF//iUSglMvHwq2tDxFbeYf4BOPAM25mg PnWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=xYeY76F4NjOk7ZbYIIluDCxTUsaWbccC1UsGOUo17r8=; b=tTNysh7l63z46ZpYd/h1OoMk14qAYW9XWvnRUVSFjQrTm9JncXoENCD6eOffU2JJYL TDlAZiWNCLd14vmh0SfXTLYJWM69myVjrHIS/v6XqJp7X6cABzGX/SqrUFcaYUnzXX+z uX1+LjumejjAUAK+61k+9/AdyRZMztB8dAs9KWN+f2Cz0cqV098/oIyhmFdoPEa7tVzo ZuTdTZCRqDROmr2uRyTFgGEXApR4WdNCWp6Gu2jOUUvIpG1S3MQrKJyqU9uX+wgyVeVd mRYqDxu0T8IuYGVM1iJ6eD/PmZYtA6vHKB5I1qG29R1by0Qx1qBsq5MwdVTLinCr2WUQ AAHA== X-Gm-Message-State: AOAM533wTbPJ0AAhUS+PQYHJpEkEb/5f4PDQ19UgMVOa+HHf46XtZ2iA mFIiHTgcBZ0VhdIx3NWwuGv4DJXNn8B8JQ== X-Google-Smtp-Source: ABdhPJza+gmjojqMQJHntvTGwZQOV5825WjbEthiVugGBx7WjYrnu3swyp67pm1XEVE23d7hXn/6gQ== X-Received: by 2002:a17:906:b0d4:: with SMTP id bk20mr24342618ejb.535.1627444833842; Tue, 27 Jul 2021 21:00:33 -0700 (PDT) Received: from pek-vx-bsp2.wrs.com (ec2-44-242-66-180.us-west-2.compute.amazonaws.com. [44.242.66.180]) by smtp.gmail.com with ESMTPSA id de19sm2037969edb.6.2021.07.27.21.00.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Jul 2021 21:00:33 -0700 (PDT) From: Bin Meng To: u-boot@lists.denx.de, Simon Glass Subject: [PATCH 1/2] x86: tsc: Rename X86_TSC_TIMER_EARLY_FREQ to X86_TSC_TIMER_FREQ Date: Wed, 28 Jul 2021 12:00:22 +0800 Message-Id: <20210728040023.338991-1-bmeng.cn@gmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.2 at phobos.denx.de X-Virus-Status: Clean Currently there are two places to specify the x86 TSC timer frequency with one in Kconfig used for early timer and the other one in device tree used when the frequency cannot be determined from hardware. This may potentially create an inconsistent config where the 2 values do not match. Let's use the one specified in Kconfig in the device tree as well. Signed-off-by: Bin Meng Reviewed-by: Simon Glass --- arch/x86/cpu/quark/Kconfig | 4 ++-- arch/x86/dts/galileo.dts | 2 +- drivers/timer/Kconfig | 8 ++++---- drivers/timer/tsc_timer.c | 5 +++-- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/arch/x86/cpu/quark/Kconfig b/arch/x86/cpu/quark/Kconfig index 430cce184d..61bb5792c8 100644 --- a/arch/x86/cpu/quark/Kconfig +++ b/arch/x86/cpu/quark/Kconfig @@ -130,8 +130,8 @@ config SYS_CAR_SIZE Space in bytes in eSRAM used as Cache-As-ARM (CAR). Note this size must not exceed eSRAM's total size. -config X86_TSC_TIMER_EARLY_FREQ +config X86_TSC_TIMER_FREQ int - default 400 + default 400000000 endif diff --git a/arch/x86/dts/galileo.dts b/arch/x86/dts/galileo.dts index 501047124e..b5ba1181dd 100644 --- a/arch/x86/dts/galileo.dts +++ b/arch/x86/dts/galileo.dts @@ -42,7 +42,7 @@ }; tsc-timer { - clock-frequency = <400000000>; + clock-frequency = ; }; mrc { diff --git a/drivers/timer/Kconfig b/drivers/timer/Kconfig index ee81dfa776..8913142654 100644 --- a/drivers/timer/Kconfig +++ b/drivers/timer/Kconfig @@ -124,12 +124,12 @@ config RENESAS_OSTM_TIMER Enables support for the Renesas OSTM Timer driver. This timer is present on Renesas RZ/A1 R7S72100 SoCs. -config X86_TSC_TIMER_EARLY_FREQ - int "x86 TSC timer frequency in MHz when used as the early timer" +config X86_TSC_TIMER_FREQ + int "x86 TSC timer frequency in Hz" depends on X86_TSC_TIMER - default 1000 + default 1000000000 help - Sets the estimated CPU frequency in MHz when TSC is used as the + Sets the estimated CPU frequency in Hz when TSC is used as the early timer and the frequency can neither be calibrated via some hardware ways, nor got from device tree at the time when device tree is not available yet. diff --git a/drivers/timer/tsc_timer.c b/drivers/timer/tsc_timer.c index 7d19a99622..adef50c374 100644 --- a/drivers/timer/tsc_timer.c +++ b/drivers/timer/tsc_timer.c @@ -425,12 +425,13 @@ static void tsc_timer_ensure_setup(bool early) goto done; if (early) - fast_calibrate = CONFIG_X86_TSC_TIMER_EARLY_FREQ; + gd->arch.clock_rate = CONFIG_X86_TSC_TIMER_FREQ; else return; done: - gd->arch.clock_rate = fast_calibrate * 1000000; + if (!gd->arch.clock_rate) + gd->arch.clock_rate = fast_calibrate * 1000000; } gd->arch.tsc_inited = true; }