1/*
2 * Copyright 2005, Haiku, Inc.
3 * Distributed under the terms of the MIT License.
4 *
5 * Authors:
6 *		Axel D��rfler, axeld@pinc-software.de
7 */
8#ifndef CPU_GENERIC_x86_H
9#define CPU_GENERIC_x86_H
10
11
12#include <SupportDefs.h>
13
14
15struct x86_mtrr_info;
16
17extern uint64 gPhysicalMask;
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23extern uint32	generic_count_mtrrs(void);
24extern void		generic_init_mtrrs(uint32 count);
25extern void		generic_set_mtrr(uint32 index, uint64 base, uint64 length, uint8 type);
26extern status_t generic_get_mtrr(uint32 index, uint64 *_base, uint64 *_length,
27					uint8 *_type);
28extern void		generic_set_mtrrs(uint8 defaultType,
29					const struct x86_mtrr_info* infos,
30					uint32 count, uint32 maxCount);
31extern status_t generic_mtrr_compute_physical_mask(void);
32
33extern void		generic_dump_mtrrs(uint32 count);
34
35#ifdef __cplusplus
36}
37#endif
38
39#endif	// CPU_GENERIC_x86_H
40