diff options
Diffstat (limited to 'lib_ppc/board.c')
| -rw-r--r-- | lib_ppc/board.c | 16 | 
1 files changed, 14 insertions, 2 deletions
| diff --git a/lib_ppc/board.c b/lib_ppc/board.c index c02ac62b3..564faf2c6 100644 --- a/lib_ppc/board.c +++ b/lib_ppc/board.c @@ -635,6 +635,16 @@ void board_init_f (ulong bootflag)  	/* NOTREACHED - relocate_code() does not return */  } +int __is_sata_supported() +{ +	/* For some boards, when sata disabled by the switch, and the +	 * driver still access the sata registers, the cpu will hangup. +	 * please define platform specific is_sata_supported() if your +	 * board have such issue.*/ +	return 1; +} +int is_sata_supported() __attribute__((weak, alias("__is_sata_supported"))); +  /************************************************************************   *   * This is the next part if the initialization sequence: we are now @@ -1105,8 +1115,10 @@ void board_init_r (gd_t *id, ulong dest_addr)  #endif  #if defined(CONFIG_CMD_SATA) -	puts ("SATA:  "); -	sata_initialize (); +	if (is_sata_supported()) { +		puts("SATA:  "); +		sata_initialize(); +	}  #endif  #ifdef CONFIG_LAST_STAGE_INIT |