| // Copyright 2016 The Fuchsia Authors |
| // Copyright (c) 2009 Corey Tabaka |
| // |
| // 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 <lib/cbuf.h> |
| #include <sys/types.h> |
| #include <zircon/compiler.h> |
| #include <zircon/types.h> |
| |
| extern cbuf_t console_input_buf; |
| |
| __BEGIN_CDECLS |
| |
| /* Do not use anything above this address for PCIe stuff. A bunch of |
| * architectural devices often occupy this area */ |
| #define HIGH_ADDRESS_LIMIT 0xfec00000 |
| |
| extern paddr_t pcie_mem_lo_base; |
| extern size_t pcie_mem_lo_size; |
| |
| extern uint16_t pcie_pio_base; |
| extern uint16_t pcie_pio_size; |
| |
| void pc_init_debug_default_early(void); |
| void pc_init_debug_early(void); |
| void pc_init_debug(void); |
| void pc_init_timer_percpu(void); |
| void pc_mem_init(void); |
| |
| void pc_prep_suspend_timer(void); |
| void pc_resume_timer(void); |
| void pc_resume_debug(void); |
| void pc_suspend_debug(void); |
| |
| typedef void (*enumerate_e820_callback)(uint64_t base, uint64_t size, bool is_mem, void* ctx); |
| zx_status_t enumerate_e820(enumerate_e820_callback callback, void* ctx); |
| |
| __END_CDECLS |