OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [conts/] [posix/] [mm0/] [include/] [memory.h] - Blame information for rev 7

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
/*
2
 * Physical page descriptor
3
 *
4
 * Copyright (C) 2007 Bahadir Balban
5
 */
6
#ifndef __MEMORY_H__
7
#define __MEMORY_H__
8
 
9
#include <vm_area.h>
10
#include <init.h>
11
#include <physmem.h>
12
#include <linker.h>
13
#include <capability.h>
14
 
15
struct container_memory_regions {
16
        struct capability *shmem;
17
        struct capability *utcb;
18
        struct capability *task;
19
        struct capability *pager;
20
        struct capability *physmem;
21
};
22
extern struct container_memory_regions cont_mem_regions;
23
 
24
void init_mm_descriptors(struct page_bitmap *page_map,
25
                         struct bootdesc *bootdesc, struct membank *membank);
26
void init_physmem(void);
27
 
28
int pager_address_pool_init();
29
void *pager_new_address(int npages);
30
int pager_delete_address(void *virt_addr, int npages);
31
void *pager_map_pages(struct vm_file *f, unsigned long page_offset, unsigned long npages);
32
void pager_unmap_pages(void *addr, unsigned long npages);
33
void *pager_map_page(struct vm_file *f, unsigned long page_offset);
34
void pager_unmap_page(void *addr);
35
void *pager_map_file_range(struct vm_file *f, unsigned long byte_offset,
36
                           unsigned long size);
37
 
38
void *pager_validate_map_user_range2(struct tcb *user, void *userptr,
39
                                    unsigned long size, unsigned int vm_flags);
40
 
41
void *l4_new_virtual(int npages);
42
void *l4_del_virtual(void *virt, int npages);
43
 
44
#endif /* __MEMORY_H__ */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.