1 |
dpavlin |
1 |
/* |
2 |
|
|
* PearPC |
3 |
|
|
* prommem.h |
4 |
|
|
* |
5 |
|
|
* Copyright (C) 2003 Sebastian Biallas (sb@biallas.net) |
6 |
|
|
* |
7 |
|
|
* This program is free software; you can redistribute it and/or modify |
8 |
|
|
* it under the terms of the GNU General Public License version 2 as |
9 |
|
|
* published by the Free Software Foundation. |
10 |
|
|
* |
11 |
|
|
* This program is distributed in the hope that it will be useful, |
12 |
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 |
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 |
|
|
* GNU General Public License for more details. |
15 |
|
|
* |
16 |
|
|
* You should have received a copy of the GNU General Public License |
17 |
|
|
* along with this program; if not, write to the Free Software |
18 |
|
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
19 |
|
|
*/ |
20 |
|
|
|
21 |
|
|
#ifndef __IO_PROMMEM_H__ |
22 |
|
|
#define __IO_PROMMEM_H__ |
23 |
|
|
|
24 |
|
|
#include "system/types.h" |
25 |
|
|
|
26 |
|
|
#define PROM_MEM_SIZE (2*1024*1024) |
27 |
|
|
|
28 |
|
|
bool prom_get_string(String &result, uint32 ea); |
29 |
|
|
bool prom_claim_page(uint32 phys); |
30 |
|
|
bool prom_claim_pages(uint32 phys, uint32 size); |
31 |
|
|
uint32 prom_allocate_mem(uint32 size, uint32 align=0, uint32 virt=0); |
32 |
|
|
bool prom_free_mem(uint32 virt); |
33 |
|
|
|
34 |
|
|
uint32 prom_mem_malloc(uint32 s); |
35 |
|
|
void prom_mem_free(uint32 p); |
36 |
|
|
uint32 prom_mem_phys_to_virt(uint32 pa); |
37 |
|
|
uint32 prom_mem_virt_to_phys(uint32 va); |
38 |
|
|
void prom_mem_set(uint32 pa, int c, int size); |
39 |
|
|
|
40 |
|
|
bool prom_mem_init(); |
41 |
|
|
bool prom_mem_done(); |
42 |
|
|
|
43 |
|
|
#endif |
44 |
|
|
|