diff options
| author | Wolfgang Denk <wd@nyx.denx.de> | 2006-10-11 14:15:21 +0200 | 
|---|---|---|
| committer | Wolfgang Denk <wd@nyx.denx.de> | 2006-10-11 14:15:21 +0200 | 
| commit | fb883a521e04437acfe989de3e152b2e4866856b (patch) | |
| tree | 0cf61f45ae693082b24ced9c1da9a87bdd0cabbd /board/tqm5200/tqm5200.c | |
| parent | 4a39616da41840bbc5b4c3f69df9861c2e6a8425 (diff) | |
| parent | 2255b2d2044d434463eb2661e18018e50f1643d9 (diff) | |
| download | olio-uboot-2014.01-fb883a521e04437acfe989de3e152b2e4866856b.tar.xz olio-uboot-2014.01-fb883a521e04437acfe989de3e152b2e4866856b.zip | |
Merge with /home/wd/git/u-boot/master
Diffstat (limited to 'board/tqm5200/tqm5200.c')
| -rw-r--r-- | board/tqm5200/tqm5200.c | 78 | 
1 files changed, 48 insertions, 30 deletions
| diff --git a/board/tqm5200/tqm5200.c b/board/tqm5200/tqm5200.c index c8350ab3b..1d81dce60 100644 --- a/board/tqm5200/tqm5200.c +++ b/board/tqm5200/tqm5200.c @@ -396,6 +396,7 @@ void ide_set_reset (int idereset)   */  int post_hotkeys_pressed(void)  { +#ifdef CONFIG_STK52XX  	struct mpc5xxx_gpio *gpio;  	gpio = (struct mpc5xxx_gpio*) MPC5XXX_GPIO; @@ -414,6 +415,9 @@ int post_hotkeys_pressed(void)  	gpio->simple_ddr &= ~(0x20000000);  	return ((gpio->simple_ival & 0x20000000) ? 0 : 1); +#else +	return 0; +#endif  }  #endif @@ -446,6 +450,43 @@ int board_early_init_r (void)  #endif  #endif /* CONFIG_PS2MULT */ +#ifdef CONFIG_FO300 +int silent_boot (void) +{ +	vu_long timer3_status; + +	/* Configure GPT3 as GPIO input */ +	*(vu_long *)MPC5XXX_GPT3_ENABLE = 0x00000004; + +	/* Read in TIMER_3 pin status */ +	timer3_status = *(vu_long *)MPC5XXX_GPT3_STATUS; + +#ifdef FO300_SILENT_CONSOLE_WHEN_S1_CLOSED +	/* Force silent console mode if S1 switch +	 * is in closed position (TIMER_3 pin status is LOW). */ +	if (MPC5XXX_GPT_GPIO_PIN(timer3_status) == 0) +		return 1; +#else +	/* Force silent console mode if S1 switch +	 * is in open position (TIMER_3 pin status is HIGH). */ +	if (MPC5XXX_GPT_GPIO_PIN(timer3_status) == 1) +		return 1; +#endif + +	return 0; +} + +int board_early_init_f (void) +{ +	DECLARE_GLOBAL_DATA_PTR; + +	if (silent_boot()) +		gd->flags |= GD_FLG_SILENT; + +	return 0; +} +#endif	/* CONFIG_FO300 */ +  int last_stage_init (void)  {  	/* @@ -538,6 +579,13 @@ int last_stage_init (void)  		__asm__ volatile ("sync");  	} +#ifdef CONFIG_FO300 +	if (silent_boot()) { +		setenv("bootdelay", "0"); +		disable_ctrlc(1); +	} +#endif +  	return 0;  } @@ -729,33 +777,3 @@ int board_get_height (void)  }  #endif /* CONFIG_VIDEO_SM501 */ - - -#ifdef CONFIG_BOARD_EARLY_INIT_F -#ifdef CONFIG_FO300 -int board_early_init_f (void) -{ -	vu_long timer3_status; -	DECLARE_GLOBAL_DATA_PTR; - -	/* Configure GPT3 as GPIO input */ -	*(vu_long *)MPC5XXX_GPT3_ENABLE = 0x00000004; - -	/* Read in TIMER_3 pin status */ -	timer3_status = *(vu_long *)MPC5XXX_GPT3_STATUS; -	 -#ifdef FO300_SILENT_CONSOLE_WHEN_S1_CLOSED -	/* Force silent console mode if S1 switch -	 * is in closed position (TIMER_3 pin status is LOW). */ -	if (MPC5XXX_GPT_GPIO_PIN(timer3_status) == 0) -#else -	/* Force silent console mode if S1 switch -	 * is in open position (TIMER_3 pin status is HIGH). */ -	if (MPC5XXX_GPT_GPIO_PIN(timer3_status) == 1) -#endif -		gd->flags |= GD_FLG_SILENT; - -	return 0; -} -#endif -#endif |