2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-14 08:34:02 +08:00
linux-next/drivers/clocksource
Martin Blumenstingl fa83c6f45a clocksource/drivers/meson6_timer: Implement the ARM delay timer
Implement an ARM delay timer to be used for udelay(). This allows us to
skip the delay loop calibration at boot.

With this patch udelay() is now independent of CPU frequency changes.
This is a good thing on Meson8, Meson8b and Meson8m2 because changing
the CPU frequency requires running the CPU clock off the XTAL while
changing the PLL or it's dividers. After changing the CPU clocks we need
to wait a few usecs for the clock to become stable. So having an
udelay() implementation that doesn't depend on the CPU frequency is
beneficial.

Suggested-by: Jianxin Pan <jianxin.pan@amlogic.com>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2018-12-18 22:22:23 +01:00
..
acpi_pm.c clocksource: Use a plain u64 instead of cycle_t 2016-12-25 11:04:12 +01:00
arc_timer.c clocksource/drivers/arc_timer: Add comments about locking while read GFRC 2018-05-18 22:59:40 +02:00
arm_arch_timer.c arm64: arch_timer: Add workaround for ARM erratum 1188873 2018-10-01 13:38:47 +01:00
arm_global_timer.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
armv7m_systick.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
asm9260_timer.c clocksource: Convert to using %pOFn instead of device_node.name 2018-10-03 14:36:52 +02:00
bcm2835_timer.c locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns to READ_ONCE()/WRITE_ONCE() 2017-10-25 11:01:08 +02:00
bcm_kona_timer.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
clksrc_st_lpc.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
clksrc-dbx500-prcmu.c clocksource/drivers/ux500: Drop Ux500 custom SCHED_CLOCK 2018-12-18 22:22:23 +01:00
clps711x-timer.c clocksource/drivers: Rename CLKSRC_OF to TIMER_OF 2017-06-14 12:01:03 +02:00
cs5535-clockevt.c clockevents/drivers/cs5535: Improve resilience to spurious interrupts 2017-10-20 13:41:52 +02:00
dummy_timer.c cpu/hotplug: Cleanup state names 2016-12-25 10:47:44 +01:00
dw_apb_timer_of.c clocksource/drivers/dw_apb: Add reset control 2018-10-07 14:16:35 +02:00
dw_apb_timer.c Merge branch 'clockevents/4.12' of https://git.linaro.org/people/daniel.lezcano/linux into timers/core 2017-04-17 10:55:14 +02:00
em_sti.c clocksource/drivers/em_sti: Fix error return codes in em_sti_probe() 2017-08-10 14:48:18 +02:00
exynos_mct.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
h8300_timer8.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
h8300_timer16.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
h8300_tpu.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
i8253.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
jcore-pit.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
Kconfig clocksource/drivers/ux500: Drop Ux500 custom SCHED_CLOCK 2018-12-18 22:22:23 +01:00
Makefile Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-11-04 08:15:15 -08:00
meson6_timer.c clocksource/drivers/meson6_timer: Implement the ARM delay timer 2018-12-18 22:22:23 +01:00
mips-gic-timer.c clocksource/drivers/mips-gic-timer: Add pr_fmt and reword pr_* messages 2018-05-18 22:53:09 +02:00
mmio.c clocksource: Use a plain u64 instead of cycle_t 2016-12-25 11:04:12 +01:00
mps2-timer.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
mxs_timer.c clocksource/drivers/mxs_timer: Switch to SPDX identifier 2018-05-23 07:39:09 +02:00
nomadik-mtu.c clocksource/drivers/ux500: Drop Ux500 custom SCHED_CLOCK 2018-12-18 22:22:23 +01:00
numachip.c x86/numachip: Add const and __initconst to numachip2_clockevent 2017-09-25 09:36:15 +02:00
pxa_timer.c clocksource: Convert to using %pOFn instead of device_node.name 2018-10-03 14:36:52 +02:00
renesas-ostm.c clocksource/drivers/renesas-ostm: Convert to SPDX identifiers 2018-10-03 14:36:53 +02:00
riscv_timer.c RISC-V: Use Linux logical CPU number instead of hartid 2018-10-22 17:03:37 -07:00
rockchip_timer.c clocksource/drivers/rockchip: pr_err() strings should end with newlines 2017-10-19 23:49:02 +02:00
samsung_pwm_timer.c clocksource/drivers: Rename CLKSRC_OF to TIMER_OF 2017-06-14 12:01:03 +02:00
scx200_hrt.c clocksource: Use a plain u64 instead of cycle_t 2016-12-25 11:04:12 +01:00
sh_cmt.c clocksource/drivers/sh_cmt: Add R-Car gen3 support 2018-10-03 14:37:01 +02:00
sh_mtu2.c clocksource/drivers/sh_mtu2: Convert to SPDX identifiers 2018-10-03 14:36:55 +02:00
sh_tmu.c clocksource/drivers/sh_tmu: Convert to SPDX identifiers 2018-10-03 14:36:56 +02:00
sun4i_timer.c clocksource/drivers/sun4i: Switch to the timer-of common init 2017-06-26 18:32:04 +02:00
tango_xtal.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tcb_clksrc.c clocksource/drivers/tcb_clksrc: Fix clock speed message 2018-01-08 17:57:23 +01:00
tegra20_timer.c clockevents/drivers/tegra20: Remove obsolete inclusion of <asm/smp_twd.h> 2018-12-18 22:22:23 +01:00
timer-armada-370-xp.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-atcpit100.c clocksource/drivers: Set clockevent device cpumask to cpu_possible_mask 2018-07-26 11:26:30 +02:00
timer-atlas7.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-atmel-pit.c clocksource/drivers/timer-atmel-pit: Properly handle error cases 2018-09-27 12:01:45 +02:00
timer-atmel-st.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-cadence-ttc.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-digicolor.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-efm32.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-fsl-ftm.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-fttmr010.c clocksource/drivers/fttmr010: Fix set_next_event handler 2018-09-24 06:13:31 +02:00
timer-gx6605s.c clocksource/drivers/c-sky: Add gx6605s SOC system timer 2018-11-02 19:41:12 +01:00
timer-imx-gpt.c clocksource/drivers/timer-imx-gpt: Switch to SPDX identifier 2018-05-23 07:38:52 +02:00
timer-imx-tpm.c clocksource/drivers/timer-imx-tpm: Switch to SPDX identifier 2018-05-23 07:39:01 +02:00
timer-integrator-ap.c clocksource: Convert to using %pOFn instead of device_node.name 2018-10-03 14:36:52 +02:00
timer-keystone.c clocksource/drivers: Set clockevent device cpumask to cpu_possible_mask 2018-07-26 11:26:30 +02:00
timer-lpc32xx.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-mediatek.c clocksource/drivers/timer-mediatek: Add support for system timer 2018-07-26 11:26:34 +02:00
timer-mp-csky.c clocksource/drivers/c-sky: Add C-SKY SMP timer 2018-11-02 19:39:54 +01:00
timer-npcm7xx.c clocksource/drivers/npcm: Add NPCM7xx timer driver 2018-03-30 22:44:09 +02:00
timer-nps.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-of.c clocksource/drivers/timer-of: Don't request the resource by name 2018-01-08 17:57:24 +01:00
timer-of.h clocksource/drivers/timer-of: Store the device node pointer in 'struct timer_of' 2018-01-08 17:57:24 +01:00
timer-orion.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-owl.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-oxnas-rps.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-pistachio.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-prima2.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-probe.c clocksource: Convert to using %pOF instead of full_name 2017-08-31 15:56:17 +02:00
timer-qcom.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-sp804.c clocksource: Convert to using %pOFn instead of device_node.name 2018-10-03 14:36:52 +02:00
timer-sp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
timer-sprd.c clocksource/drivers/sprd: Register one always-on timer to compensate suspend time 2018-07-26 11:26:34 +02:00
timer-stm32.c clocksource/drivers/stm32: Fix error return code 2018-06-12 23:54:01 +02:00
timer-sun5i.c treewide/trivial: Remove ';;$' typo noise 2018-02-22 10:59:33 +01:00
timer-ti-32k.c clocksource/drivers/ti-32k: Add CLOCK_SOURCE_SUSPEND_NONSTOP flag for non-am43 SoCs 2018-09-13 15:23:35 +02:00
timer-ti-dm.c clocksource/drivers/timer-ti-dm: Remove the early platform driver registration 2018-12-18 22:22:23 +01:00
timer-u300.c clocksource/drivers: Rename CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE 2017-06-14 11:58:45 +02:00
timer-versatile.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-vf-pit.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00
timer-vt8500.c clocksource/drivers/timer-vt8500: Remove duplicate function name 2018-12-18 22:22:23 +01:00
timer-zevio.c clocksource/drivers: Unify the names to timer-* format 2018-10-03 14:37:02 +02:00