summaryrefslogtreecommitdiff
path: root/board/pm520/flash.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@pollux.(none)>2005-12-29 15:12:09 +0100
committerWolfgang Denk <wd@pollux.(none)>2005-12-29 15:12:09 +0100
commitc7428d49ace4f2f16174ca028fe7072c02a473c8 (patch)
tree5d89b59a9ebdfb1f03d369c844cf83d480a5a51e /board/pm520/flash.c
parent97c8d0bbbd923b85c8d31be6ade673cd0833dda1 (diff)
downloadu-boot-imx-c7428d49ace4f2f16174ca028fe7072c02a473c8.zip
u-boot-imx-c7428d49ace4f2f16174ca028fe7072c02a473c8.tar.gz
u-boot-imx-c7428d49ace4f2f16174ca028fe7072c02a473c8.tar.bz2
Add support for 28F256J3A flah (=> 64 MB) on PM520 board
Diffstat (limited to 'board/pm520/flash.c')
-rw-r--r--board/pm520/flash.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/board/pm520/flash.c b/board/pm520/flash.c
index 3868221..ccd0bd1 100644
--- a/board/pm520/flash.c
+++ b/board/pm520/flash.c
@@ -168,6 +168,10 @@ void flash_print_info (flash_info_t *info)
}
switch (info->flash_id & FLASH_TYPEMASK) {
+ case FLASH_28F256J3A:
+ printf ("28F256J3A\n");
+ break;
+
case FLASH_28F128J3A:
printf ("28F128J3A\n");
break;
@@ -236,25 +240,32 @@ static ulong flash_get_size (FPW *addr, flash_info_t *info)
switch (value) {
+ case (FPW) INTEL_ID_28F256J3A:
+ info->flash_id += FLASH_28F256J3A;
+ info->sector_count = 256;
+ info->size = 0x04000000;
+ info->start[0] = CFG_FLASH_BASE;
+ break; /* => 64 MB */
+
case (FPW) INTEL_ID_28F128J3A:
info->flash_id += FLASH_28F128J3A;
info->sector_count = 128;
info->size = 0x02000000;
- info->start[0] = CFG_FLASH_BASE;
+ info->start[0] = CFG_FLASH_BASE + 0x02000000;
break; /* => 32 MB */
case (FPW) INTEL_ID_28F640J3A:
info->flash_id += FLASH_28F640J3A;
info->sector_count = 64;
info->size = 0x01000000;
- info->start[0] = CFG_FLASH_BASE + 0x01000000;
+ info->start[0] = CFG_FLASH_BASE + 0x03000000;
break; /* => 16 MB */
case (FPW) INTEL_ID_28F320J3A:
info->flash_id += FLASH_28F320J3A;
info->sector_count = 32;
info->size = 0x800000;
- info->start[0] = CFG_FLASH_BASE + 0x01800000;
+ info->start[0] = CFG_FLASH_BASE + 0x03800000;
break; /* => 8 MB */
default:
@@ -285,6 +296,7 @@ static void flash_sync_real_protect (flash_info_t * info)
switch (info->flash_id & FLASH_TYPEMASK) {
+ case FLASH_28F256J3A:
case FLASH_28F128J3A:
case FLASH_28F640J3A:
case FLASH_28F320J3A: