diff options
| author | Heiko Schocher <hs@denx.de> | 2011-01-21 07:23:35 +0100 | 
|---|---|---|
| committer | Wolfgang Denk <wd@denx.de> | 2011-03-21 22:51:27 +0100 | 
| commit | 927d2cea6bdbb2d6297db738c6fe8a6cfc18882f (patch) | |
| tree | ecd6740ddc178a83d61698b0bb0abc1de8210f02 | |
| parent | 62043ed02a2acffa801e3574e249de07d30336a2 (diff) | |
| download | olio-uboot-2014.01-927d2cea6bdbb2d6297db738c6fe8a6cfc18882f.tar.xz olio-uboot-2014.01-927d2cea6bdbb2d6297db738c6fe8a6cfc18882f.zip | |
mpc52xx, digsy_mtc_rev5: Fix Linux crash, if no Flash in bank 2
If no Flash is connected to cs1, Linux crashes, because
reg entries are not correct adapted.
Following fix is needed:
- swap base addresses in CONFIG_SYS_FLASH_BANKS_LIST, as
  flash bank 1 is on chipselect 0 and flash bank 2 on
  chipselect 1
- call fdt_fixup_nor_flash_size() from ft_board_setup()
Signed-off-by: Heiko Schocher <hs@denx.de>
cc: Wolfgang Denk <hs@denx.de>
cc: Werner Pfister <Pfister_Werner@intercontrol.de>
cc: Detlev Zundel <dzu@denx.de>
| -rw-r--r-- | board/digsy_mtc/digsy_mtc.c | 5 | ||||
| -rw-r--r-- | include/configs/digsy_mtc.h | 4 | 
2 files changed, 7 insertions, 2 deletions
| diff --git a/board/digsy_mtc/digsy_mtc.c b/board/digsy_mtc/digsy_mtc.c index afb094805..cbfdc9edf 100644 --- a/board/digsy_mtc/digsy_mtc.c +++ b/board/digsy_mtc/digsy_mtc.c @@ -46,6 +46,7 @@  #include "is42s16800a-7t.h"  #endif  #include <libfdt.h> +#include <fdt_support.h>  DECLARE_GLOBAL_DATA_PTR; @@ -415,6 +416,10 @@ void ft_board_setup(void *blob, bd_t *bd)  	ft_delete_node(blob, "mc,rv3029c2");  #endif  #if defined(CONFIG_SYS_UPDATE_FLASH_SIZE) +#ifdef CONFIG_FDT_FIXUP_NOR_FLASH_SIZE +	/* Update reg property in all nor flash nodes too */ +	fdt_fixup_nor_flash_size(blob); +#endif  	ft_adapt_flash_base(blob);  #endif  } diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h index bfbec6a86..e7fd0f7f9 100644 --- a/include/configs/digsy_mtc.h +++ b/include/configs/digsy_mtc.h @@ -268,8 +268,8 @@  #define CONFIG_SYS_FLASH_BASE		0xFE000000  #define CONFIG_SYS_FLASH_BASE_CS1	0xFC000000  #define CONFIG_SYS_MAX_FLASH_BANKS	2 -#define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE_CS1, \ -					CONFIG_SYS_FLASH_BASE} +#define CONFIG_SYS_FLASH_BANKS_LIST	{ CONFIG_SYS_FLASH_BASE, \ +					CONFIG_SYS_FLASH_BASE_CS1}  #define CONFIG_SYS_UPDATE_FLASH_SIZE  #define CONFIG_FDT_FIXUP_NOR_FLASH_SIZE  #else |