| // Copyright 2016 The Fuchsia Authors |
| // |
| // Use of this source code is governed by a MIT-style |
| // license that can be found in the LICENSE file or at |
| // https://opensource.org/licenses/MIT |
| |
| #pragma once |
| |
| #include <zircon/compiler.h> |
| #include <platform/pc/acpi.h> |
| |
| __BEGIN_CDECLS |
| |
| bool hpet_is_present(void); |
| |
| static uint64_t hpet_ticks_per_ms(void) { |
| extern uint64_t _hpet_ticks_per_ms; |
| return _hpet_ticks_per_ms; |
| } |
| |
| uint64_t hpet_get_value(void); |
| status_t hpet_set_value(uint64_t v); |
| |
| status_t hpet_timer_configure_irq(uint n, uint irq); |
| status_t hpet_timer_set_oneshot(uint n, uint64_t deadline); |
| status_t hpet_timer_set_periodic(uint n, uint64_t period); |
| status_t hpet_timer_disable(uint n); |
| |
| void hpet_enable(void); |
| void hpet_disable(void); |
| |
| void hpet_wait_ms(uint16_t ms); |
| |
| __END_CDECLS |