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

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [include/] [asm-mips64/] [sibyte/] [sb1250_l2c.h] - Blame information for rev 1275

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

Line No. Rev Author Line
1 1275 phoenix
/*  *********************************************************************
2
    *  SB1250 Board Support Package
3
    *
4
    *  L2 Cache constants and macros            File: sb1250_l2c.h
5
    *
6
    *  This module contains constants useful for manipulating the
7
    *  level 2 cache.
8
    *
9
    *  SB1250 specification level:  User's manual 1/02/02
10
    *
11
    *  Author:  Mitch Lichtenberg
12
    *
13
    *********************************************************************
14
    *
15
    *  Copyright 2000,2001,2002,2003
16
    *  Broadcom Corporation. All rights reserved.
17
    *
18
    *  This program is free software; you can redistribute it and/or
19
    *  modify it under the terms of the GNU General Public License as
20
    *  published by the Free Software Foundation; either version 2 of
21
    *  the License, or (at your option) any later version.
22
    *
23
    *  This program is distributed in the hope that it will be useful,
24
    *  but WITHOUT ANY WARRANTY; without even the implied warranty of
25
    *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
26
    *  GNU General Public License for more details.
27
    *
28
    *  You should have received a copy of the GNU General Public License
29
    *  along with this program; if not, write to the Free Software
30
    *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
31
    *  MA 02111-1307 USA
32
    ********************************************************************* */
33
 
34
 
35
#ifndef _SB1250_L2C_H
36
#define _SB1250_L2C_H
37
 
38
#include "sb1250_defs.h"
39
 
40
/*
41
 * Level 2 Cache Tag register (Table 5-3)
42
 */
43
 
44
#define S_L2C_TAG_MBZ               0
45
#define M_L2C_TAG_MBZ               _SB_MAKEMASK(5,S_L2C_TAG_MBZ)
46
 
47
#define S_L2C_TAG_INDEX             5
48
#define M_L2C_TAG_INDEX             _SB_MAKEMASK(12,S_L2C_TAG_INDEX)
49
#define V_L2C_TAG_INDEX(x)          _SB_MAKEVALUE(x,S_L2C_TAG_INDEX)
50
#define G_L2C_TAG_INDEX(x)          _SB_GETVALUE(x,S_L2C_TAG_INDEX,M_L2C_TAG_INDEX)
51
 
52
#define S_L2C_TAG_TAG               17
53
#define M_L2C_TAG_TAG               _SB_MAKEMASK(23,S_L2C_TAG_TAG)
54
#define V_L2C_TAG_TAG(x)            _SB_MAKEVALUE(x,S_L2C_TAG_TAG)
55
#define G_L2C_TAG_TAG(x)            _SB_GETVALUE(x,S_L2C_TAG_TAG,M_L2C_TAG_TAG)
56
 
57
#define S_L2C_TAG_ECC               40
58
#define M_L2C_TAG_ECC               _SB_MAKEMASK(6,S_L2C_TAG_ECC)
59
#define V_L2C_TAG_ECC(x)            _SB_MAKEVALUE(x,S_L2C_TAG_ECC)
60
#define G_L2C_TAG_ECC(x)            _SB_GETVALUE(x,S_L2C_TAG_ECC,M_L2C_TAG_ECC)
61
 
62
#define S_L2C_TAG_WAY               46
63
#define M_L2C_TAG_WAY               _SB_MAKEMASK(2,S_L2C_TAG_WAY)
64
#define V_L2C_TAG_WAY(x)            _SB_MAKEVALUE(x,S_L2C_TAG_WAY)
65
#define G_L2C_TAG_WAY(x)            _SB_GETVALUE(x,S_L2C_TAG_WAY,M_L2C_TAG_WAY)
66
 
67
#define M_L2C_TAG_DIRTY             _SB_MAKEMASK1(48)
68
#define M_L2C_TAG_VALID             _SB_MAKEMASK1(49)
69
 
70
/*
71
 * Format of level 2 cache management address (table 5-2)
72
 */
73
 
74
#define S_L2C_MGMT_INDEX            5
75
#define M_L2C_MGMT_INDEX            _SB_MAKEMASK(12,S_L2C_MGMT_INDEX)
76
#define V_L2C_MGMT_INDEX(x)         _SB_MAKEVALUE(x,S_L2C_MGMT_INDEX)
77
#define G_L2C_MGMT_INDEX(x)         _SB_GETVALUE(x,S_L2C_MGMT_INDEX,M_L2C_MGMT_INDEX)
78
 
