diff options
Diffstat (limited to 'arch/arm/include/asm/arch-mx35')
| -rw-r--r-- | arch/arm/include/asm/arch-mx35/clock.h | 42 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-mx35/crm_regs.h | 52 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-mx35/gpio.h | 12 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-mx35/imx-regs.h | 31 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-mx35/mx35_pins.h | 3 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-mx35/sys_proto.h | 1 | 
6 files changed, 65 insertions, 76 deletions
| diff --git a/arch/arm/include/asm/arch-mx35/clock.h b/arch/arm/include/asm/arch-mx35/clock.h index 4c0ddfd44..eb7458a33 100644 --- a/arch/arm/include/asm/arch-mx35/clock.h +++ b/arch/arm/include/asm/arch-mx35/clock.h @@ -24,8 +24,22 @@  #ifndef __ASM_ARCH_CLOCK_H  #define __ASM_ARCH_CLOCK_H +#include <common.h> + +#ifdef CONFIG_MX35_HCLK_FREQ +#define MXC_HCLK	CONFIG_MX35_HCLK_FREQ +#else +#define MXC_HCLK	24000000 +#endif + +#ifdef CONFIG_MX35_CLK32 +#define MXC_CLK32	CONFIG_MX35_CLK32 +#else +#define MXC_CLK32	32768 +#endif +  enum mxc_clock { -	MXC_ARM_CLK = 0, +	MXC_ARM_CLK,  	MXC_AHB_CLK,  	MXC_IPG_CLK,  	MXC_IPG_PERCLK, @@ -36,7 +50,31 @@ enum mxc_clock {  	MXC_FEC_CLK,  }; -unsigned int imx_decode_pll(unsigned int pll, unsigned int f_ref); +enum mxc_main_clock { +	CPU_CLK, +	AHB_CLK, +	IPG_CLK, +	IPG_PER_CLK, +	NFC_CLK, +	USB_CLK, +	HSP_CLK, +}; + +enum mxc_peri_clock { +	UART1_BAUD, +	UART2_BAUD, +	UART3_BAUD, +	SSI1_BAUD, +	SSI2_BAUD, +	CSI_BAUD, +	MSHC_CLK, +	ESDHC1_CLK, +	ESDHC2_CLK, +	ESDHC3_CLK, +	SPDIF_CLK, +	SPI1_CLK, +	SPI2_CLK, +};  u32 imx_get_uartclk(void);  u32 imx_get_fecclk(void); diff --git a/arch/arm/include/asm/arch-mx35/crm_regs.h b/arch/arm/include/asm/arch-mx35/crm_regs.h index e903cf1c4..3fcde0ba5 100644 --- a/arch/arm/include/asm/arch-mx35/crm_regs.h +++ b/arch/arm/include/asm/arch-mx35/crm_regs.h @@ -32,8 +32,8 @@  #define MXC_CCM_CCMR_VOL_RDY_CNT_MASK          (0xF << 20)  #define MXC_CCM_CCMR_ROMW_OFFSET               18  #define MXC_CCM_CCMR_ROMW_MASK                 (0x3 << 18) -#define MXC_CCM_CCMR_RAMW_OFFSET               21 -#define MXC_CCM_CCMR_RAMW_MASK                 (0x3 << 21) +#define MXC_CCM_CCMR_RAMW_OFFSET               16 +#define MXC_CCM_CCMR_RAMW_MASK                 (0x3 << 16)  #define MXC_CCM_CCMR_LPM_OFFSET                 14  #define MXC_CCM_CCMR_LPM_MASK                   (0x3 << 14)  #define MXC_CCM_CCMR_UPE                        (1 << 9) @@ -47,7 +47,7 @@  #define MXC_CCM_PDR0_CON_MUX_DIV_MASK           (0xF << 16)  #define MXC_CCM_PDR0_CKIL_SEL			(1 << 15)  #define MXC_CCM_PDR0_PER_PODF_OFFSET            12 -#define MXC_CCM_PDR0_PER_PODF_MASK              (0xF << 12) +#define MXC_CCM_PDR0_PER_PODF_MASK              (0x7 << 12)  #define MXC_CCM_PDR0_AUTO_MUX_DIV_OFFSET        9  #define MXC_CCM_PDR0_AUTO_MUX_DIV_MASK          (0x7 << 9)  #define MXC_CCM_PDR0_AUTO_CON	                0x1 @@ -62,10 +62,8 @@  #define MXC_CCM_PDR2_SSI2_PRDF_MASK             (0x7 << 27)  #define MXC_CCM_PDR2_SSI1_PRDF_OFFSET           24  #define MXC_CCM_PDR2_SSI1_PRDF_MASK             (0x7 << 24) -#define MXC_CCM_PDR2_CSI_PRDF_OFFSET            19 -#define MXC_CCM_PDR2_CSI_PRDF_MASK              (0x7 << 19)  #define MXC_CCM_PDR2_CSI_PODF_OFFSET            16 -#define MXC_CCM_PDR2_CSI_PODF_MASK              (0x7 << 16) +#define MXC_CCM_PDR2_CSI_PODF_MASK              (0x3F << 16)  #define MXC_CCM_PDR2_SSI2_PODF_OFFSET           8  #define MXC_CCM_PDR2_SSI2_PODF_MASK             (0x3F << 8)  #define MXC_CCM_PDR2_CSI_M_U			(1 << 7) @@ -78,35 +76,23 @@  #define MXC_CCM_PDR3_SPDIF_PODF_OFFSET          23  #define MXC_CCM_PDR3_SPDIF_PODF_MASK            (0x3F << 23)  #define MXC_CCM_PDR3_SPDIF_M_U			(1 << 22) -#define MXC_CCM_PDR3_ESDHC3_PRDF_OFFSET         19 -#define MXC_CCM_PDR3_ESDHC3_PRDF_MASK           (0x7 << 19)  #define MXC_CCM_PDR3_ESDHC3_PODF_OFFSET         16 -#define MXC_CCM_PDR3_ESDHC3_PODF_MASK           (0x7 << 16) -#define MXC_CCM_PDR3_UART_M_U			(1 << 15) -#define MXC_CCM_PDR3_ESDHC2_PRDF_OFFSET         11 -#define MXC_CCM_PDR3_ESDHC2_PRDF_MASK           (0x7 << 11) +#define MXC_CCM_PDR3_ESDHC3_PODF_MASK           (0x3F << 16) +#define MXC_CCM_PDR3_UART_M_U			(1 << 14)  #define MXC_CCM_PDR3_ESDHC2_PODF_OFFSET         8 -#define MXC_CCM_PDR3_ESDHC2_PODF_MASK           (0x7 << 8) +#define MXC_CCM_PDR3_ESDHC2_PODF_MASK           (0x3F << 8)  #define MXC_CCM_PDR3_ESDHC_M_U			(1 << 6) -#define MXC_CCM_PDR3_ESDHC1_PRDF_OFFSET         3 -#define MXC_CCM_PDR3_ESDHC1_PRDF_MASK           (0x7 << 3)  #define MXC_CCM_PDR3_ESDHC1_PODF_OFFSET         0 -#define MXC_CCM_PDR3_ESDHC1_PODF_MASK           (0x7) +#define MXC_CCM_PDR3_ESDHC1_PODF_MASK           (0x3F)  #define MXC_CCM_PDR4_NFC_PODF_OFFSET		28  #define MXC_CCM_PDR4_NFC_PODF_MASK		(0xF << 28) -#define MXC_CCM_PDR4_USB_PRDF_OFFSET		25 -#define MXC_CCM_PDR4_USB_PRDF_MASK		(0x7 << 25)  #define MXC_CCM_PDR4_USB_PODF_OFFSET		22 -#define MXC_CCM_PDR4_USB_PODF_MASK		(0x7 << 22) -#define MXC_CCM_PDR4_PER0_PRDF_OFFSET		19 -#define MXC_CCM_PDR4_PER0_PRDF_MASK		(0x7 << 19) +#define MXC_CCM_PDR4_USB_PODF_MASK		(0x3F << 22)  #define MXC_CCM_PDR4_PER0_PODF_OFFSET		16 -#define MXC_CCM_PDR4_PER0_PODF_MASK		(0x7 << 16) -#define MXC_CCM_PDR4_UART_PRDF_OFFSET		13 -#define MXC_CCM_PDR4_UART_PRDF_MASK		(0x7 << 13) +#define MXC_CCM_PDR4_PER0_PODF_MASK		(0x3F << 16)  #define MXC_CCM_PDR4_UART_PODF_OFFSET		10 -#define MXC_CCM_PDR4_UART_PODF_MASK		(0x7 << 10) +#define MXC_CCM_PDR4_UART_PODF_MASK		(0x3F << 10)  #define MXC_CCM_PDR4_USB_M_U			(1 << 9)  /* Bit definitions for RCSR */ @@ -144,6 +130,12 @@  #define MXC_CCM_ACMR_SSI2_CLK_SEL_MASK		(0xF << 0)  /* Bit definitions for Clock gating Register*/ +#define MXC_CCM_CGR_CG_MASK			0x3 +#define MXC_CCM_CGR_CG_OFF			0x0 +#define MXC_CCM_CGR_CG_RUN_ON			0x1 +#define MXC_CCM_CGR_CG_RUN_WAIT_ON		0x2 +#define MXC_CCM_CGR_CG_ON			0x3 +  #define MXC_CCM_CGR0_ASRC_OFFSET		0  #define MXC_CCM_CGR0_ASRC_MASK			(0x3 << 0)  #define MXC_CCM_CGR0_ATA_OFFSET			2 @@ -158,8 +150,8 @@  #define MXC_CCM_CGR0_CSPI2_MASK			(0x3 << 12)  #define MXC_CCM_CGR0_ECT_OFFSET			14  #define MXC_CCM_CGR0_ECT_MASK			(0x3 << 14) -#define MXC_CCM_CGR0_EDI0_OFFSET		16 -#define MXC_CCM_CGR0_EDI0_MASK			(0x3 << 16) +#define MXC_CCM_CGR0_EDIO_OFFSET		16 +#define MXC_CCM_CGR0_EDIO_MASK			(0x3 << 16)  #define MXC_CCM_CGR0_EMI_OFFSET			18  #define MXC_CCM_CGR0_EMI_MASK			(0x3 << 18)  #define MXC_CCM_CGR0_EPIT1_OFFSET		20 @@ -251,10 +243,8 @@  #define MXC_CCM_COSR_CLKOSEL_OFFSET		0  #define MXC_CCM_COSR_CLKOEN			(1 << 5)  #define MXC_CCM_COSR_CLKOUTDIV_1		(1 << 6) -#define MXC_CCM_COSR_CLKOUT_PREDIV_MASK		(0x7 << 10) -#define MXC_CCM_COSR_CLKOUT_PREDIV_OFFSET	10 -#define MXC_CCM_COSR_CLKOUT_PRODIV_MASK		(0x7 << 13) -#define MXC_CCM_COSR_CLKOUT_PRODIV_OFFSET	13 +#define MXC_CCM_COSR_CLKOUT_DIV_MASK		(0x3F << 10) +#define MXC_CCM_COSR_CLKOUT_DIV_OFFSET		10  #define MXC_CCM_COSR_SSI1_RX_SRC_SEL_MASK	(0x3 << 16)  #define MXC_CCM_COSR_SSI1_RX_SRC_SEL_OFFSET	16  #define MXC_CCM_COSR_SSI1_TX_SRC_SEL_MASK	(0x3 << 18) diff --git a/arch/arm/include/asm/arch-mx35/gpio.h b/arch/arm/include/asm/arch-mx35/gpio.h index 7bcc3e868..1deb2927a 100644 --- a/arch/arm/include/asm/arch-mx35/gpio.h +++ b/arch/arm/include/asm/arch-mx35/gpio.h @@ -25,16 +25,6 @@  #ifndef __ASM_ARCH_MX35_GPIO_H  #define __ASM_ARCH_MX35_GPIO_H -/* GPIO registers */ -struct gpio_regs { -	u32 gpio_dr;	/* data */ -	u32 gpio_dir;	/* direction */ -	u32 psr;	/* pad satus */ -	u32 icr1;	/* interrupt config 1 */ -	u32 icr2;	/* interrupt config 2 */ -	u32 imr;	/* interrupt mask */ -	u32 isr;	/* interrupt status */ -	u32 edge_sel;	/* edge select */ -}; +#include <asm/imx-common/gpio.h>  #endif diff --git a/arch/arm/include/asm/arch-mx35/imx-regs.h b/arch/arm/include/asm/arch-mx35/imx-regs.h index 314600621..2c6e59c32 100644 --- a/arch/arm/include/asm/arch-mx35/imx-regs.h +++ b/arch/arm/include/asm/arch-mx35/imx-regs.h @@ -25,6 +25,8 @@  #ifndef __ASM_ARCH_MX35_H  #define __ASM_ARCH_MX35_H +#define ARCH_MXC +  /*   * IRAM   */ @@ -72,7 +74,6 @@  #define MMC_SDHC2_BASE_ADDR	0x53FB8000  #define MMC_SDHC3_BASE_ADDR	0x53FBC000  #define IPU_CTRL_BASE_ADDR	0x53FC0000 -#define GPIO3_BASE_ADDR		0x53FA4000  #define GPIO1_BASE_ADDR		0x53FCC000  #define GPIO2_BASE_ADDR		0x53FD0000  #define SDMA_BASE_ADDR		0x53FD4000 @@ -177,7 +178,7 @@  #define IPU_CONF_PF_EN		(1<<3)  #define IPU_CONF_ROT_EN		(1<<2)  #define IPU_CONF_IC_EN		(1<<1) -#define IPU_CONF_SCI_EN		(1<<0) +#define IPU_CONF_CSI_EN		(1<<0)  /*   * CSPI register definitions @@ -216,32 +217,6 @@  #if !(defined(__KERNEL_STRICT_NAMES) || defined(__ASSEMBLY__))  #include <asm/types.h> -enum mxc_main_clocks { -	CPU_CLK, -	AHB_CLK, -	IPG_CLK, -	IPG_PER_CLK, -	NFC_CLK, -	USB_CLK, -	HSP_CLK, -}; - -enum mxc_peri_clocks { -	UART1_BAUD, -	UART2_BAUD, -	UART3_BAUD, -	SSI1_BAUD, -	SSI2_BAUD, -	CSI_BAUD, -	MSHC_CLK, -	ESDHC1_CLK, -	ESDHC2_CLK, -	ESDHC3_CLK, -	SPDIF_CLK, -	SPI1_CLK, -	SPI2_CLK, -}; -  /* Clock Control Module (CCM) registers */  struct ccm_regs {  	u32 ccmr;	/* Control */ diff --git a/arch/arm/include/asm/arch-mx35/mx35_pins.h b/arch/arm/include/asm/arch-mx35/mx35_pins.h index 8c3813911..00e5e7583 100644 --- a/arch/arm/include/asm/arch-mx35/mx35_pins.h +++ b/arch/arm/include/asm/arch-mx35/mx35_pins.h @@ -347,9 +347,6 @@ typedef enum iomux_pins {  	MX35_PIN_FEC_TDATA2 = _MXC_BUILD_GPIO_PIN(2, 21, 0x31C, 0x780),  	MX35_PIN_FEC_RDATA3 = _MXC_BUILD_GPIO_PIN(2, 22, 0x320, 0x784),  	MX35_PIN_FEC_TDATA3 = _MXC_BUILD_GPIO_PIN(2, 23, 0x324, 0x788), - -	MX35_PIN_RTS2_UART3_RXD_MUX = _MXC_BUILD_NON_GPIO_PIN(0x1a0, 0x5e4), -	MX35_PIN_CTS2_UART3_TXD_MUX = _MXC_BUILD_NON_GPIO_PIN(0x1a4, 0x5e8),  } iomux_pin_name_t;  #endif diff --git a/arch/arm/include/asm/arch-mx35/sys_proto.h b/arch/arm/include/asm/arch-mx35/sys_proto.h index 422eb520a..9c0d51321 100644 --- a/arch/arm/include/asm/arch-mx35/sys_proto.h +++ b/arch/arm/include/asm/arch-mx35/sys_proto.h @@ -26,6 +26,5 @@  u32 get_cpu_rev(void);  #define is_soc_rev(rev)	((get_cpu_rev() & 0xFF) - rev) -void sdelay(unsigned long);  #endif |