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

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [trunk/] [linux-2.6/] [linux-2.6.24/] [arch/] [powerpc/] [sysdev/] [dart.h] - Blame information for rev 3

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 xianfeng
/*
2
 * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation
3
 *
4
 * This program is free software; you can redistribute it and/or modify
5
 * it under the terms of the GNU General Public License as published by
6
 * the Free Software Foundation; either version 2 of the License, or
7
 * (at your option) any later version.
8
 *
9
 * This program is distributed in the hope that it will be useful,
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
 * GNU General Public License for more details.
13
 *
14
 * You should have received a copy of the GNU General Public License
15
 * along with this program; if not, write to the Free Software
16
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
17
 */
18
 
19
#ifndef _POWERPC_SYSDEV_DART_H
20
#define _POWERPC_SYSDEV_DART_H
21
 
22
 
23
/* Offset from base to control register */
24
#define DART_CNTL       0
25
 
26
/* Offset from base to exception register */
27
#define DART_EXCP_U3    0x10
28
/* Offset from base to TLB tag registers */
29
#define DART_TAGS_U3    0x1000
30
 
31
/* U4 registers */
32
#define DART_BASE_U4    0x10
33
#define DART_SIZE_U4    0x20
34
#define DART_EXCP_U4    0x30
35
#define DART_TAGS_U4    0x1000
36
 
37
/* Control Register fields */
38
 
39
/* U3 registers */
40
#define DART_CNTL_U3_BASE_MASK  0xfffff
41
#define DART_CNTL_U3_BASE_SHIFT 12
42
#define DART_CNTL_U3_FLUSHTLB   0x400
43
#define DART_CNTL_U3_ENABLE     0x200
44
#define DART_CNTL_U3_SIZE_MASK  0x1ff
45
#define DART_CNTL_U3_SIZE_SHIFT 0
46
 
47
/* U4 registers */
48
#define DART_BASE_U4_BASE_MASK  0xffffff
49
#define DART_BASE_U4_BASE_SHIFT 0
50
#define DART_CNTL_U4_ENABLE     0x80000000
51
#define DART_CNTL_U4_IONE       0x40000000
52
#define DART_CNTL_U4_FLUSHTLB   0x20000000
53
#define DART_CNTL_U4_IDLE       0x10000000
54
#define DART_CNTL_U4_PAR_EN     0x08000000
55
#define DART_CNTL_U4_IONE_MASK  0x07ffffff
56
#define DART_SIZE_U4_SIZE_MASK  0x1fff
57
#define DART_SIZE_U4_SIZE_SHIFT 0
58
 
59
#define DART_REG(r)     (dart + ((r) >> 2))
60
#define DART_IN(r)      (in_be32(DART_REG(r)))
61
#define DART_OUT(r,v)   (out_be32(DART_REG(r), (v)))
62
 
63
 
64
/* size of table in pages */
65
 
66
 
67
/* DART table fields */
68
 
69
#define DARTMAP_VALID   0x80000000
70
#define DARTMAP_RPNMASK 0x00ffffff
71
 
72
 
73
#define DART_PAGE_SHIFT         12
74
#define DART_PAGE_SIZE          (1 << DART_PAGE_SHIFT)
75
 
76
 
77
#endif /* _POWERPC_SYSDEV_DART_H */

powered by: WebSVN 2.1.0

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