On Fri, Feb 26, 2016 at 09:14:10AM +0100, Thomas Petazzoni wrote: > atomic_io_modify() is also used in the ->start() and ->stop() hooks, so > not only during initialization. The reason we use atomic_io_modify() > here is because this TIMER_CTRL register is shared with the clocksource > drivers (time-orion.c, time-armada-370-xp.c). Indeed, the timers and > watchdogs share a single register that allows to enable/disable all > timers/watchdogs. Somewhat unfortunate choice, but that's how the HW is. > By far the easiest solution is to add "depends on ARM" to > ORION_WATCHDOG. > Another solution would be to provide an implementation of > atomic_io_modify() on arm64, though that would need the ACK from the > ARM64 maintainers. It also sounds like a more modern solution might be to use syscon for the shared register, but perhaps I'm missing something about how the IP is set up so ICBW.
Attachment:
signature.asc
Description: PGP signature