]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
x86/tsc: Remove obsolete ART to TSC conversion functions
authorLakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>
Mon, 13 May 2024 10:38:09 +0000 (16:08 +0530)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 3 Jun 2024 09:18:51 +0000 (11:18 +0200)
convert_art_to_tsc() and convert_art_ns_to_tsc() interfaces are no
longer required. The conversion is now handled by the core code.

Signed-off-by: Lakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20240513103813.5666-9-lakshmi.sowjanya.d@intel.com
arch/x86/include/asm/tsc.h
arch/x86/kernel/tsc.c

index 405efb3e4996e7f1b8a65e2be4454c94eea07288..94408a784c8e7e16ee66c22e04e68261f2feb716 100644 (file)
@@ -28,9 +28,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);
index d1888db5db91f826fe1139caf9a977dd72377ef1..d4462fb2629969672d4ccf53ca4f600912183246 100644 (file)
@@ -1297,66 +1297,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:          The clocksource ID for validating comparability
- */
-
-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);
 /**