|
@@ -0,0 +1,88 @@
|
|
|
+/*
|
|
|
+ * Copyright 2004-2007 Freescale Semiconductor, Inc. All Rights Reserved.
|
|
|
+ * Copyright (C) 2008 by Sascha Hauer <kernel@pengutronix.de>
|
|
|
+ *
|
|
|
+ * This program is free software; you can redistribute it and/or
|
|
|
+ * modify it under the terms of the GNU General Public License
|
|
|
+ * as published by the Free Software Foundation; either version 2
|
|
|
+ * of the License, or (at your option) any later version.
|
|
|
+ * This program is distributed in the hope that it will be useful,
|
|
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
+ * GNU General Public License for more details.
|
|
|
+ *
|
|
|
+ * You should have received a copy of the GNU General Public License
|
|
|
+ * along with this program; if not, write to the Free Software
|
|
|
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
|
|
+ * MA 02110-1301, USA.
|
|
|
+ */
|
|
|
+
|
|
|
+#ifndef __ARCH_ARM_MACH_MX3_CRM_REGS_H__
|
|
|
+#define __ARCH_ARM_MACH_MX3_CRM_REGS_H__
|
|
|
+
|
|
|
+#define CKIH_CLK_FREQ 26000000
|
|
|
+#define CKIH_CLK_FREQ_27MHZ 27000000
|
|
|
+#define CKIL_CLK_FREQ 32768
|
|
|
+
|
|
|
+extern void __iomem *mx3_ccm_base;
|
|
|
+
|
|
|
+/* Register addresses */
|
|
|
+#define MXC_CCM_CCMR 0x00
|
|
|
+#define MXC_CCM_PDR0 0x04
|
|
|
+#define MXC_CCM_PDR1 0x08
|
|
|
+#define MX35_CCM_PDR2 0x0C
|
|
|
+#define MXC_CCM_RCSR 0x0C
|
|
|
+#define MX35_CCM_PDR3 0x10
|
|
|
+#define MXC_CCM_MPCTL 0x10
|
|
|
+#define MX35_CCM_PDR4 0x14
|
|
|
+#define MXC_CCM_UPCTL 0x14
|
|
|
+#define MX35_CCM_RCSR 0x18
|
|
|
+#define MXC_CCM_SRPCTL 0x18
|
|
|
+#define MX35_CCM_MPCTL 0x1C
|
|
|
+#define MXC_CCM_COSR 0x1C
|
|
|
+#define MX35_CCM_PPCTL 0x20
|
|
|
+#define MXC_CCM_CGR0 0x20
|
|
|
+#define MX35_CCM_ACMR 0x24
|
|
|
+#define MXC_CCM_CGR1 0x24
|
|
|
+#define MX35_CCM_COSR 0x28
|
|
|
+#define MXC_CCM_CGR2 0x28
|
|
|
+#define MX35_CCM_CGR0 0x2C
|
|
|
+#define MXC_CCM_WIMR 0x2C
|
|
|
+#define MX35_CCM_CGR1 0x30
|
|
|
+#define MXC_CCM_LDC 0x30
|
|
|
+#define MX35_CCM_CGR2 0x34
|
|
|
+#define MXC_CCM_DCVR0 0x34
|
|
|
+#define MX35_CCM_CGR3 0x38
|
|
|
+#define MXC_CCM_DCVR1 0x38
|
|
|
+#define MXC_CCM_DCVR2 0x3C
|
|
|
+#define MXC_CCM_DCVR3 0x40
|
|
|
+#define MXC_CCM_LTR0 0x44
|
|
|
+#define MXC_CCM_LTR1 0x48
|
|
|
+#define MXC_CCM_LTR2 0x4C
|
|
|
+#define MXC_CCM_LTR3 0x50
|
|
|
+#define MXC_CCM_LTBR0 0x54
|
|
|
+#define MXC_CCM_LTBR1 0x58
|
|
|
+#define MXC_CCM_PMCR0 0x5C
|
|
|
+#define MXC_CCM_PMCR1 0x60
|
|
|
+#define MXC_CCM_PDR2 0x64
|
|
|
+
|
|
|
+/* Register bit definitions */
|
|
|
+#define MXC_CCM_CCMR_WBEN (1 << 27)
|
|
|
+#define MXC_CCM_CCMR_CSCS (1 << 25)
|
|
|
+#define MXC_CCM_CCMR_PERCS (1 << 24)
|
|
|
+#define MXC_CCM_CCMR_SSI1S_OFFSET 18
|
|
|
+#define MXC_CCM_CCMR_SSI1S_MASK (0x3 << 18)
|
|
|
+#define MXC_CCM_CCMR_SSI2S_OFFSET 21
|
|
|
+#define MXC_CCM_CCMR_SSI2S_MASK (0x3 << 21)
|
|
|
+#define MXC_CCM_CCMR_LPM_OFFSET 14
|
|
|
+#define MXC_CCM_CCMR_LPM_MASK (0x3 << 14)
|
|
|
+#define MXC_CCM_CCMR_LPM_WAIT_MX35 (0x1 << 14)
|
|
|
+#define MXC_CCM_CCMR_FIRS_OFFSET 11
|
|
|
+#define MXC_CCM_CCMR_FIRS_MASK (0x3 << 11)
|
|
|
+#define MXC_CCM_CCMR_UPE (1 << 9)
|
|
|
+#define MXC_CCM_CCMR_SPE (1 << 8)
|
|
|
+#define MXC_CCM_CCMR_MDS (1 << 7)
|
|
|
+#define MXC_CCM_CCMR_SBYCS (1 << 4)
|
|
|
+#define MXC_CCM_CCMR_MPE (1 << 3)
|
|
|
+#define MXC_CCM_CCMR_PRCS_OFFSET 1
|
|
|
+#define MXC_CCM_CCMR_PRCS_MASK (0x3 << 1)
|