arm, davinci: add PLL0 prediv to da850 lowlevel setup
The OMAP-L138 has a pre-divider available on PLL0. Add support to da850_lowlevel.c for configuring PLL0's pre-divider. This is to achieve certain OPP's -- e.g. the 372MHz OPP used also by Linux. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Cc: Christian Riesch <christian.riesch@omicron.at> CC: Heiko Schocher <hs@denx.de> Cc: Sandeep Paulraj <s-paulraj@ti.com> Cc: Tom Rini <tom.rini@gmail.com> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net> Acked-by: Heiko Schocher <hs@denx.de> Acked-by: Christian Riesch <christian.riesch@omicron.at>
This commit is contained in:
		
							parent
							
								
									bd29cb05f2
								
							
						
					
					
						commit
						d652a344a0
					
				|  | @ -85,6 +85,13 @@ int da850_pll_init(struct davinci_pllc_regs *reg, unsigned long pllmult) | |||
| 	/* Enable the PLL from Disable Mode PLLDIS bit to 0 */ | ||||
| 	clrbits_le32(®->pllctl, PLLCTL_PLLDIS); | ||||
| 
 | ||||
| #if defined(CONFIG_SYS_DA850_PLL0_PREDIV) | ||||
| 	/* program the prediv */ | ||||
| 	if (reg == davinci_pllc0_regs && CONFIG_SYS_DA850_PLL0_PREDIV) | ||||
| 		writel((PLL_DIVEN | CONFIG_SYS_DA850_PLL0_PREDIV), | ||||
| 			®->prediv); | ||||
| #endif | ||||
| 
 | ||||
| 	/* Program the required multiplier value in PLLM */ | ||||
| 	writel(pllmult, ®->pllm); | ||||
| 
 | ||||
|  |  | |||
|  | @ -68,7 +68,8 @@ struct dv_pll_regs { | |||
| #define PLLCTL_RES_9	(1 << 8) | ||||
| #define PLLCTL_EXTCLKSRC	(1 << 9) | ||||
| 
 | ||||
| #define PLL_POSTDEN	(1 << 15) | ||||
| #define PLL_DIVEN	(1 << 15) | ||||
| #define PLL_POSTDEN	PLL_DIVEN | ||||
| 
 | ||||
| #define PLL_SCSCFG3_DIV45PENA	(1 << 2) | ||||
| #define PLL_SCSCFG3_EMA_CLKSRC	(1 << 1) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue