/linux-4.4.14/arch/x86/kernel/ |
H A D | tsc_sync.c | 2 * check TSC synchronization. 6 * We check whether all boot CPUs have their TSC's synchronized, 7 * print a warning if not and turn off the TSC clock-source. 33 * of a critical section, to be able to prove TSC time-warps: 42 * TSC-warp measurement loop running on both CPUs. This is not called 43 * if there is no TSC. 59 * We take the global lock, measure TSC, save the check_tsc_warp() 60 * previous TSC that was measured (possibly on check_tsc_warp() 61 * another CPU) and update the previous TSC timestamp. check_tsc_warp() 73 * TSC readout is totally broken]): check_tsc_warp() 83 * we saw a time-warp of the TSC going backwards: check_tsc_warp() 99 * online, a timeout of 20msec will be used for the TSC-warp measurement 104 * Ideally we should be able to skip the TSC sync check on the other 106 * But as the TSC is per-logical CPU and can potentially be modified wrongly 107 * by the bios, TSC sync test for smaller duration should be able 125 * No need to check if we already know that the TSC is not check_tsc_sync_source() 126 * synchronized or if we have no TSC. check_tsc_sync_source() 134 "Skipped synchronization checks as TSC is reliable.\n"); check_tsc_sync_source() 159 pr_warning("TSC synchronization [CPU#%d -> CPU#%d]:\n", check_tsc_sync_source() 161 pr_warning("Measured %Ld cycles TSC warp between CPUs, " check_tsc_sync_source() 162 "turning off TSC clock.\n", max_warp); check_tsc_sync_source() 165 pr_debug("TSC synchronization [CPU#%d -> CPU#%d]: passed\n", check_tsc_sync_source() 190 /* Also aborts if there is no TSC. */ check_tsc_sync_target()
|
H A D | tsc.c | 26 unsigned int __read_mostly cpu_khz; /* TSC clocks / usec, not used here */ 33 * TSC can be unstable due to cpufreq or due to unsynced TSCs 38 we must start with the TSC soft disabled to prevent 59 * (assuming the TSC was that to begin with), because while we compute the 295 * Fall back to jiffies if there's no TSC available: native_sched_clock() 296 * ( But note that we still use it if the TSC is marked native_sched_clock() 308 * Generate a sched_clock if you already have a TSC value. 342 pr_warn("Kernel compiled with CONFIG_X86_TSC, cannot disable TSC completely\n"); notsc_setup() 348 * disable flag for tsc. Takes effect by clearing the TSC cpu flag 377 * Read TSC and the reference counters. Take care of SMI disturbance 398 * Calculate the TSC frequency from HPET reference 415 * Calculate the TSC frequency from PMTimer reference 444 * Try to calibrate the TSC against the Programmable 445 * Interrupt Timer and return the frequency of the TSC 518 * see the same MSB (and overhead like doing a single TSC 534 * use the TSC value at the transitions to calculate a pretty 535 * good value for the TSC frequencty. 560 * will be based on the error terms on the TSC values. pit_expect_msb() 629 * all TSC reads were stable wrt the PIT. quick_pit_calibrate() 639 pr_info("Fast TSC calibration failed\n"); quick_pit_calibrate() 649 * any odd delays anywhere, and the TSC reads are quick_pit_calibrate() 658 pr_info("Fast TSC calibration using PIT\n"); quick_pit_calibrate() 672 /* Calibrate TSC using MSR for Intel Atom SoCs */ native_calibrate_tsc() 693 * zero. In each wait loop iteration we read the TSC and check native_calibrate_tsc() 703 * We use separate TSC readouts and check inside of the native_calibrate_tsc() 730 /* Pick the lowest PIT TSC calibration so far */ native_calibrate_tsc() 785 /* We don't have an alternative source, disable TSC */ native_calibrate_tsc() 791 /* The alternative source failed as well, disable TSC */ native_calibrate_tsc() 860 * Even on processors with invariant TSC, TSC gets reset in some the 861 * ACPI system sleep states. And in some systems BIOS seem to reinit TSC to 899 /* Frequency scaling support. Adjust the TSC based timer when the cpu frequency 972 * We used to compare the TSC to the cycle_last value in the clocksource 975 * xtime/vsyscall_gtod lock and the other CPU reads a TSC value which 976 * is smaller than the cycle_last reference value due to a TSC which 1011 pr_info("Marking TSC unstable due to %s\n", reason); mark_tsc_unstable() 1033 /* Geode_LX - the OLPC CPU has a very reliable TSC */ check_system_tsc_reliable() 1043 * Make an educated guess if the TSC is trustworthy and synchronized 1063 * Exceptions must mark TSC as unstable: unsynchronized_tsc() 1082 * second to further refine the TSC freq value. Since this is 1098 /* Don't bother refining TSC on unstable systems */ tsc_refine_calibration_work() 1140 pr_info("Refined TSC clocksource calibration: %lu.%03lu MHz\n", tsc_refine_calibration_work() 1167 * exporting a reliable TSC. init_tsc_clocksource() 1199 mark_tsc_unstable("could not calculate TSC khz"); tsc_init() 1244 * If we have a constant TSC and are using the TSC for the delay loop,
|
H A D | tsc_msr.c | 2 * tsc_msr.c - MSR based TSC calibration on Intel Atom SoC platforms. 4 * TSC in Intel Atom SoC runs at a constant rate which can be figured 114 /* TSC frequency = maximum resolved freq * maximum resolved bus ratio */ try_msr_calibrate_tsc() 116 pr_info("TSC runs at %lu KHz\n", res); try_msr_calibrate_tsc() 125 pr_warn("Fast TSC calibration using MSR failed\n"); try_msr_calibrate_tsc()
|
H A D | time.c | 91 * Initialize TSC and delay the periodic timer init to
|
H A D | apb_timer.c | 269 * We don't know the TSC frequency yet, but waiting for apbt_clocksource_register() 270 * 200000 TSC cycles is safe: apbt_clocksource_register() 404 "APBT TSC calibration failed, not enough resolution\n"); apbt_quick_calibrate() 409 printk(KERN_INFO "TSC freq calculated by APB timer is %lu khz\n", khz); apbt_quick_calibrate()
|
H A D | process.c | 349 * way as C3 power states (local apic timer and TSC stop) 361 mark_tsc_unstable("TSC halt in AMD C1E"); amd_e400_idle()
|
H A D | hpet.c | 791 * We don't know the TSC frequency yet, but waiting for hpet_clocksource_register() 792 * 200000 TSC cycles is safe: hpet_clocksource_register()
|
H A D | smpboot.c | 225 * Check TSC synchronization with the BP: start_secondary() 1009 * Check TSC synchronization with the AP (keep irqs disabled native_cpu_up()
|
/linux-4.4.14/tools/perf/arch/x86/tests/ |
H A D | arch-tests.c | 11 .desc = "Test converting perf time to TSC",
|
H A D | perf-time-to-tsc.c | 31 * test__perf_time_to_tsc - test converting perf time to TSC. 34 * to and from TSC is consistent with the order of events. If the test passes 35 * %0 is returned, otherwise %-1 is returned. If TSC conversion is not
|
/linux-4.4.14/tools/power/cpupower/utils/idle_monitor/ |
H A D | mperf_monitor.c | 64 * 1) calculated after measurements if we know TSC ticks at mperf/P0 frequency 85 dprint("Reading TSC MSR failed, returning %llu\n", *tsc); mperf_get_tsc() 135 dprint("%s: TSC Ref - mperf_diff: %llu, tsc_diff: %llu\n", mperf_get_count_percent() 169 /* Calculate max_freq from TSC count */ mperf_get_count_freq() 178 (max_freq_mode == MAX_FREQ_TSC_REF) ? "TSC calculated" : "sysfs read"); mperf_get_count_freq() 198 dprint("TSC diff: %llu\n", dbg - tsc_at_measure_start); mperf_start() 214 dprint("TSC diff: %llu\n", dbg - tsc_at_measure_end); mperf_stop() 223 * we use TSC counter if it reliably ticks at P0/mperf frequency. 227 * on older Intel HW without invariant TSC feature. 228 * Or on AMD machines where TSC does not tick at P0 (do not exist yet, but 244 /* MSR_AMD_HWCR tells us whether TSC runs at P0/mperf init_maxfreq_mode() 257 * not explicitly provide access to it and assume TSC works init_maxfreq_mode() 260 dprint("TSC read 0x%x failed - assume TSC working\n", init_maxfreq_mode() 270 * rate than TSC init_maxfreq_mode() 336 .overflow_s = 922000000 /* 922337203 seconds TSC overflow
|
H A D | nhm_idle.c | 28 enum intel_nhm_id { C3 = 0, C6, PC3, PC6, TSC = 0xFFFF }; enumerator in enum:intel_nhm_id 90 case TSC: nhm_get_count() 132 nhm_get_count(TSC, &tsc_at_measure_start, 0); nhm_start() 140 nhm_get_count(TSC, &dbg, 0); nhm_start() 141 dprint("TSC diff: %llu\n", dbg - tsc_at_measure_start); nhm_start() 151 nhm_get_count(TSC, &tsc_at_measure_end, 0); nhm_stop() 159 nhm_get_count(TSC, &dbg, 0); nhm_stop() 160 dprint("TSC diff: %llu\n", dbg - tsc_at_measure_end); nhm_stop() 213 .overflow_s = 922000000 /* 922337203 seconds TSC overflow
|
H A D | hsw_ext_idle.c | 27 TSC = 0xFFFF }; enumerator in enum:intel_hsw_ext_id 79 case TSC: hsw_ext_get_count() 126 hsw_ext_get_count(TSC, &tsc_at_measure_start, 0); hsw_ext_start() 135 hsw_ext_get_count(TSC, &tsc_at_measure_end, 0); hsw_ext_stop() 193 .overflow_s = 922000000 /* 922337203 seconds TSC overflow
|
H A D | snb_idle.c | 25 enum intel_snb_id { C7 = 0, PC2, PC7, SNB_CSTATE_COUNT, TSC = 0xFFFF }; enumerator in enum:intel_snb_id 76 case TSC: snb_get_count() 123 snb_get_count(TSC, &tsc_at_measure_start, 0); snb_start() 132 snb_get_count(TSC, &tsc_at_measure_end, 0); snb_stop() 197 .overflow_s = 922000000 /* 922337203 seconds TSC overflow
|
/linux-4.4.14/arch/x86/include/asm/ |
H A D | tsc.h | 2 * x86 TSC related functions 53 /* MSR based TSC calibration for Intel Atom SoC platforms */
|
H A D | mach_timer.h | 5 /* ------ Calibrate the TSC ------- 6 * Return 2^32 * (1 / (TSC clocks per usec)) for do_fast_gettimeoffset().
|
H A D | module.h | 13 #define MODULE_PROC_FAMILY "586TSC "
|
H A D | stackprotector.h | 69 * We both use the random pool and the current TSC as a source boot_init_stack_canary() 70 * of randomness. The TSC only matters for very early init, boot_init_stack_canary()
|
H A D | x86_init.h | 85 * @tsc_pre_init: platform function called before TSC init 148 * @calibrate_tsc: calibrate TSC
|
H A D | cpufeature.h | 86 #define X86_FEATURE_CONSTANT_TSC ( 3*32+ 8) /* TSC ticks at a constant rate */ 101 #define X86_FEATURE_TSC_RELIABLE ( 3*32+23) /* TSC is known to be reliable */ 102 #define X86_FEATURE_NONSTOP_TSC ( 3*32+24) /* TSC does not stop in C states */ 108 #define X86_FEATURE_NONSTOP_TSC_S3 ( 3*32+30) /* TSC doesn't stop in S3 state */ 212 #define X86_FEATURE_TSCRATEMSR ( 8*32+ 9) /* "tsc_scale" AMD TSC scaling support */ 224 #define X86_FEATURE_TSC_ADJUST ( 9*32+ 1) /* TSC adjustment MSR 0x3b */
|
H A D | msr.h | 112 * rdtsc() - returns the current TSC without ordering constraints 130 * rdtsc_ordered() - read the current TSC in program order 135 * across multiple CPUs as long as the TSC is synced.
|
H A D | mwait.h | 53 * frequency is the same as the TSC frequency.
|
H A D | thread_info.h | 100 #define TIF_NOTSC 16 /* TSC is not accessible in userland */
|
H A D | kvm_host.h | 979 /* number of bits of the fractional part of the TSC scaling ratio */ 981 /* maximum allowed value of TSC scaling ratio */
|
H A D | msr-index.h | 15 #define MSR_TSC_AUX 0xc0000103 /* Auxiliary TSC */
|
/linux-4.4.14/arch/x86/kernel/cpu/ |
H A D | vmware.c | 65 printk(KERN_INFO "TSC freq read from hypervisor : %lu.%03lu MHz\n", vmware_get_tsc_khz() 88 "Failed to get TSC freq from the hypervisor\n"); vmware_platform_setup() 114 * VMware hypervisor takes care of exporting a reliable TSC to the guest. 115 * Still, due to timing difference when running on virtual cpus, the TSC can 116 * be marked as unstable in some cases. For example, the TSC sync check at 123 * reliable virtual TSC that is suitable for timekeeping.
|
H A D | bugs.c | 32 * - In order to run on anything without a TSC, we need to be check_bugs()
|
H A D | transmeta.c | 88 /* All Transmeta CPUs have a constant TSC */ init_transmeta()
|
H A D | centaur.c | 133 printk(KERN_NOTICE "Disabling bugged TSC.\n"); init_centaur()
|
H A D | amd.c | 504 printk(KERN_WARNING FW_BUG "TSC doesn't count " bsp_init_amd() 533 * c->x86_power is 8000_0007 edx. Bit 8 is TSC runs at constant rate early_init_amd()
|
H A D | intel.c | 82 * c->x86_power is 8000_0007 edx. Bit 8 is TSC runs at constant rate early_init_intel() 95 /* Penwell and Cloverview have the TSC which doesn't sleep on S3 */ early_init_intel()
|
H A D | perf_event_intel_ds.c | 236 /* Same as HSW, plus TSC */
|
/linux-4.4.14/drivers/input/touchscreen/ |
H A D | tsc40.c | 2 * TSC-40 serial touchscreen driver. It should be compatible with 3 * TSC-10 and 25. 97 input_dev->name = "TSC-10/25/40 Serial TouchScreen"; tsc_connect() 155 #define DRIVER_DESC "TSC-10/25/40 serial touchscreen driver"
|
H A D | imx6ul_tsc.c | 53 /* TSC registers */ 64 /* TSC configuration registers field define */ 94 * TSC module need ADC to get the measure value. So 95 * before config TSC, we should initialize ADC module. 136 /* TSC need the ADC work in hardware trigger */ imx6ul_adc_init() 145 * This is a TSC workaround. Currently TSC misconnect two 170 * TSC setting, confige the pre-charge time and measure delay time. 215 /* TSC controller enters to idle status */ imx6ul_tsc_disable()
|
H A D | lpc32xx_ts.c | 153 /* Set the TSC FIFO depth to 4 samples @ 10-bits per sample (max) */ lpc32xx_setup_tsc() 240 dev_err(&pdev->dev, "TSC registers are not free\n"); lpc32xx_ts_probe() 341 * avoid calling the TSC stop and start functions as the TSC lpc32xx_ts_suspend() 406 MODULE_DESCRIPTION("LPC32XX TSC Driver");
|
H A D | tps6507x-ts.c | 72 dev_err(tsc->dev, "TSC mode read failed\n"); tps6507x_adc_conversion() 110 dev_dbg(tsc->dev, "TSC channel %d = 0x%X\n", tsc_mode, *value); tps6507x_adc_conversion()
|
H A D | usbtouchscreen.c | 11 * - DMC TSC-10/25 43 * - DMC TSC 10/25 are from Holger Schurig, with ideas from an unmerged 586 * DMC TSC-10/25 Part 630 /* TSC-25 data sheet specifies a delay after the RESET command */ dmc_tsc10_init()
|
H A D | stmpe-ts.c | 141 * the manufacture. As a workaround we disable the TSC while we are stmpe_ts_handler()
|
H A D | ti_am335x_tsc.c | 78 * Get the order in which TSC wires are attached titsc_config_wires()
|
/linux-4.4.14/arch/mn10300/kernel/ |
H A D | csrc-mn10300.c | 22 .name = "TSC",
|
H A D | time.c | 57 /* scale the 64-bit TSC value to a nanosecond value via a 96-bit sched_clock()
|
H A D | rtc.c | 118 * calibrate the TSC clock against the RTC
|
/linux-4.4.14/arch/x86/platform/intel-mid/ |
H A D | mrfl.c | 25 /* Compute TSC:Ratio * FSB */ tangier_calibrate_tsc() 69 /* TSC = FSB Freq * Resolved HFM Ratio */ tangier_calibrate_tsc()
|
/linux-4.4.14/arch/x86/lib/ |
H A D | delay.c | 50 /* TSC based delay: */ delay_tsc() 71 * since TSC's are per-cpu we need to calculate delay_tsc() 89 * counts with TSC frequency. The input value is the loop of the
|
/linux-4.4.14/tools/power/cpupower/debug/kernel/ |
H A D | cpufreq-test_tsc.c | 2 * test module to check whether the TSC-based delay routine continues 19 * TSC-based delay routine on the Linux kernel does not correctly 109 MODULE_DESCRIPTION("Verify the TSC cpufreq notifier working correctly -- needs ACPI-enabled system");
|
/linux-4.4.14/drivers/clocksource/ |
H A D | scx200_hrt.c | 6 * time stamp counter (TSC), which loses time unless 'idle=poll' is 8 * will detect and de-rate the bad TSC, allowing this timer to take
|
/linux-4.4.14/arch/x86/include/uapi/asm/ |
H A D | hyperv.h | 30 /* Partition reference TSC MSR is available */ 33 /* A partition's reference time stamp counter (TSC) page */ 39 * well as the TSC frequency. 45 /* TSC frequency MSR (HV_X64_MSR_TSC_FREQUENCY) is available */ 165 /* MSR used to retrieve the TSC frequency */
|
/linux-4.4.14/include/trace/events/ |
H A D | mce.h | 53 TP_printk("CPU: %d, MCGc/s: %llx/%llx, MC%d: %016Lx, ADDR/MISC: %016Lx/%016Lx, RIP: %02x:<%016Lx>, TSC: %llx, PROCESSOR: %u:%x, TIME: %llu, SOCKET: %u, APIC: %x",
|
/linux-4.4.14/Documentation/prctl/ |
H A D | disable-tsc-ctxt-sw-stress-test.c | 27 # define PR_TSC_SIGSEGV 2 /* throw a SIGSEGV instead of reading the TSC */
|
H A D | disable-tsc-on-off-stress-test.c | 27 # define PR_TSC_SIGSEGV 2 /* throw a SIGSEGV instead of reading the TSC */
|
H A D | disable-tsc-test.c | 22 # define PR_TSC_SIGSEGV 2 /* throw a SIGSEGV instead of reading the TSC */
|
/linux-4.4.14/tools/perf/util/intel-pt-decoder/ |
H A D | intel-pt-decoder.c | 220 * Allow for timestamps appearing to backwards because a TSC intel_pt_decoder_new() 723 intel_pt_log("Timestamp: calculated %g TSC ticks per cycle too big (c.f. CBR-based value %g), pos " x64_fmt "\n", intel_pt_calc_cyc_cb() 732 intel_pt_log("Timestamp: calculated %g TSC ticks per cycle c.f. CBR-based value %g, pos " x64_fmt "\n", intel_pt_calc_cyc_cb() 735 intel_pt_log("Timestamp: calculated %g TSC ticks per cycle c.f. unknown CBR-based value, pos " x64_fmt "\n", intel_pt_calc_cyc_cb() 2160 * intel_pt_next_tsc - find and return next TSC. 2163 * @tsc: TSC value returned 2165 * Find a TSC packet in @buf and return the TSC value. This function assumes 2166 * that @buf starts at a PSB and that PSB+ will contain TSC and so stops if a 2169 * Return: %true if TSC is found, false otherwise. 2194 * @tsc1: first TSC to compare 2195 * @tsc2: second TSC to compare 2197 * This function compares 7-byte TSC values allowing for the possibility that 2198 * TSC wrapped around. Generally it is not possible to know if TSC has wrapped 2227 * using TSC. 2233 * If the trace contains TSC we can look at the last TSC of @buf_a and the 2234 * first TSC of @buf_b in order to determine if the buffers overlap, and then 2235 * walk forward in @buf_b until a later TSC is found. A precondition is that 2263 return buf_b; /* No TSC in buf_a => assume no overlap */ intel_pt_find_overlap_tsc() 2267 /* Ignore PSB+ with no TSC */ intel_pt_find_overlap_tsc() 2283 * @have_tsc: can use TSC packets to detect overlap
|
H A D | intel-pt-pkt-decoder.c | 50 [INTEL_PT_TSC] = "TSC",
|
/linux-4.4.14/drivers/acpi/ |
H A D | acpi_pad.c | 74 * AMD Fam10h TSC will tick in all power_saving_mwait_init() 81 /* TSC could halt in idle */ power_saving_mwait_init() 164 /* TSC could halt in idle, so notify users */ power_saving_thread() 165 mark_tsc_unstable("TSC halts in idle"); power_saving_thread()
|
H A D | processor_idle.c | 240 * AMD Fam10h TSC will tick in all tsc_check_state() 248 /* TSC could halt in idle, so notify users */ tsc_check_state() 250 mark_tsc_unstable("TSC halts in idle"); tsc_check_state()
|
/linux-4.4.14/include/linux/ |
H A D | lguest.h | 60 /* KHz for the TSC clock. */
|
/linux-4.4.14/drivers/mfd/ |
H A D | ti_am335x_tscadc.c | 229 dev_err(&pdev->dev, "failed to get TSC fck\n"); ti_tscadc_probe() 255 /* Enable the TSC module enable bit */ ti_tscadc_probe() 263 /* TSC Cell */ ti_tscadc_probe()
|
H A D | max8925-core.c | 491 /* TSC IRQ should be serviced in max8925_tsc_irq() */ max8925_irq() 520 /* non TSC IRQ should be serviced in max8925_irq() */ max8925_tsc_irq() 678 /* mask all interrupts except for TSC */ max8925_irq_init() 712 /* mask TSC interrupt */ max8925_irq_init() 716 dev_warn(chip->dev, "No interrupt support on TSC IRQ\n"); max8925_irq_init() 723 dev_err(chip->dev, "Failed to request TSC IRQ: %d\n", ret); max8925_irq_init()
|
/linux-4.4.14/drivers/staging/rtl8192e/ |
H A D | rtllib_crypt_tkip.c | 228 /* Initialize the 80-bit TTAK from TSC (IV32) and TA[0..5] */ tkip_mixing_phase1() 254 /* Step 1 - make copy of TTAK and bring in TSC */ tkip_mixing_phase2() 433 "Replay detected: STA= %pM previous TSC %08x%04x received TSC %08x%04x\n", rtllib_tkip_decrypt() 591 /* TODO: needed parameters: count, keyid, key type, TSC */ rtllib_michael_mic_failure() 642 /* Update TSC counters for RX now that the packet verification has rtllib_michael_mic_verify() 674 tkey->tx_iv16 = 1; /* TSC is initialized to 1 */ rtllib_tkip_set_key()
|
/linux-4.4.14/drivers/staging/rtl8192u/ieee80211/ |
H A D | ieee80211_crypt_tkip.c | 238 /* Initialize the 80-bit TTAK from TSC (IV32) and TA[0..5] */ tkip_mixing_phase1() 265 /* Step 1 - make copy of TTAK and bring in TSC */ tkip_mixing_phase2() 436 " previous TSC %08x%04x received TSC " ieee80211_tkip_decrypt() 596 /* TODO: needed parameters: count, keyid, key type, TSC */ ieee80211_michael_mic_failure() 647 * Update TSC counters for RX now that the packet verification has ieee80211_michael_mic_verify() 679 tkey->tx_iv16 = 1; /* TSC is initialized to 1 */ ieee80211_tkip_set_key()
|
/linux-4.4.14/net/wireless/ |
H A D | lib80211_crypt_tkip.c | 246 /* Initialize the 80-bit TTAK from TSC (IV32) and TA[0..5] */ tkip_mixing_phase1() 270 /* Step 1 - make copy of TTAK and bring in TSC */ tkip_mixing_phase2() 452 net_dbg_ratelimited("TKIP: replay detected: STA=%pM previous TSC %08x%04x received TSC %08x%04x\n", lib80211_tkip_decrypt() 594 /* TODO: needed parameters: count, keyid, key type, TSC */ lib80211_michael_mic_failure() 634 /* Update TSC counters for RX now that the packet verification has lib80211_michael_mic_verify() 663 tkey->tx_iv16 = 1; /* TSC is initialized to 1 */ lib80211_tkip_set_key()
|
/linux-4.4.14/drivers/thermal/ |
H A D | rcar_thermal.c | 2 * R-Car THS/TSC thermal sensor driver 154 * TSC decides a value of CPTAP automatically, rcar_thermal_update_temp() 504 MODULE_DESCRIPTION("R-Car THS/TSC thermal sensor driver");
|
/linux-4.4.14/net/mac80211/ |
H A D | key.h | 70 /* last used TSC */
|
H A D | tkip.c | 78 * P1K := Phase1(TA, TK, TSC) 81 * TSC = TKIP sequence counter (48 bits, only 32 msb bits used)
|
/linux-4.4.14/tools/power/cpupower/utils/helpers/ |
H A D | cpuid.c | 117 /* Invariant TSC */ get_cpu_info()
|
/linux-4.4.14/arch/x86/kvm/ |
H A D | x86.c | 1260 /* Guest TSC same frequency as host TSC? */ set_tsc_khz() 1266 /* TSC scaling supported? */ set_tsc_khz() 1273 WARN(1, "user requested TSC rate below hardware speed\n"); set_tsc_khz() 1278 /* TSC scaling required - calculate ratio */ set_tsc_khz() 1283 WARN_ONCE(1, "Invalid TSC scaling ratio - virtual-tsc-khz=%u\n", set_tsc_khz() 1297 /* tsc_khz can be zero if TSC calibration fails */ kvm_set_tsc_khz() 1304 /* Compute a scale to convert nanoseconds in TSC cycles */ kvm_set_tsc_khz() 1311 * Compute the variation in TSC rate which is acceptable kvm_set_tsc_khz() 1319 pr_debug("kvm: requested TSC rate %u falls outside tolerance [%u,%u]\n", this_tsc_khz, thresh_lo, thresh_hi); kvm_set_tsc_khz() 1348 * In order to enable masterclock, the host clocksource must be TSC kvm_track_tsc_matching() 1458 usdiff = USEC_PER_SEC; /* disable TSC match window below */ kvm_write_tsc() 1461 * Special case: TSC write with a small delta (1 second) of virtual kvm_write_tsc() 1465 * For a reliable TSC, we can match TSC offsets, and for an unstable kvm_write_tsc() 1466 * TSC, we add elapsed time in this computation. We could let the kvm_write_tsc() 1485 * We split periods of matched TSC writes into generations. kvm_write_tsc() 1615 * Assuming a stable TSC across physical CPUS, and a stable TSC 1642 * might be smaller then the difference between corresponding TSC reads, 1665 * If the host uses TSC clock, then passthrough TSC as stable pvclock_update_vm_gtod_copy() 1723 * If the host uses TSC clock, then passthrough TSC as stable kvm_guest_time_update() 1750 * We may have to catch up the TSC to match elapsed wall clock kvm_guest_time_update() 1752 * 1) CPU could have been running below the maximum TSC rate kvm_guest_time_update() 1753 * 2) Broken TSC compensation resets the base at each VCPU kvm_guest_time_update() 1754 * entry to avoid unknown leaps of TSC even when running kvm_guest_time_update() 1821 /* If the host uses TSC clocksource, then it is stable */ kvm_guest_time_update() 2357 /* TSC increment by tick */ kvm_get_msr_common() 2708 /* Apply any externally detected TSC adjustments (due to suspend) */ kvm_arch_vcpu_load() 2719 mark_tsc_unstable("KVM discovered backwards TSC"); kvm_arch_vcpu_load() 2727 * On a host with synchronized TSC, there is no need to update kvm_arch_vcpu_load() 5526 * Changing the TSC frequency at arbitrary points in time kvmclock_cpufreq_notifier() 5528 * the TSC for each VCPU. We must flag these local variables kvmclock_cpufreq_notifier() 5548 * correct TSC value must be set before the request. However, kvmclock_cpufreq_notifier() 5753 * use, TSC clocksource pvclock_gtod_notify() 7269 "kvm: SMP vm created on host with unstable TSC; " kvm_arch_vcpu_create() 7270 "guest TSC will not be reliable\n"); kvm_arch_vcpu_create() 7407 * platforms that reset TSC during suspend or hibernate actions, but 7416 * So we simply find the maximum observed TSC above, then record the 7417 * adjustment to TSC in each VCPU. When the VCPU later gets loaded, 7422 * reset last_host_tsc, so VCPUs will not have the TSC adjusted and may 7426 * much faster than a first, causing the observed TSC here to be 7430 * N.B. - this code below runs only on platforms with reliable TSC, 7439 * will be compensated by the logic in vcpu_load, which sets the TSC to 7454 * We have to disable TSC offset matching.. if you were
|
H A D | cpuid.c | 304 F(TSC) | F(MSR) | F(PAE) | F(MCE) | __do_cpuid_ent() 314 F(TSC) | F(MSR) | F(PAE) | F(MCE) | __do_cpuid_ent() 568 /* invariant TSC is CPUID.80000007H:EDX[8] */ __do_cpuid_ent()
|
H A D | vmx.c | 135 * Time is measured based on a counter that runs at the same rate as the TSC, 2087 /* Setup TSC multiplier */ vmx_vcpu_load() 2396 * -- Intel TSC Scaling for Virtualization White Paper, sec 1.3 2433 * We're here if L1 chose not to trap WRMSR to TSC. According vmx_write_tsc_offset() 2434 * to the spec, this should set L1's TSC; The offset that L1 vmx_write_tsc_offset() 2436 * to the newly set TSC to get L2's TSC. vmx_write_tsc_offset() 8044 pr_err("TSC Offset = 0x%016lx\n", vmcs_readl(TSC_OFFSET)); dump_vmcs() 8046 pr_err("TSC Multiplier = 0x%016lx\n", dump_vmcs() 10468 /* Update TSC_OFFSET if TSC was changed while L2 ran */ nested_vmx_vmexit()
|
H A D | lapic.c | 1256 /* __delay is delay_tsc whenever the hardware has TSC, thus always. */ wait_lapic_expire()
|
H A D | svm.c | 217 VMCB_INTERCEPTS, /* Intercept vectors, TSC offset,
|
/linux-4.4.14/drivers/char/ |
H A D | hangcheck-timer.c | 26 * The hangcheck-timer driver uses the TSC to catch delays that
|
/linux-4.4.14/include/linux/mfd/ |
H A D | max8925.h | 232 * tsc_irq: stores IRQ number of MAX8925 TSC
|
/linux-4.4.14/tools/perf/util/ |
H A D | intel-pt.c | 1364 /* Use estimated TSC upon return to user space */ intel_pt_run_decoder() 1368 intel_pt_log("TSC %"PRIx64" est. TSC %"PRIx64"\n", intel_pt_run_decoder() 1371 /* Use estimated TSC in unknown switch state */ intel_pt_run_decoder() 1376 intel_pt_log("TSC %"PRIx64" est. TSC %"PRIx64"\n", intel_pt_run_decoder() 1988 [INTEL_PT_TSC_BIT] = " TSC bit %#"PRIx64"\n", 1994 [INTEL_PT_TSC_CTC_N] = " TSC:CTC numerator %"PRIu64"\n", 1995 [INTEL_PT_TSC_CTC_D] = " TSC:CTC denominator %"PRIu64"\n", 2114 /* Maximum non-turbo ratio is TSC freq / 100 MHz */ intel_pt_process_auxtrace_info() 2119 intel_pt_log("TSC frequency %"PRIu64"\n", tsc_freq); intel_pt_process_auxtrace_info()
|
/linux-4.4.14/kernel/sched/ |
H A D | clock.c | 52 * that is otherwise invisible (TSC gets stopped). 193 * - use the GTOD tick value to create a window to filter crazy TSC values
|
H A D | fair.c | 2571 * unfortunately does during sched clock init when we swap over to TSC. __update_load_avg()
|
/linux-4.4.14/drivers/net/wireless/iwlwifi/mvm/ |
H A D | fw-api-sta.h | 235 * @tkip_rx_tsc_byte2: TSC[2] for key mix ph1 detection 324 * @tkip_rx_tsc_byte2: TSC[2] for key mix ph1 detection
|
H A D | d3.c | 317 * firmware only supports TSC/RSC for a single key, iwl_mvm_wowlan_program_keys()
|
/linux-4.4.14/arch/x86/xen/ |
H A D | time.c | 146 /* Get the TSC speed from Xen */ xen_tsc_khz() 464 /* As Dom0 is never moved, no penalty on using TSC there */ xen_time_init()
|
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ |
H A D | nv50.c | 70 { 0x00000002, "TSC" },
|
/linux-4.4.14/drivers/cpufreq/ |
H A D | longrun.c | 203 /* set the upper border to the value determined during TSC init */ longrun_determine_freqs()
|
H A D | p4-clockmod.c | 150 /* on P-4s, the TSC runs with constant frequency independent whether cpufreq_p4_get_frequency()
|
/linux-4.4.14/init/ |
H A D | calibrate.c | 99 "timer_rate as we had a TSC wrap around" calibrate_delay_direct()
|
/linux-4.4.14/include/uapi/linux/ |
H A D | prctl.h | 77 # define PR_TSC_SIGSEGV 2 /* throw a SIGSEGV instead of reading the TSC */
|
H A D | perf_event.h | 502 * If cap_usr_time_zero, the hardware clock (e.g. TSC) can be calculated
|
H A D | nl80211.h | 444 * %NL80211_ATTR_KEY_SEQ to indicate the TSC value of the frame; this
|
/linux-4.4.14/arch/arm64/include/asm/ |
H A D | kvm_arm.h | 66 * TSC: Trap SMC
|
/linux-4.4.14/arch/arm/include/asm/ |
H A D | kvm_arm.h | 57 * TSC: Trap SMC
|
/linux-4.4.14/tools/power/x86/turbostat/ |
H A D | turbostat.c | 400 outp += sprintf(outp, "TSC: %016llX\n", t->tsc); dump_counters() 733 /* check for TSC < 1 Mcycles over interval */ delta_thread() 735 errx(-3, "Insanely slow TSC rate, TSC stops in idle?\n" delta_thread() 773 * to exceed TSC's all cycles: show c1 = 0% in that case. delta_thread() 2708 * This is needed to check for invariant TSC. process_cpuid() 2717 * Non-Stop TSC is advertised by CPUID.EAX=0x80000007: EDX.bit8 process_cpuid() 2747 * CPUID 15H TSC/Crystal ratio, possibly Crystal Hz process_cpuid() 2771 fprintf(stderr, "TSC: %lld MHz (%d Hz * %d / %d / 1000000)\n", process_cpuid()
|
/linux-4.4.14/drivers/input/joystick/ |
H A D | analog.c | 148 #define TIME_NAME (cpu_has_tsc?"TSC":"PIT") get_time_pit() 165 #define TIME_NAME "TSC"
|
/linux-4.4.14/drivers/lguest/ |
H A D | hypercalls.c | 299 * initial boot and as a rough time source if the TSC isn't available.
|
/linux-4.4.14/arch/arm/plat-samsung/ |
H A D | adc.c | 123 adc_dbg(adc, "CON=%08x, TSC=%08x, DLY=%08x\n", s3c_adc_dbgshow()
|
/linux-4.4.14/tools/perf/arch/x86/util/ |
H A D | intel-bts.c | 97 ui__warning("Intel BTS: TSC not available\n"); intel_bts_info_fill()
|
H A D | intel-pt.c | 331 ui__warning("Intel Processor Trace: TSC not available\n"); intel_pt_info_fill()
|
/linux-4.4.14/arch/x86/kernel/apic/ |
H A D | apic.c | 340 * See Intel SDM: TSC-Deadline Mode chapter. In xAPIC mode, __setup_APIC_LVTT() 346 printk_once(KERN_DEBUG "TSC deadline timer enabled\n"); __setup_APIC_LVTT() 668 apic_printk(APIC_VERBOSE, "TSC delta adjusted to " calibrate_by_pmtimer() 2447 * apic_is_clustered_box() -- Check if we can expect good TSC 2450 * Clustered boxes may have unsynced TSC problems if they are
|
/linux-4.4.14/arch/x86/lguest/ |
H A D | boot.c | 442 * DX: SSE, SSE2, FXSR, MMX, CMOV, CMPXCHG8B, TSC, FPU and PAE. lguest_cpuid() 919 * The TSC is an Intel thing called the Time Stamp Counter. The Host tells us 922 * TSC clock will give up and not register itself. 930 * If we can't use the TSC, the kernel falls back to our lower-priority 963 /* This is the fallback clocksource: lower priority than the TSC clocksource. */
|
/linux-4.4.14/drivers/iio/adc/ |
H A D | ti_am335x_adc.c | 158 * FIFO0 interrupts are used by TSC. Handle FIFO1 IRQs here only tiadc_irq_h()
|
/linux-4.4.14/drivers/hv/ |
H A D | hv.c | 293 * Cleanup the TSC page based CS. hv_cleanup()
|
/linux-4.4.14/drivers/net/wireless/ |
H A D | adm8211.h | 63 __le32 TSC; /* 0xC0 CSR32 */ member in struct:adm8211_csr
|
/linux-4.4.14/drivers/lguest/x86/ |
H A D | core.c | 674 * cpu frequency. Some devious chip manufacturers decided that TSC lguest_arch_init_hypercalls() 678 * We also insist that the TSC be stable: the kernel detects unreliable lguest_arch_init_hypercalls()
|
/linux-4.4.14/drivers/net/wireless/ath/ath6kl/ |
H A D | wmi.h | 771 * Bit 0 - Initialise TSC - default is Initialize 776 /* default initialise the TSC & RSC */
|
H A D | main.c | 688 memset(tsc, 0, sizeof(tsc)); /* FIX: get correct TSC */ ath6kl_tkip_micerr_event()
|
/linux-4.4.14/drivers/idle/ |
H A D | intel_idle.c | 1132 mark_tsc_unstable("TSC halts in idle" intel_idle_cpuidle_driver_init()
|
/linux-4.4.14/include/xen/interface/ |
H A D | xen.h | 492 uint64_t tsc_timestamp; /* TSC at last update of time vals. */
|
/linux-4.4.14/drivers/clk/sirf/ |
H A D | clk-atlas7.c | 1311 { "TSC", 0x04A0, 3, 0x032C, 3, &leaf1_gate_lock },
|
/linux-4.4.14/drivers/edac/ |
H A D | sb_edac.c | 2279 sbridge_mc_printk(mci, KERN_DEBUG, "TSC %llx ", mce->tsc); sbridge_mce_check_error()
|
/linux-4.4.14/arch/x86/kernel/cpu/mcheck/ |
H A D | mce.c | 245 pr_emerg(HW_ERR "TSC %llx ", m->tsc); print_mce()
|
/linux-4.4.14/drivers/net/wireless/iwlegacy/ |
H A D | commands.h | 901 u8 tkip_rx_tsc_byte2; /* TSC[2] for key mix ph1 detection */
|
/linux-4.4.14/drivers/net/wireless/iwlwifi/dvm/ |
H A D | commands.h | 844 u8 tkip_rx_tsc_byte2; /* TSC[2] for key mix ph1 detection */
|
/linux-4.4.14/kernel/trace/ |
H A D | trace.c | 3714 " x86-tsc: TSC cycle counter\n"
|
/linux-4.4.14/include/net/ |
H A D | cfg80211.h | 4292 * @tsc: The TSC value of the frame that generated the MIC failure (6 octets)
|