diff options
Diffstat (limited to 'arch/arm/include')
| -rw-r--r-- | arch/arm/include/asm/arch-am33xx/cpu.h | 74 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-am33xx/hardware_am33xx.h | 7 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-am33xx/omap.h | 2 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap3/clock.h | 2 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap4/clock.h | 7 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap4/omap.h | 1 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap5/omap.h | 11 | ||||
| -rw-r--r-- | arch/arm/include/asm/omap_common.h | 1 | 
8 files changed, 99 insertions, 6 deletions
| diff --git a/arch/arm/include/asm/arch-am33xx/cpu.h b/arch/arm/include/asm/arch-am33xx/cpu.h index 10b56e0db..73e6db899 100644 --- a/arch/arm/include/asm/arch-am33xx/cpu.h +++ b/arch/arm/include/asm/arch-am33xx/cpu.h @@ -46,6 +46,26 @@  #define PRM_RSTCTRL_RESET		0x01  #define PRM_RSTST_WARM_RESET_MASK	0x232 +/* + * Watchdog: + * Using the prescaler, the OMAP watchdog could go for many + * months before firing.  These limits work without scaling, + * with the 60 second default assumed by most tools and docs. + */ +#define TIMER_MARGIN_MAX	(24 * 60 * 60)	/* 1 day */ +#define TIMER_MARGIN_DEFAULT	60	/* 60 secs */ +#define TIMER_MARGIN_MIN	1 + +#define PTV			0	/* prescale */ +#define GET_WLDR_VAL(secs)	(0xffffffff - ((secs) * (32768/(1<<PTV))) + 1) +#define WDT_WWPS_PEND_WCLR	BIT(0) +#define WDT_WWPS_PEND_WLDR	BIT(2) +#define WDT_WWPS_PEND_WTGR	BIT(3) +#define WDT_WWPS_PEND_WSPR	BIT(4) + +#define WDT_WCLR_PRE		BIT(5) +#define WDT_WCLR_PTV_OFF	2 +  #ifndef __KERNEL_STRICT_NAMES  #ifndef __ASSEMBLY__  struct gpmc_cs { @@ -193,7 +213,8 @@ struct cm_perpll {  	unsigned int dcan1clkctrl;	/* offset 0xC4 */  	unsigned int resv6[2];  	unsigned int emiffwclkctrl;	/* offset 0xD0 */ -	unsigned int resv7[2]; +	unsigned int epwmss0clkctrl;	/* offset 0xD4 */ +	unsigned int epwmss2clkctrl;	/* offset 0xD8 */  	unsigned int l3instrclkctrl;	/* offset 0xDC */  	unsigned int l3clkctrl;		/* Offset 0xE0 */  	unsigned int resv8[4]; @@ -204,6 +225,7 @@ struct cm_perpll {  	unsigned int l4hsclkctrl;	/* offset 0x120 */  	unsigned int resv10[8];  	unsigned int cpswclkstctrl;	/* offset 0x144 */ +	unsigned int lcdcclkstctrl;	/* offset 0x148 */  };  #else  /* Encapsulating core pll registers */ @@ -366,6 +388,8 @@ struct cm_perpll {  struct cm_dpll {  	unsigned int resv1[2];  	unsigned int clktimer2clk;	/* offset 0x08 */ +	unsigned int resv2[10]; +	unsigned int clklcdcpixelclk;	/* offset 0x34 */  };  /* Control Module RTC registers */ @@ -486,6 +510,54 @@ struct ctrl_dev {  	unsigned int resv4[4];  	unsigned int miisel;		/* offset 0x50 */  }; + +/* gmii_sel register defines */ +#define GMII1_SEL_MII		0x0 +#define GMII1_SEL_RMII		0x1 +#define GMII1_SEL_RGMII		0x2 +#define GMII2_SEL_MII		0x0 +#define GMII2_SEL_RMII		0x4 +#define GMII2_SEL_RGMII		0x8 +#define RGMII1_IDMODE		BIT(4) +#define RGMII2_IDMODE		BIT(5) +#define RMII1_IO_CLK_EN		BIT(6) +#define RMII2_IO_CLK_EN		BIT(7) + +#define MII_MODE_ENABLE		(GMII1_SEL_MII | GMII2_SEL_MII) +#define RMII_MODE_ENABLE        (GMII1_SEL_RMII | GMII2_SEL_RMII) +#define RGMII_MODE_ENABLE	(GMII1_SEL_RGMII | GMII2_SEL_RGMII) +#define RGMII_INT_DELAY		(RGMII1_IDMODE | RGMII2_IDMODE) +#define RMII_CHIPCKL_ENABLE     (RMII1_IO_CLK_EN | RMII2_IO_CLK_EN) + +/* PWMSS */ +struct pwmss_regs { +	unsigned int idver; +	unsigned int sysconfig; +	unsigned int clkconfig; +	unsigned int clkstatus; +}; +#define ECAP_CLK_EN		BIT(0) +#define ECAP_CLK_STOP_REQ	BIT(1) + +struct pwmss_ecap_regs { +	unsigned int tsctr; +	unsigned int ctrphs; +	unsigned int cap1; +	unsigned int cap2; +	unsigned int cap3; +	unsigned int cap4; +	unsigned int resv1[4]; +	unsigned short ecctl1; +	unsigned short ecctl2; +}; + +/* Capture Control register 2 */ +#define ECTRL2_SYNCOSEL_MASK	(0x03 << 6) +#define ECTRL2_MDSL_ECAP	BIT(9) +#define ECTRL2_CTRSTP_FREERUN	BIT(4) +#define ECTRL2_PLSL_LOW		BIT(10) +#define ECTRL2_SYNC_EN		BIT(5) +  #endif /* __ASSEMBLY__ */  #endif /* __KERNEL_STRICT_NAMES */ diff --git a/arch/arm/include/asm/arch-am33xx/hardware_am33xx.h b/arch/arm/include/asm/arch-am33xx/hardware_am33xx.h index 8973fd884..e4231c81a 100644 --- a/arch/arm/include/asm/arch-am33xx/hardware_am33xx.h +++ b/arch/arm/include/asm/arch-am33xx/hardware_am33xx.h @@ -58,4 +58,11 @@  #define USB0_OTG_BASE			0x47401000  #define USB1_OTG_BASE			0x47401800 +/* LCD Controller */ +#define LCD_CNTL_BASE			0x4830E000 + +/* PWMSS */ +#define PWMSS0_BASE			0x48300000 +#define AM33XX_ECAP0_BASE		0x48300100 +  #endif /* __AM33XX_HARDWARE_AM33XX_H */ diff --git a/arch/arm/include/asm/arch-am33xx/omap.h b/arch/arm/include/asm/arch-am33xx/omap.h index 1f8431196..225072186 100644 --- a/arch/arm/include/asm/arch-am33xx/omap.h +++ b/arch/arm/include/asm/arch-am33xx/omap.h @@ -18,7 +18,7 @@  #ifdef CONFIG_AM33XX  #define NON_SECURE_SRAM_START	0x402F0400  #define NON_SECURE_SRAM_END	0x40310000 -#define SRAM_SCRATCH_SPACE_ADDR	0x4030C000 +#define SRAM_SCRATCH_SPACE_ADDR	0x4030B800  #elif defined(CONFIG_TI81XX)  #define NON_SECURE_SRAM_START	0x40300000  #define NON_SECURE_SRAM_END	0x40320000 diff --git a/arch/arm/include/asm/arch-omap3/clock.h b/arch/arm/include/asm/arch-omap3/clock.h index 514839c77..be669c156 100644 --- a/arch/arm/include/asm/arch-omap3/clock.h +++ b/arch/arm/include/asm/arch-omap3/clock.h @@ -63,6 +63,4 @@ extern dpll_param *get_36x_core_dpll_param(void);  extern dpll_param *get_36x_per_dpll_param(void);  extern dpll_param *get_36x_per2_dpll_param(void); -extern void *_end_vect, *_start; -  #endif diff --git a/arch/arm/include/asm/arch-omap4/clock.h b/arch/arm/include/asm/arch-omap4/clock.h index b2e03d6e1..f3a682a19 100644 --- a/arch/arm/include/asm/arch-omap4/clock.h +++ b/arch/arm/include/asm/arch-omap4/clock.h @@ -149,11 +149,16 @@  /* PRM_VC_VAL_BYPASS */  #define PRM_VC_I2C_CHANNEL_FREQ_KHZ	400 -/* SMPS */ +/* PMIC */  #define SMPS_I2C_SLAVE_ADDR	0x12 +/* TWL6030 SMPS */  #define SMPS_REG_ADDR_VCORE1	0x55  #define SMPS_REG_ADDR_VCORE2	0x5B  #define SMPS_REG_ADDR_VCORE3	0x61 +/* TWL6032 SMPS */ +#define SMPS_REG_ADDR_SMPS1	0x55 +#define SMPS_REG_ADDR_SMPS2	0x5B +#define SMPS_REG_ADDR_SMPS5	0x49  #define PHOENIX_SMPS_BASE_VOLT_STD_MODE_UV		607700  #define PHOENIX_SMPS_BASE_VOLT_STD_MODE_WITH_OFFSET_UV	709000 diff --git a/arch/arm/include/asm/arch-omap4/omap.h b/arch/arm/include/asm/arch-omap4/omap.h index 3823a37f2..9129c0dd7 100644 --- a/arch/arm/include/asm/arch-omap4/omap.h +++ b/arch/arm/include/asm/arch-omap4/omap.h @@ -41,6 +41,7 @@  #define OMAP4_CONTROL_ID_CODE_ES2_3	0x6B95C02F  #define OMAP4460_CONTROL_ID_CODE_ES1_0	0x0B94E02F  #define OMAP4460_CONTROL_ID_CODE_ES1_1	0x2B94E02F +#define OMAP4470_CONTROL_ID_CODE_ES1_0	0x0B97502F  /* UART */  #define UART1_BASE		(OMAP44XX_L4_PER_BASE + 0x6a000) diff --git a/arch/arm/include/asm/arch-omap5/omap.h b/arch/arm/include/asm/arch-omap5/omap.h index 597c692b9..e9a51d340 100644 --- a/arch/arm/include/asm/arch-omap5/omap.h +++ b/arch/arm/include/asm/arch-omap5/omap.h @@ -153,6 +153,15 @@ struct s32ktimer {  #define EFUSE_4 0x45145100  #endif /* __ASSEMBLY__ */ +/* + * In all cases, the TRM defines the RAM Memory Map for the processor + * and indicates the area for the downloaded image.  We use all of that + * space for download and once up and running may use other parts of the + * map for our needs.  We set a scratch space that is at the end of the + * OMAP5 download area, but within the DRA7xx download area (as it is + * much larger) and do not, at this time, make use of the additional + * space. + */  #ifdef CONFIG_DRA7XX  #define NON_SECURE_SRAM_START	0x40300000  #define NON_SECURE_SRAM_END	0x40380000	/* Not inclusive */ @@ -160,7 +169,7 @@ struct s32ktimer {  #define NON_SECURE_SRAM_START	0x40300000  #define NON_SECURE_SRAM_END	0x40320000	/* Not inclusive */  #endif -#define SRAM_SCRATCH_SPACE_ADDR	NON_SECURE_SRAM_START +#define SRAM_SCRATCH_SPACE_ADDR	0x4031E000  /* base address for indirect vectors (internal boot mode) */  #define SRAM_ROM_VECT_BASE	0x4031F000 diff --git a/arch/arm/include/asm/omap_common.h b/arch/arm/include/asm/omap_common.h index 66f416f99..5e2f027ba 100644 --- a/arch/arm/include/asm/omap_common.h +++ b/arch/arm/include/asm/omap_common.h @@ -622,6 +622,7 @@ static inline u8 is_omap54xx(void)  #define OMAP4430_ES2_3	0x44300230  #define OMAP4460_ES1_0	0x44600100  #define OMAP4460_ES1_1	0x44600110 +#define OMAP4470_ES1_0	0x44700100  /* omap5 */  #define OMAP5430_SILICON_ID_INVALID	0 |