[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240103115602.19044-9-lakshmi.sowjanya.d@intel.com>
Date: Wed, 3 Jan 2024 17:25:59 +0530
From: lakshmi.sowjanya.d@...el.com
To: tglx@...utronix.de,
jstultz@...gle.com,
giometti@...eenne.com,
corbet@....net,
linux-kernel@...r.kernel.org
Cc: x86@...nel.org,
netdev@...r.kernel.org,
linux-doc@...r.kernel.org,
intel-wired-lan@...ts.osuosl.org,
andriy.shevchenko@...ux.intel.com,
eddie.dong@...el.com,
christopher.s.hall@...el.com,
jesse.brandeburg@...el.com,
davem@...emloft.net,
alexandre.torgue@...s.st.com,
joabreu@...opsys.com,
mcoquelin.stm32@...il.com,
perex@...ex.cz,
linux-sound@...r.kernel.org,
anthony.l.nguyen@...el.com,
pandith.n@...el.com,
mallikarjunappa.sangannavar@...el.com,
thejesh.reddy.t.r@...el.com,
lakshmi.sowjanya.d@...el.com
Subject: [RFC PATCH v3 08/11] x86/tsc: Remove art to tsc conversion functions which are obsolete
From: Lakshmi Sowjanya D <lakshmi.sowjanya.d@...el.com>
The convert_art_to_tsc() and convert_art_ns_to_tsc() interfaces are no
longer required. This conversion is internally done in
get_device_system_crosststamp() using convert_base_to_cs().
Signed-off-by: Lakshmi Sowjanya D <lakshmi.sowjanya.d@...el.com>
---
arch/x86/include/asm/tsc.h | 3 --
arch/x86/kernel/tsc.c | 61 --------------------------------------
2 files changed, 64 deletions(-)
diff --git a/arch/x86/include/asm/tsc.h b/arch/x86/include/asm/tsc.h
index 594fce0ca744..5e36495cc821 100644
--- a/arch/x86/include/asm/tsc.h
+++ b/arch/x86/include/asm/tsc.h
@@ -27,9 +27,6 @@ static inline cycles_t get_cycles(void)
}
#define get_cycles get_cycles
-extern struct system_counterval_t convert_art_to_tsc(u64 art);
-extern struct system_counterval_t convert_art_ns_to_tsc(u64 art_ns);
-
extern void tsc_early_init(void);
extern void tsc_init(void);
extern void mark_tsc_unstable(char *reason);
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
index 035ae5bec2e8..706ef369e33c 100644
--- a/arch/x86/kernel/tsc.c
+++ b/arch/x86/kernel/tsc.c
@@ -1298,67 +1298,6 @@ int unsynchronized_tsc(void)
return 0;
}
-/*
- * Convert ART to TSC given numerator/denominator found in detect_art()
- */
-struct system_counterval_t convert_art_to_tsc(u64 art)
-{
- u64 tmp, res, rem;
-
- rem = do_div(art, art_base_clk.denominator);
-
- res = art * art_base_clk.numerator;
- tmp = rem * art_base_clk.numerator;
-
- do_div(tmp, art_base_clk.denominator);
- res += tmp + art_base_clk.offset;
-
- return (struct system_counterval_t) {
- .cs_id = have_art ? CSID_X86_TSC : CSID_GENERIC,
- .cycles = res
- };
-}
-EXPORT_SYMBOL(convert_art_to_tsc);
-
-/**
- * convert_art_ns_to_tsc() - Convert ART in nanoseconds to TSC.
- * @art_ns: ART (Always Running Timer) in unit of nanoseconds
- *
- * PTM requires all timestamps to be in units of nanoseconds. When user
- * software requests a cross-timestamp, this function converts system timestamp
- * to TSC.
- *
- * This is valid when CPU feature flag X86_FEATURE_TSC_KNOWN_FREQ is set
- * indicating the tsc_khz is derived from CPUID[15H]. Drivers should check
- * that this flag is set before conversion to TSC is attempted.
- *
- * Return:
- * struct system_counterval_t - system counter value with the ID of the
- * corresponding clocksource
- * @cycles: System counter value
- * @cs_id: Clocksource ID corresponding to system counter value.
- * Used by timekeeping code to verify comparability of two
- * cycle values.
- */
-
-struct system_counterval_t convert_art_ns_to_tsc(u64 art_ns)
-{
- u64 tmp, res, rem;
-
- rem = do_div(art_ns, USEC_PER_SEC);
-
- res = art_ns * tsc_khz;
- tmp = rem * tsc_khz;
-
- do_div(tmp, USEC_PER_SEC);
- res += tmp;
- return (struct system_counterval_t) {
- .cs_id = have_art ? CSID_X86_TSC : CSID_GENERIC,
- .cycles = res
- };
-}
-EXPORT_SYMBOL(convert_art_ns_to_tsc);
-
static void tsc_refine_calibration_work(struct work_struct *work);
static DECLARE_DELAYED_WORK(tsc_irqwork, tsc_refine_calibration_work);
/**
--
2.35.3
Powered by blists - more mailing lists