1// Copyright 2016 The Fuchsia Authors 2// Copyright (c) 2008 Travis Geiselbrecht 3// 4// Use of this source code is governed by a MIT-style 5// license that can be found in the LICENSE file or at 6// https://opensource.org/licenses/MIT 7 8#pragma once 9 10#include <sys/types.h> 11#include <zircon/compiler.h> 12#include <zircon/types.h> 13 14__BEGIN_CDECLS 15 16typedef void(*platform_timer_callback)(zx_time_t now); 17 18// API to set/clear a hardware timer that is responsible for calling timer_tick() when it fires 19zx_status_t platform_set_oneshot_timer(zx_time_t deadline); 20void platform_stop_timer(void); 21 22// Shutdown the calling CPU's platform timer. 23// 24// Should be called after |platform_stop_timer|, but before taking the CPU offline. 25// 26// TODO(maniscalco): Provide a "resume" function so we can suspend/resume. 27void platform_shutdown_timer(void); 28 29void timer_tick(zx_time_t now); 30 31__END_CDECLS 32