X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=board%2Fmcc200%2Fmcc200.c;h=5fe239f23472c6cfafa8c519bfed9d5940711757;hb=b86d7622b33892b1dafe761a7a9eaeeab9f3816b;hp=d1c99fdd85f00f6776b7699894bd58166bc4e662;hpb=47705af5daafb508339907f6c4fe6d13b441bf9a;p=platform%2Fkernel%2Fu-boot.git diff --git a/board/mcc200/mcc200.c b/board/mcc200/mcc200.c index d1c99fd..5fe239f 100644 --- a/board/mcc200/mcc200.c +++ b/board/mcc200/mcc200.c @@ -30,6 +30,8 @@ #include "mt48lc8m32b2-6-7.h" +DECLARE_GLOBAL_DATA_PTR; + extern flash_info_t flash_info[]; /* FLASH chips info */ ulong flash_get_size (ulong base, int banknum); @@ -190,8 +192,6 @@ int checkboard (void) int misc_init_r (void) { - DECLARE_GLOBAL_DATA_PTR; - /* * Adjust flash start and offset to detected values */ @@ -238,6 +238,16 @@ int misc_init_r (void) &flash_info[CFG_MAX_FLASH_BANKS - 1]); } + if (gd->bd->bi_flashsize > (32 << 20)) { + /* Unprotect the upper bank of the Flash */ + *(volatile int*)MPC5XXX_CS0_CFG |= (1 << 6); + flash_protect (FLAG_PROTECT_CLEAR, + flash_info[0].start[0], + (flash_info[0].start[0] + flash_info[0].size) / 2 - 1, + &flash_info[0]); + *(volatile int*)MPC5XXX_CS0_CFG &= ~(1 << 6); + } + return (0); }