diff options
Diffstat (limited to 'arch/arm/cpu')
| -rw-r--r-- | arch/arm/cpu/arm720t/tegra-common/cpu.c | 5 | ||||
| -rw-r--r-- | arch/arm/cpu/arm720t/tegra124/cpu.c | 4 | ||||
| -rw-r--r-- | arch/arm/cpu/arm926ejs/at91/at91sam9263_devices.c | 25 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/am33xx/clock_am43xx.c | 1 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/am33xx/ddr.c | 5 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/am33xx/emif4.c | 2 | ||||
| -rw-r--r-- | arch/arm/cpu/at91-common/spl.c | 4 | 
7 files changed, 38 insertions, 8 deletions
| diff --git a/arch/arm/cpu/arm720t/tegra-common/cpu.c b/arch/arm/cpu/arm720t/tegra-common/cpu.c index 2c5cd6391..168f525ec 100644 --- a/arch/arm/cpu/arm720t/tegra-common/cpu.c +++ b/arch/arm/cpu/arm720t/tegra-common/cpu.c @@ -378,8 +378,7 @@ void clock_enable_coresight(int enable)  void halt_avp(void)  {  	for (;;) { -		writel((HALT_COP_EVENT_JTAG | HALT_COP_EVENT_IRQ_1 \ -			| HALT_COP_EVENT_FIQ_1 | (FLOW_MODE_STOP<<29)), -			FLOW_CTLR_HALT_COP_EVENTS); +		writel(HALT_COP_EVENT_JTAG | (FLOW_MODE_STOP << 29), +		       FLOW_CTLR_HALT_COP_EVENTS);  	}  } diff --git a/arch/arm/cpu/arm720t/tegra124/cpu.c b/arch/arm/cpu/arm720t/tegra124/cpu.c index c03aaf17e..97f5928bd 100644 --- a/arch/arm/cpu/arm720t/tegra124/cpu.c +++ b/arch/arm/cpu/arm720t/tegra124/cpu.c @@ -252,8 +252,8 @@ void start_cpu(u32 reset_vector)  	tegra124_init_clocks();  	/* Set power-gating timer multiplier */ -	clrbits_le32(&pmc->pmc_pwrgate_timer_mult, TIMER_MULT_MASK); -	setbits_le32(&pmc->pmc_pwrgate_timer_mult, MULT_8); +	writel((MULT_8 << TIMER_MULT_SHIFT) | (MULT_8 << TIMER_MULT_CPU_SHIFT), +	       &pmc->pmc_pwrgate_timer_mult);  	enable_cpu_power_rail();  	enable_cpu_clocks(); diff --git a/arch/arm/cpu/arm926ejs/at91/at91sam9263_devices.c b/arch/arm/cpu/arm926ejs/at91/at91sam9263_devices.c index 99a39134d..6b51d5f35 100644 --- a/arch/arm/cpu/arm926ejs/at91/at91sam9263_devices.c +++ b/arch/arm/cpu/arm926ejs/at91/at91sam9263_devices.c @@ -143,6 +143,31 @@ void at91_spi1_hw_init(unsigned long cs_mask)  }  #endif +#if defined(CONFIG_GENERIC_ATMEL_MCI) +void at91_mci_hw_init(void) +{ +	/* Enable mci clock */ +	struct at91_pmc *pmc = (struct at91_pmc *)ATMEL_BASE_PMC; +	writel(1 << ATMEL_ID_MCI1, &pmc->pcer); + +	at91_set_a_periph(AT91_PIO_PORTA, 6, PUP);	/* MCI1_CK */ + +#if defined(CONFIG_ATMEL_MCI_PORTB) +	at91_set_a_periph(AT91_PIO_PORTA, 21, PUP);	/* MCI1_CDB */ +	at91_set_a_periph(AT91_PIO_PORTA, 22, PUP);	/* MCI1_DB0 */ +	at91_set_a_periph(AT91_PIO_PORTA, 23, PUP);	/* MCI1_DB1 */ +	at91_set_a_periph(AT91_PIO_PORTA, 24, PUP);	/* MCI1_DB2 */ +	at91_set_a_periph(AT91_PIO_PORTA, 25, PUP);	/* MCI1_DB3 */ +#else +	at91_set_a_periph(AT91_PIO_PORTA, 7, PUP);	/* MCI1_CDA */ +	at91_set_a_periph(AT91_PIO_PORTA, 8, PUP);	/* MCI1_DA0 */ +	at91_set_a_periph(AT91_PIO_PORTA, 9, PUP);	/* MCI1_DA1 */ +	at91_set_a_periph(AT91_PIO_PORTA, 10, PUP);	/* MCI1_DA2 */ +	at91_set_a_periph(AT91_PIO_PORTA, 11, PUP);	/* MCI1_DA3 */ +#endif +} +#endif +  #ifdef CONFIG_MACB  void at91_macb_hw_init(void)  { diff --git a/arch/arm/cpu/armv7/am33xx/clock_am43xx.c b/arch/arm/cpu/armv7/am33xx/clock_am43xx.c index 57f594947..d0bc2340c 100644 --- a/arch/arm/cpu/armv7/am33xx/clock_am43xx.c +++ b/arch/arm/cpu/armv7/am33xx/clock_am43xx.c @@ -97,6 +97,7 @@ void enable_basic_clocks(void)  		&cmper->gpio4clkctrl,  		&cmper->gpio5clkctrl,  		&cmper->i2c1clkctrl, +		&cmper->cpgmac0clkctrl,  		&cmper->emiffwclkctrl,  		&cmper->emifclkctrl,  		&cmper->otfaemifclkctrl, diff --git a/arch/arm/cpu/armv7/am33xx/ddr.c b/arch/arm/cpu/armv7/am33xx/ddr.c index d05e666a7..9a625c466 100644 --- a/arch/arm/cpu/armv7/am33xx/ddr.c +++ b/arch/arm/cpu/armv7/am33xx/ddr.c @@ -80,8 +80,8 @@ static void configure_mr(int nr, u32 cs)   */  void config_sdram_emif4d5(const struct emif_regs *regs, int nr)  { -	writel(0x0, &emif_reg[nr]->emif_pwr_mgmt_ctrl); -	writel(0x0, &emif_reg[nr]->emif_pwr_mgmt_ctrl_shdw); +	writel(0xA0, &emif_reg[nr]->emif_pwr_mgmt_ctrl); +	writel(0xA0, &emif_reg[nr]->emif_pwr_mgmt_ctrl_shdw);  	writel(0x1, &emif_reg[nr]->emif_iodft_tlgc);  	writel(regs->zq_config, &emif_reg[nr]->emif_zq_config); @@ -96,6 +96,7 @@ void config_sdram_emif4d5(const struct emif_regs *regs, int nr)  	writel(regs->ref_ctrl, &emif_reg[nr]->emif_sdram_ref_ctrl);  	writel(regs->sdram_config, &emif_reg[nr]->emif_sdram_config); +	writel(regs->sdram_config, &cstat->secure_emif_sdram_config);  	if (emif_sdram_type() == EMIF_SDRAM_TYPE_LPDDR2) {  		configure_mr(nr, 0); diff --git a/arch/arm/cpu/armv7/am33xx/emif4.c b/arch/arm/cpu/armv7/am33xx/emif4.c index d28fceb75..3e3975238 100644 --- a/arch/arm/cpu/armv7/am33xx/emif4.c +++ b/arch/arm/cpu/armv7/am33xx/emif4.c @@ -113,7 +113,7 @@ void config_ddr(unsigned int pll, const struct ctrl_ioregs *ioregs,  	writel(readl(&cm_device->cm_dll_ctrl) & ~0x1, &cm_device->cm_dll_ctrl);  	while ((readl(&cm_device->cm_dll_ctrl) && CM_DLL_READYST) == 0)  		; -	writel(0x0, &ddrctrl->ddrioctrl); +	writel(0x80000000, &ddrctrl->ddrioctrl);  	config_io_ctrl(ioregs); diff --git a/arch/arm/cpu/at91-common/spl.c b/arch/arm/cpu/at91-common/spl.c index 37c0cc4be..7f4debb91 100644 --- a/arch/arm/cpu/at91-common/spl.c +++ b/arch/arm/cpu/at91-common/spl.c @@ -52,6 +52,10 @@ u32 spl_boot_device(void)  {  #ifdef CONFIG_SYS_USE_MMC  	return BOOT_DEVICE_MMC1; +#elif CONFIG_SYS_USE_NANDFLASH +	return BOOT_DEVICE_NAND; +#elif CONFIG_SYS_USE_SERIALFLASH +	return BOOT_DEVICE_SPI;  #endif  	return BOOT_DEVICE_NONE;  } |