blob: ff9512f203cd06d41f1ed9a125486471436c3b1b [file] [log] [blame]
Eran Libertyf046ccd2005-07-28 10:08:46 -05001/*
2 * Copyright 2004 Freescale Semiconductor, Inc.
3 * Liberty Eran (liberty@freescale.com)
4 */
5
6#ifndef __E300_H__
7#define __E300_H__
8
9/*
Jon Loeligerde1d0a62005-08-01 13:20:47 -050010 * e300 Processor Version & Revision Numbers
Eran Libertyf046ccd2005-07-28 10:08:46 -050011 */
12#define PVR_83xx 0x80830000
13#define PVR_8349_REV10 (PVR_83xx | 0x0010)
14#define PVR_8349_REV11 (PVR_83xx | 0x0011)
Dave Liu5f820432006-11-03 19:33:44 -060015#define PVR_8360_REV10 (PVR_83xx | 0x0020)
16#define PVR_8360_REV11 (PVR_83xx | 0x0020)
Eran Libertyf046ccd2005-07-28 10:08:46 -050017
Dave Liu24c3aca2006-12-07 21:13:15 +080018#if defined(CONFIG_MPC832X)
19#undef PVR_83xx
20#define PVR_83xx 0x80840000
21#endif
22
Eran Libertyf046ccd2005-07-28 10:08:46 -050023/*
24 * Hardware Implementation-Dependent Register 0 (HID0)
25 */
Jon Loeligerde1d0a62005-08-01 13:20:47 -050026
Eran Libertyf046ccd2005-07-28 10:08:46 -050027/* #define HID0 1008 already defined in processor.h */
28#define HID0_MASK_MACHINE_CHECK 0x00000000
29#define HID0_ENABLE_MACHINE_CHECK 0x80000000
30
31#define HID0_DISABLE_CACHE_PARITY 0x00000000
32#define HID0_ENABLE_CACHE_PARITY 0x40000000
33
34#define HID0_DISABLE_ADDRESS_PARITY 0x00000000 /* on mpc8349ads must be disabled */
35#define HID0_ENABLE_ADDRESS_PARITY 0x20000000
36
37#define HID0_DISABLE_DATA_PARITY 0x00000000 /* on mpc8349ads must be disabled */
38#define HID0_ENABLE_DATE_PARITY 0x10000000
39
40#define HID0_CORE_CLK_OUT 0x00000000
41#define HID0_CORE_CLK_OUT_DIV_2 0x08000000
42
43#define HID0_ENABLE_ARTRY_OUT_PRECHARGE 0x00000000 /* on mpc8349ads must be enabled */
44#define HID0_DISABLE_ARTRY_OUT_PRECHARGE 0x01000000
45
46#define HID0_DISABLE_DOSE_MODE 0x00000000
47#define HID0_ENABLE_DOSE_MODE 0x00800000
48
49#define HID0_DISABLE_NAP_MODE 0x00000000
50#define HID0_ENABLE_NAP_MODE 0x00400000
51
52#define HID0_DISABLE_SLEEP_MODE 0x00000000
53#define HID0_ENABLE_SLEEP_MODE 0x00200000
54
55#define HID0_DISABLE_DYNAMIC_POWER_MANAGMENT 0x00000000
56#define HID0_ENABLE_DYNAMIC_POWER_MANAGMENT 0x00100000
57
58#define HID0_SOFT_RESET 0x00010000
59
60#define HID0_DISABLE_INSTRUCTION_CACHE 0x00000000
61#define HID0_ENABLE_INSTRUCTION_CACHE 0x00008000
62
63#define HID0_DISABLE_DATA_CACHE 0x00000000
64#define HID0_ENABLE_DATA_CACHE 0x00004000
65
66#define HID0_LOCK_INSTRUCTION_CACHE 0x00002000
67
68#define HID0_LOCK_DATA_CACHE 0x00001000
69
70#define HID0_INVALIDATE_INSTRUCTION_CACHE 0x00000800
71
72#define HID0_INVALIDATE_DATA_CACHE 0x00000400
73
74#define HID0_DISABLE_M_BIT 0x00000000
75#define HID0_ENABLE_M_BIT 0x00000080
76
77#define HID0_FBIOB 0x00000010
78
79#define HID0_DISABLE_ADDRESS_BROADCAST 0x00000000
80#define HID0_ENABLE_ADDRESS_BROADCAST 0x00000008
81
82#define HID0_ENABLE_NOOP_DCACHE_INSTRUCTION 0x00000000
83#define HID0_DISABLE_NOOP_DCACHE_INSTRUCTION 0x00000001
84
85/*
86 * Hardware Implementation-Dependent Register 2 (HID2)
87 */
88#define HID2 1011
89
90#define HID2_LET 0x08000000
91#define HID2_HBE 0x00040000
92#define HID2_IWLCK_000 0x00000000 /* no ways locked */
93#define HID2_IWLCK_001 0x00002000 /* way 0 locked */
94#define HID2_IWLCK_010 0x00004000 /* way 0 through way 1 locked */
95#define HID2_IWLCK_011 0x00006000 /* way 0 through way 2 locked */
96#define HID2_IWLCK_100 0x00008000 /* way 0 through way 3 locked */
97#define HID2_IWLCK_101 0x0000A000 /* way 0 through way 4 locked */
98#define HID2_IWLCK_110 0x0000C000 /* way 0 through way 5 locked */
99
100
101/* BAT (block address translation */
102#define BATU_BEPI_MSK 0xfffe0000
103#define BATU_BL_MSK 0x00001ffc
104
105#define BATU_BL_128K 0x00000000
106#define BATU_BL_256K 0x00000004
107#define BATU_BL_512K 0x0000000c
108#define BATU_BL_1M 0x0000001c
109#define BATU_BL_2M 0x0000003c
110#define BATU_BL_4M 0x0000007c
111#define BATU_BL_8M 0x000000fc
112#define BATU_BL_16M 0x000001fc
113#define BATU_BL_32M 0x000003fc
114#define BATU_BL_64M 0x000007fc
115#define BATU_BL_128M 0x00000ffc
116#define BATU_BL_256M 0x00001ffc
117
118#define BATU_VS 0x00000002
119#define BATU_VP 0x00000001
120
121#define BATL_BRPN_MSK 0xfffe0000
122#define BATL_WIMG_MSK 0x00000078
123
124#define BATL_WRITETHROUGH 0x00000040
125#define BATL_CACHEINHIBIT 0x00000020
126#define BATL_MEMCOHERENCE 0x00000010
127#define BATL_GUARDEDSTORAGE 0x00000008
128
129#define BATL_PP_MSK 0x00000003
130#define BATL_PP_00 0x00000000 /* No access */
131#define BATL_PP_01 0x00000001 /* Read-only */
132#define BATL_PP_10 0x00000002 /* Read-write */
133#define BATL_PP_11 0x00000003
134
135#endif /* __E300_H__ */