3 * (c) 2007 Pengutronix, Sascha Hauer <s.hauer@pengutronix.de>
5 * (C) Copyright 2008-2009 Freescale Semiconductor, Inc.
7 * See file CREDITS for list of people who contributed to this
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public License as
12 * published by the Free Software Foundation; either version 2 of
13 * the License, or (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
26 #ifndef __BOARD_MX35_3STACK_H
27 #define __BOARD_MX35_3STACK_H
29 #define UNALIGNED_ACCESS_ENABLE
30 #define LOW_INT_LATENCY_ENABLE
31 #define BRANCH_PREDICTION_ENABLE
33 #define L2CC_AUX_CTL_CONFIG 0x00030024
35 #define AIPS_MPR_CONFIG 0x77777777
36 #define AIPS_OPACR_CONFIG 0x00000000
38 /* MPR - priority is M4 > M2 > M3 > M5 > M0 > M1 */
39 #define MAX_MPR_CONFIG 0x00302154
40 /* SGPCR - always park on last master */
41 #define MAX_SGPCR_CONFIG 0x00000010
42 /* MGPCR - restore default values */
43 #define MAX_MGPCR_CONFIG 0x00000000
46 * M3IF Control Register (M3IFCTL)
47 * MRRP[0] = L2CC0 not on priority list (0 << 0) = 0x00000000
48 * MRRP[1] = L2CC1 not on priority list (0 << 0) = 0x00000000
49 * MRRP[2] = MBX not on priority list (0 << 0) = 0x00000000
50 * MRRP[3] = MAX1 not on priority list (0 << 0) = 0x00000000
51 * MRRP[4] = SDMA not on priority list (0 << 0) = 0x00000000
52 * MRRP[5] = MPEG4 not on priority list (0 << 0) = 0x00000000
53 * MRRP[6] = IPU1 on priority list (1 << 6) = 0x00000040
54 * MRRP[7] = IPU2 not on priority list (0 << 0) = 0x00000000
58 #define M3IF_CONFIG 0x00000040
60 #define DBG_BASE_ADDR WEIM_CTRL_CS5
61 #define DBG_CSCR_U_CONFIG 0x0000D843
62 #define DBG_CSCR_L_CONFIG 0x22252521
63 #define DBG_CSCR_A_CONFIG 0x22220A00
65 #define CCM_CCMR_CONFIG 0x003F4208
66 #define CCM_PDR0_CONFIG 0x00801000
68 #define PLL_BRM_OFFSET 31
69 #define PLL_PD_OFFSET 26
70 #define PLL_MFD_OFFSET 16
71 #define PLL_MFI_OFFSET 10
73 #define _PLL_BRM(x) ((x) << PLL_BRM_OFFSET)
74 #define _PLL_PD(x) (((x) - 1) << PLL_PD_OFFSET)
75 #define _PLL_MFD(x) (((x) - 1) << PLL_MFD_OFFSET)
76 #define _PLL_MFI(x) ((x) << PLL_MFI_OFFSET)
77 #define _PLL_MFN(x) (x)
78 #define _PLL_SETTING(brm, pd, mfd, mfi, mfn) \
79 (_PLL_BRM(brm) | _PLL_PD(pd) | _PLL_MFD(mfd) | _PLL_MFI(mfi) |\
82 #define CCM_MPLL_532_HZ _PLL_SETTING(1, 1, 12, 11, 1)
83 #define CCM_MPLL_399_HZ _PLL_SETTING(0, 1, 16, 8, 5)
84 #define CCM_PPLL_300_HZ _PLL_SETTING(0, 1, 4, 6, 1)
87 #define ESDCTL_0x92220000 0x92220000
88 #define ESDCTL_0xA2220000 0xA2220000
89 #define ESDCTL_0xB2220000 0xB2220000
90 #define ESDCTL_0x82228080 0x82228080
92 #define ESDCTL_PRECHARGE 0x00000400
94 #define ESDCTL_MDDR_CONFIG 0x007FFC3F
95 #define ESDCTL_MDDR_MR 0x00000033
96 #define ESDCTL_MDDR_EMR 0x02000000
98 #define ESDCTL_DDR2_CONFIG 0x007FFC3F
99 #define ESDCTL_DDR2_EMR2 0x04000000
100 #define ESDCTL_DDR2_EMR3 0x06000000
101 #define ESDCTL_DDR2_EN_DLL 0x02000400
102 #define ESDCTL_DDR2_RESET_DLL 0x00000333
103 #define ESDCTL_DDR2_MR 0x00000233
104 #define ESDCTL_DDR2_OCD_DEFAULT 0x02000780
106 #define ESDCTL_DELAY_LINE5 0x00F49F00
107 #endif /* __BOARD_MX35_3STACK_H */