/Linux-v5.10/drivers/clocksource/ |
D | timer-davinci.c | 68 to_davinci_clockevent(struct clock_event_device *clockevent) in to_davinci_clockevent() argument 70 return container_of(clockevent, struct davinci_clockevent, dev); in to_davinci_clockevent() 74 davinci_clockevent_read(struct davinci_clockevent *clockevent, in davinci_clockevent_read() argument 77 return readl_relaxed(clockevent->base + reg); in davinci_clockevent_read() 80 static void davinci_clockevent_write(struct davinci_clockevent *clockevent, in davinci_clockevent_write() argument 83 writel_relaxed(val, clockevent->base + reg); in davinci_clockevent_write() 118 struct davinci_clockevent *clockevent; in davinci_clockevent_shutdown() local 120 clockevent = to_davinci_clockevent(dev); in davinci_clockevent_shutdown() 122 davinci_tim12_shutdown(clockevent->base); in davinci_clockevent_shutdown() 129 struct davinci_clockevent *clockevent = to_davinci_clockevent(dev); in davinci_clockevent_set_oneshot() local [all …]
|
D | timer-ti-dm-systimer.c | 30 static u32 clockevent; variable 222 * clockevent or clocksource depending if the counter_32k is available on the 230 * clock as the clocksource, and any available dmtimer as clockevent. 276 clockevent = pa; in dmtimer_systimer_assign_alwon() 280 clockevent = DMTIMER_INST_DONT_CARE; in dmtimer_systimer_assign_alwon() 298 if (pa == clocksource || pa == clockevent) { in dmtimer_systimer_find_first_available() 311 /* Selects the best clocksource and clockevent to use */ 317 if (clockevent == DMTIMER_INST_DONT_CARE) in dmtimer_systimer_select_best() 318 clockevent = dmtimer_systimer_find_first_available(); in dmtimer_systimer_select_best() 320 pr_debug("%s: counter_32k: %i clocksource: %08x clockevent: %08x\n", in dmtimer_systimer_select_best() [all …]
|
D | Kconfig | 164 where TIMER0 serves as clockevent and TIMER1 serves as clocksource. 311 TIMER0 serves as clockevent while TIMER1 provides clocksource. 510 This enables build of clocksource and clockevent driver for 518 This enables build of a clocksource and clockevent driver for 527 This enables build of a clockevent driver for the Multi-Function 543 This enables build of a clocksource and clockevent driver for 552 This enables build of a clocksource and clockevent driver for 561 This enables the clocksource and the per CPU clockevent driver for the 597 bool "Clockevent timer for the H8300 platform" if COMPILE_TEST 603 bool "Clockevent timer for the H83069 platform" if COMPILE_TEST [all …]
|
D | timer-vt8500.c | 86 static struct clock_event_device clockevent = { variable 133 clockevent.cpumask = cpumask_of(0); in vt8500_timer_init() 137 &clockevent); in vt8500_timer_init() 140 clockevent.name); in vt8500_timer_init() 144 clockevents_config_and_register(&clockevent, VT8500_TIMER_HZ, in vt8500_timer_init()
|
D | timer-efm32.c | 112 .name = "efm32 clockevent", 191 pr_err("failed to get clock for clockevent (%d)\n", ret); in efm32_clockevent_init() 197 pr_err("failed to enable timer clock for clockevent (%d)\n", in efm32_clockevent_init() 206 pr_err("failed to map registers for clockevent\n"); in efm32_clockevent_init() 213 pr_err("failed to get irq for clockevent\n"); in efm32_clockevent_init() 227 "efm32 clockevent", &clock_event_ddata); in efm32_clockevent_init()
|
D | hyperv_timer.c | 113 * hv_stimer_init - Per-cpu initialization of the clockevent 123 ce->name = "Hyper-V clockevent"; in hv_stimer_init() 139 * hv_stimer_cleanup - Per-cpu cleanup of the clockevent 152 * must unbind the stimer-based clockevent device so in hv_stimer_cleanup() 160 * there are no other clockevent devices to fallback to. in hv_stimer_cleanup() 172 /* hv_stimer_alloc - Global initialization of the clockevent and stimer0 */ 180 * clockevent based on emulated LAPIC timer hardware. in hv_stimer_alloc() 200 * as other clockevent devices. in hv_stimer_alloc()
|
D | mps2-timer.c | 112 pr_err("failed to get clock for clockevent: %d\n", ret); in mps2_clockevent_init() 118 pr_err("failed to enable clock for clockevent: %d\n", ret); in mps2_clockevent_init() 128 pr_err("failed to map register for clockevent: %d\n", ret); in mps2_clockevent_init() 135 pr_err("failed to get irq for clockevent: %d\n", ret); in mps2_clockevent_init() 162 pr_err("failed to request irq for clockevent: %d\n", ret); in mps2_clockevent_init()
|
D | h8300_timer8.c | 168 pr_err("failed to get clock for clockevent\n"); in h8300_8timer_init() 175 pr_err("failed to map registers for clockevent\n"); in h8300_8timer_init() 182 pr_err("failed to get irq for clockevent\n"); in h8300_8timer_init() 196 pr_err("failed to request irq %d for clockevent\n", irq); in h8300_8timer_init()
|
D | sh_tmu.c | 243 /* notify clockevent layer */ in sh_tmu_interrupt() 439 bool clockevent, bool clocksource) in sh_tmu_register() argument 441 if (clockevent) { in sh_tmu_register() 453 bool clockevent, bool clocksource, in sh_tmu_channel_setup() argument 457 if (!clockevent && !clocksource) in sh_tmu_channel_setup() 476 clockevent, clocksource); in sh_tmu_channel_setup() 637 return -EBUSY; /* cannot unregister clockevent and clocksource */ in sh_tmu_remove()
|
D | timer-armada-370-xp.c | 103 * Clockevent handling. 110 * Clear clockevent timer interrupt. in armada_370_xp_clkevt_next_event() 115 * Setup new clockevent timer value. in armada_370_xp_clkevt_next_event() 310 * Setup clockevent timer (interrupt-driven). in armada_370_xp_timer_common_init()
|
D | sh_cmt.c | 574 /* setup timeout if no clockevent */ in sh_cmt_start() 823 bool clockevent, bool clocksource) in sh_cmt_register() argument 827 if (clockevent) { in sh_cmt_register() 843 unsigned int hwidx, bool clockevent, in sh_cmt_setup_channel() argument 849 if (!clockevent && !clocksource) in sh_cmt_setup_channel() 887 clockevent, clocksource); in sh_cmt_setup_channel() 1030 bool clockevent = i == 0; in sh_cmt_setup() local 1033 clockevent, clocksource, cmt); in sh_cmt_setup() 1093 return -EBUSY; /* cannot unregister clockevent and clocksource */ in sh_cmt_remove()
|
D | timer-atmel-pit.c | 100 * Clockevent device: interrupts every 1/HZ (== pit_cycles * MCK/16) 164 * Set up both clocksource and clockevent support. 218 * so this isn't a 32-bit counter unless we get clockevent irqs. in at91sam926x_pit_dt_init()
|
D | timer-microchip-pit64b.c | 65 * mchp_pit64b_clkevt - PIT64B clockevent data structure 67 * @clkevt: clockevent 80 /* Default cycles for clockevent timer. */ 441 /* 1st request, register clockevent. */ in mchp_pit64b_dt_init()
|
D | dw_apb_timer_of.c | 79 panic("Unable to initialise clockevent device"); in add_clockevent() 160 pr_debug("%s: found clockevent timer\n", __func__); in dw_apb_timer_init()
|
D | timer-orion.c | 64 * Clockevent handling. 168 /* setup timer1 as clockevent timer */ in orion_timer_init()
|
/Linux-v5.10/arch/mips/loongson32/ |
D | Kconfig | 39 bool "Use PWM Timer for clockevent/clocksource" 43 This option changes the default clockevent/clocksource to PWM Timer, 49 prompt "Select clockevent/clocksource" 56 Use PWM Timer 0 as the default clockevent/clocksourcer. 61 Use PWM Timer 1 as the default clockevent/clocksourcer. 66 Use PWM Timer 2 as the default clockevent/clocksourcer. 71 Use PWM Timer 3 as the default clockevent/clocksourcer.
|
/Linux-v5.10/arch/xtensa/kernel/ |
D | time.c | 134 struct clock_event_device *clockevent = &timer->evt; in local_timer_setup() local 138 clockevent->name = timer->name; in local_timer_setup() 139 clockevent->cpumask = cpumask_of(cpu); in local_timer_setup() 140 clockevent->irq = irq_create_mapping(NULL, LINUX_TIMER_INT); in local_timer_setup() 141 if (WARN(!clockevent->irq, "error: can't map timer irq")) in local_timer_setup() 143 clockevents_config_and_register(clockevent, ccount_freq, in local_timer_setup()
|
/Linux-v5.10/include/clocksource/ |
D | timer-davinci.h | 24 * @irq: clockevent and clocksource interrupt resources 25 * @cmp_off: if set - it specifies the compare register used for clockevent 28 * clock half for both clocksource and clockevent and the compare register
|
/Linux-v5.10/arch/x86/kernel/ |
D | apb_timer.c | 156 printk(KERN_DEBUG "%s clockevent registered as global\n", in apbt_clockevent_register() 180 /* Don't register boot CPU clockevent */ in apbt_setup_secondary_clock() 195 printk(KERN_INFO "Registering CPU %d clockevent device %s, cpu %08x\n", in apbt_setup_secondary_clock() 209 * TODO: it might be more reliable to directly disable percpu clockevent device 222 pr_debug("APBT clockevent for cpu %u offline\n", cpu); in apbt_cpu_dead() 311 pr_debug("APBT has failed to register clockevent\n"); in apbt_time_init()
|
/Linux-v5.10/arch/sparc/kernel/ |
D | irq.h | 49 #define FEAT_L10_CLOCKEVENT (1 << 1) /* L10 timer is used as a clockevent */ 50 #define FEAT_L14_ONESHOT (1 << 2) /* L14 timer clockevent can oneshot */ 62 /* generic clockevent features - see FEAT_* above */
|
/Linux-v5.10/arch/arm/plat-orion/ |
D | time.c | 71 * Clockevent handling. 85 * Clear and enable clockevent timer interrupt. in orion_clkevt_next_event() 94 * Setup new clockevent timer value. in orion_clkevt_next_event() 231 * Setup clockevent timer (interrupt-driven). in orion_time_init()
|
/Linux-v5.10/arch/arm/boot/dts/ |
D | omap3-devkit8000.dts | 23 /* Unusable as clockevent because if unreliable oscillator, allow to idle */ 41 /* Preferred timer for clockevent */
|
/Linux-v5.10/arch/arm/mach-spear/ |
D | time.c | 29 * We would use TIMER0 and TIMER1 as clockevent and clocksource. 35 #define CLKEVT 0 /* gpt0, channel0 as clockevent */ 62 * Minimum clocksource/clockevent timer range in seconds
|
/Linux-v5.10/include/linux/ |
D | clockchips.h | 53 * - Clockevent source stops in C3 State and needs broadcast support. 66 * Clockevent device is based on a hrtimer for broadcast 134 /* Helpers to verify state of a clockevent device */
|
/Linux-v5.10/arch/arm/mach-iop32x/ |
D | time.c | 31 * Minimum clocksource/clockevent timer range in seconds 161 * Set up interrupting clockevent timer 0. in iop_init_time()
|