History log of /fuchsia/zircon/kernel/include/platform/timer.h
Revision Date Author Comments
# 8e9ae6cc 08-Jun-2018 Nick Maniscalco <maniscalco@google.com>

[kernel][x64][arm64] Add ability to shutdown platform timer

As part of the work to gracefully shutdown CPUs, we need to disable
the CPU's platform timer before powering it down.

This change adds platform_shutdown_timer(), which on arm64 masks the
interrupt and on x64 currently does nothing.

Nothing currently calls platform_shutdown_timer(). It will get wired
into the shutdown sequence in a future change.

Tested: Manually tested arm64 on qmeu using a separate change that
actually calls platform_shutdown_timer as part of shutting down
secondary CPUs.

ZX-2302 #comment prereq

ZX-2228 #comment prereq

Change-Id: I23df7c5b0c6b723b07b0ceccc0855b67de400470


# 9f95363b 05-Feb-2018 Mark Seaborn <mseaborn@google.com>

[kernel][interrupts] Replace "enum handler_return" type with void

Following recent changes for using preempt_disable, all of the
in-kernel interrupt handlers now always return INT_NO_RESCHEDULE. We
can therefore remove their return values. We can use "void" instead
of "enum handler_return".

The bulk changes are:

* Search-and-replace "enum handler_return" -> "void".
* Manually change "return INT_NO_RESCHEDULE;" -> "return;", or remove
when at the end of a function.
* Manually change "return foo();" -> "foo();" when return type is
void (just a cleanup -- the code compiles without this change).

The non-bulk changes include:

* Remove the definition of enum handler_return.
* Update the interrupt entry points: faults.cpp and exceptions_c.cpp.
* Update a few places where handler_return values were propagated,
such as "handler->handler()" calls, removing "ret =".

Note that platform_fiq() (changed here) is called from ARM assembly.

ZX-1490

Change-Id: I70b57c610ded0facb93c09ac8ffc81cf23a985fc


# 39d88359 26-Sep-2017 George Kulakowski <kulakowski@google.com>

[kernel][status] Migrate the rest to zx_status_t

Change-Id: If0a5d3e04bfc3e2a57d068350ee1d1156ed67872


# 591d66cf 25-Sep-2017 George Kulakowski <kulakowski@google.com>

[kernel][time] Prefer zx_{time,duration}_t to lk_time_t

Change-Id: Ie219c61f2ba7fd073917a6738221e2dde969fc2d


# f3e2126c 12-Sep-2017 Roland McGrath <mcgrathr@google.com>

[zx] Magenta -> Zircon

The Great Renaming is here!

Change-Id: I3229bdeb2a3d0e40fb4db6fec8ca7d971fbffb94


# bc6f14dc 28-Jun-2017 Travis Geiselbrecht <travisg@google.com>

[kernel][timer] simplify the hw timer setting api

Remove the need to pass a callback and arg, which were always pointing
at timer_tick() anyway.

Change-Id: Iac3663796105857e76309b01409bf2006403459b


# ffbfa043 27-Jun-2017 Travis Geiselbrecht <travisg@google.com>

[kernel][timers] remove periodic timer support

It's largely unused and adds some amount of complexity to the kernel
timer path which is going to be hard to maintain going forward.

Change-Id: Id9e3ae76bcb19857668ef690edc1646b3812e6c1


# 9e167cd9 09-Jun-2017 Jocelyn Dang <jocelyndang@google.com>

[kernel][timer] Remove non-dynamic timer from magenta.

MG-821 #done

Change-Id: I3e22dcfb4f72a702198c516be31f98037fdbdf60


# 5d9c4f03 25-Apr-2017 Todd Eisenberger <teisenbe@google.com>

[kernel][pc] Finish C++ conversion

Change-Id: Iea6ff5e497597c1b0cd3a914e1a3cdd5b641cf58


# ab10aa63 25-Apr-2017 Todd Eisenberger <teisenbe@google.com>

[kernel][time] Rename lk_bigtime_t and current_time_hires()

Now that millisecond time is gone from the kernel, reclaim the names
used for it.

lk_bigtime_t -> lk_time_t
current_time_hires() -> current_time()

Change-Id: I7db5de01171096c04a2b12d293e047e6a08a0aef


# 3cfeedb4 05-Apr-2017 Todd Eisenberger <teisenbe@google.com>

[kernel][time] Switch timeout interfaces to deadlines

This switches all kernel primitives to using deadlines with respect
to the monotonic clock instead of relative nanosecond timeouts.

The only remaining time interface that is not on deadlines is
thread_sleep.

Change-Id: Ibfb4e7a0673ecb5740dba33ee9d056f668e27256


# 4c4f7aec 03-Apr-2017 Todd Eisenberger <teisenbe@google.com>

[kernel][time] Switch kernel to nanoseconds internally

A subsequent diff will rename lk_bigtime_t to lk_time_t and
current_time_hires() to current_time().

Change-Id: Ied15e687714f784e2180aac59c8e0813c83bfcd0


# 53b9e1c8 15-Jun-2016 The Fuchsia Authors <authors@fuchsia.local>

[magenta] Initial commit