79
#define S_L2C_MGMT_QUADRANT         15
80
#define M_L2C_MGMT_QUADRANT         _SB_MAKEMASK(2,S_L2C_MGMT_QUADRANT)
81
#define V_L2C_MGMT_QUADRANT(x)      _SB_MAKEVALUE(x,S_L2C_MGMT_QUADRANT)
82
#define G_L2C_MGMT_QUADRANT(x)      _SB_GETVALUE(x,S_L2C_MGMT_QUADRANT,M_L2C_MGMT_QUADRANT)
83
 
84
#define S_L2C_MGMT_HALF             16
85
#define M_L2C_MGMT_HALF             _SB_MAKEMASK(1,S_L2C_MGMT_HALF)
86
 
87
#define S_L2C_MGMT_WAY              17
88
#define M_L2C_MGMT_WAY              _SB_MAKEMASK(2,S_L2C_MGMT_WAY)
89
#define V_L2C_MGMT_WAY(x)           _SB_MAKEVALUE(x,S_L2C_MGMT_WAY)
90
#define G_L2C_MGMT_WAY(x)           _SB_GETVALUE(x,S_L2C_MGMT_WAY,M_L2C_MGMT_WAY)
91
 
92
#define S_L2C_MGMT_TAG              21
93
#define M_L2C_MGMT_TAG              _SB_MAKEMASK(6,S_L2C_MGMT_TAG)
94
#define V_L2C_MGMT_TAG(x)           _SB_MAKEVALUE(x,S_L2C_MGMT_TAG)
95
#define G_L2C_MGMT_TAG(x)           _SB_GETVALUE(x,S_L2C_MGMT_TAG,M_L2C_MGMT_TAG)
96
 
97
#define M_L2C_MGMT_DIRTY            _SB_MAKEMASK1(19)
98
#define M_L2C_MGMT_VALID            _SB_MAKEMASK1(20)
99
 
100
#define A_L2C_MGMT_TAG_BASE         0x00D0000000
101
 
102
#define L2C_ENTRIES_PER_WAY       4096
103
#define L2C_NUM_WAYS              4
104
 
105
 
106
#if SIBYTE_HDR_FEATURE(1250, PASS3) || SIBYTE_HDR_FEATURE(112x, PASS1)
107
/*
108
 * L2 Read Misc. register (A_L2_READ_MISC)
109
 */
110
#define S_L2C_MISC_NO_WAY               10
111
#define M_L2C_MISC_NO_WAY               _SB_MAKEMASK(4,S_L2C_MISC_NO_WAY)
112
#define V_L2C_MISC_NO_WAY(x)            _SB_MAKEVALUE(x,S_L2C_MISC_NO_WAY)
113
#define G_L2C_MISC_NO_WAY(x)            _SB_GETVALUE(x,S_L2C_MISC_NO_WAY,M_L2C_MISC_NO_WAY)
114
 
115
#define M_L2C_MISC_ECC_CLEANUP_DIS      _SB_MAKEMASK1(9)
116
#define M_L2C_MISC_MC_PRIO_LOW          _SB_MAKEMASK1(8)
117
#define M_L2C_MISC_SOFT_DISABLE_T       _SB_MAKEMASK1(7)
118
#define M_L2C_MISC_SOFT_DISABLE_B       _SB_MAKEMASK1(6)
119
#define M_L2C_MISC_SOFT_DISABLE_R       _SB_MAKEMASK1(5)
120
#define M_L2C_MISC_SOFT_DISABLE_L       _SB_MAKEMASK1(4)
121
#define M_L2C_MISC_SCACHE_DISABLE_T     _SB_MAKEMASK1(3)
122
#define M_L2C_MISC_SCACHE_DISABLE_B     _SB_MAKEMASK1(2)
123
#define M_L2C_MISC_SCACHE_DISABLE_R     _SB_MAKEMASK1(1)
124
#define M_L2C_MISC_SCACHE_DISABLE_L     _SB_MAKEMASK1(0)
125
#endif /* 1250 PASS3 || 112x PASS1 */
126
 
127
 
128
#endif

powered by: WebSVN 2.1.0

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