File: mm-init.h

package info (click to toggle)
kernel-source-sparc-2.2.1 2.2.1
  • links: PTS
  • area: main
  • in suites: slink
  • size: 62,800 kB
  • ctags: 188,320
  • sloc: ansic: 1,114,164; asm: 49,922; makefile: 8,272; sh: 1,831; perl: 1,584; tcl: 409; lisp: 218; cpp: 186; awk: 133; sed: 72
file content (46 lines) | stat: -rw-r--r-- 1,233 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*
 * linux/include/asm-arm/mm-init.h
 *
 * Copyright (C) 1997,1998 Russell King
 *
 * Contained within are structures to describe how to set up the
 * initial memory map.  It includes both a processor-specific header
 * for parsing these structures, and an architecture-specific header
 * to fill out the structures.
 */
#ifndef __ASM_MM_INIT_H
#define __ASM_MM_INIT_H

typedef enum {
	// physical address is absolute
	init_mem_map_absolute,
	/* physical address is relative to start_mem
	 *  as passed in paging_init
	 */
	init_mem_map_relative_start_mem
} init_memmap_type_t;

typedef struct {
	init_memmap_type_t type;
	unsigned long physical_address;
	unsigned long virtual_address;
	unsigned long size;
} init_memmap_t;

#define INIT_MEM_MAP_SENTINEL { init_mem_map_absolute, 0, 0, 0 }
#define INIT_MEM_MAP_ABSOLUTE(p,l,s) { init_mem_map_absolute,p,l,s }
#define INIT_MEM_MAP_RELATIVE(o,l,s) { init_mem_map_relative_start_mem,o,l,s }

/*
 * Within this file, initialise an array of init_mem_map_t's
 * to describe your initial memory mapping structure.
 */
#include <asm/arch/mm-init.h>

/*
 * Contained within this file is code to read the array
 * of init_mem_map_t's created above.
 */
#include <asm/proc/mm-init.h>

#endif