Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
mips
include
asm
netlogic
psb-bootinfo.h
Go to the documentation of this file.
1
/*
2
* Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights
3
* reserved.
4
*
5
* This software is available to you under a choice of one of two
6
* licenses. You may choose to be licensed under the terms of the GNU
7
* General Public License (GPL) Version 2, available from the file
8
* COPYING in the main directory of this source tree, or the NetLogic
9
* license below:
10
*
11
* Redistribution and use in source and binary forms, with or without
12
* modification, are permitted provided that the following conditions
13
* are met:
14
*
15
* 1. Redistributions of source code must retain the above copyright
16
* notice, this list of conditions and the following disclaimer.
17
* 2. Redistributions in binary form must reproduce the above copyright
18
* notice, this list of conditions and the following disclaimer in
19
* the documentation and/or other materials provided with the
20
* distribution.
21
*
22
* THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR
23
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
24
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25
* ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE
26
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
29
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
30
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
31
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
32
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
*/
34
35
#ifndef _ASM_NETLOGIC_BOOTINFO_H
36
#define _ASM_NETLOGIC_BOOTINFO_H
37
38
struct
psb_info
{
39
uint64_t
boot_level
;
40
uint64_t
io_base
;
41
uint64_t
output_device
;
42
uint64_t
uart_print
;
43
uint64_t
led_output
;
44
uint64_t
init
;
45
uint64_t
exit
;
46
uint64_t
warm_reset
;
47
uint64_t
wakeup
;
48
uint64_t
online_cpu_map
;
49
uint64_t
master_reentry_sp
;
50
uint64_t
master_reentry_gp
;
51
uint64_t
master_reentry_fn
;
52
uint64_t
slave_reentry_fn
;
53
uint64_t
magic_dword
;
54
uint64_t
uart_putchar
;
55
uint64_t
size
;
56
uint64_t
uart_getchar
;
57
uint64_t
nmi_handler
;
58
uint64_t
psb_version
;
59
uint64_t
mac_addr
;
60
uint64_t
cpu_frequency
;
61
uint64_t
board_version
;
62
uint64_t
malloc
;
63
uint64_t
free
;
64
uint64_t
global_shmem_addr
;
65
uint64_t
global_shmem_size
;
66
uint64_t
psb_os_cpu_map
;
67
uint64_t
userapp_cpu_map
;
68
uint64_t
wakeup_os
;
69
uint64_t
psb_mem_map
;
70
uint64_t
board_major_version
;
71
uint64_t
board_minor_version
;
72
uint64_t
board_manf_revision
;
73
uint64_t
board_serial_number
;
74
uint64_t
psb_physaddr_map
;
75
uint64_t
xlr_loaderip_config
;
76
uint64_t
bldr_envp
;
77
uint64_t
avail_mem_map
;
78
};
79
80
enum
{
81
NETLOGIC_IO_SPACE
= 0x10,
82
PCIX_IO_SPACE
,
83
PCIX_CFG_SPACE
,
84
PCIX_MEMORY_SPACE
,
85
HT_IO_SPACE
,
86
HT_CFG_SPACE
,
87
HT_MEMORY_SPACE
,
88
SRAM_SPACE
,
89
FLASH_CONTROLLER_SPACE
90
};
91
92
#define NLM_MAX_ARGS 64
93
#define NLM_MAX_ENVS 32
94
95
/* This is what netlboot passes and linux boot_mem_map is subtly different */
96
#define NLM_BOOT_MEM_MAP_MAX 32
97
struct
nlm_boot_mem_map
{
98
int
nr_map
;
99
struct
nlm_boot_mem_map_entry
{
100
uint64_t
addr
;
/* start of memory segment */
101
uint64_t
size
;
/* size of memory segment */
102
uint32_t
type
;
/* type of memory segment */
103
}
map
[
NLM_BOOT_MEM_MAP_MAX
];
104
};
105
106
/* Pointer to saved boot loader info */
107
extern
struct
psb_info
nlm_prom_info
;
108
109
#endif
Generated on Thu Jan 10 2013 13:09:48 for Linux Kernel by
1.8.2