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
arm
plat-orion
include
plat
addr-map.h
Go to the documentation of this file.
1
/*
2
* arch/arm/plat-orion/include/plat/addr-map.h
3
*
4
* Marvell Orion SoC address map handling.
5
*
6
* This file is licensed under the terms of the GNU General Public
7
* License version 2. This program is licensed "as is" without any
8
* warranty of any kind, whether express or implied.
9
*/
10
11
#ifndef __PLAT_ADDR_MAP_H
12
#define __PLAT_ADDR_MAP_H
13
14
extern
struct
mbus_dram_target_info
orion_mbus_dram_info
;
15
16
struct
orion_addr_map_cfg
{
17
const
int
num_wins
;
/* Total number of windows */
18
const
int
remappable_wins
;
19
void
__iomem
*
bridge_virt_base
;
20
21
/* If NULL, the default cpu_win_can_remap will be used, using
22
the value in remappable_wins */
23
int
(*
cpu_win_can_remap
) (
const
struct
orion_addr_map_cfg
*
cfg
,
24
const
int
win
);
25
/* If NULL, the default win_cfg_base will be used, using the
26
value in bridge_virt_base */
27
void
__iomem
*(*win_cfg_base) (
const
struct
orion_addr_map_cfg
*
cfg
,
28
const
int
win
);
29
};
30
31
/*
32
* Information needed to setup one address mapping.
33
*/
34
struct
orion_addr_map_info
{
35
const
int
win
;
36
const
u32
base
;
37
const
u32
size
;
38
const
u8
target
;
39
const
u8
attr
;
40
const
int
remap
;
41
};
42
43
void
__init
orion_config_wins
(
struct
orion_addr_map_cfg
*
cfg
,
44
const
struct
orion_addr_map_info
*
info
);
45
46
void
__init
orion_setup_cpu_win
(
const
struct
orion_addr_map_cfg
*
cfg
,
47
const
int
win
,
const
u32
base,
48
const
u32
size
,
const
u8
target
,
49
const
u8
attr
,
const
int
remap);
50
51
void
__init
orion_setup_cpu_mbus_target
(
const
struct
orion_addr_map_cfg
*
cfg
,
52
const
void
__iomem
*ddr_window_cpu_base);
53
#endif
Generated on Thu Jan 10 2013 12:59:46 for Linux Kernel by
1.8.2