• Stephen Boyd's avatar
    clocksource: arch_timer: Add support for memory mapped timers · 22006994
    Stephen Boyd authored
    Add support for the memory mapped timers by filling in the
    read/write functions and adding some parsing code. Note that we
    only register one clocksource, preferring the cp15 based
    clocksource over the mmio one.
    
    To keep things simple we register one global clockevent. This
    covers the case of UP and SMP systems with only mmio hardware and
    systems where the memory mapped timers are used as the broadcast
    timer in low power modes.
    
    The DT binding allows for per-CPU memory mapped timers in case we
    want to support that in the future, but the code isn't added
    here. We also don't do much for hypervisor support, although it
    should be possible to support it by searching for at least two
    frames where one frame has the virtual capability and then
    updating KVM timers to support it.
    
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Marc Zyngier <Marc.Zyngier@arm.com>
    Cc: Rob Herring <robherring2@gmail.com>
    Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
    Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
    Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
    22006994
arm_arch_timer.h 1.46 KB