arm/km: add implementation for read_dip_switch

Add a function to read the dip_switch on kmcoge5un. If the
switch is set the actual_bank is set to 0 and this SW is
booted.

Signed-off-by: Thomas Herzmann <thomas.herzmann@keymile.com>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
This commit is contained in:
Thomas Herzmann 2012-07-05 05:05:10 +00:00 committed by Albert ARIBAUD
parent dbdee4ca59
commit b8cf7cc886
2 changed files with 13 additions and 4 deletions

View File

@ -285,12 +285,24 @@ int board_init(void)
int board_late_init(void)
{
#if defined(CONFIG_KMCOGE5UN)
/* I/O pin to erase flash RGPP09 = MPP43 */
#define KM_FLASH_ERASE_ENABLE 43
u8 dip_switch = kw_gpio_get_value(KM_FLASH_ERASE_ENABLE);
/* if pin 1 do full erase */
if (dip_switch != 0) {
/* start bootloader */
puts("DIP: Enabled\n");
setenv("actual_bank", "0");
}
#endif
#if defined(CONFIG_KM_FPGA_CONFIG)
wait_for_fpga_config();
fpga_reset();
toggle_eeprom_spi_bus();
#endif
return 0;
}

View File

@ -171,8 +171,5 @@
#undef CONFIG_KIRKWOOD_PCIE_INIT
#endif
#ifndef CONFIG_KM_FPGA_CONFIG
#undef BOARD_LATE_INIT
#endif
#endif /* _CONFIG_KM_KIRKWOOD */