diff options
Diffstat (limited to 'board/trab/flash.c')
| -rw-r--r-- | board/trab/flash.c | 18 | 
1 files changed, 18 insertions, 0 deletions
| diff --git a/board/trab/flash.c b/board/trab/flash.c index 764c57b48..2cccee647 100644 --- a/board/trab/flash.c +++ b/board/trab/flash.c @@ -83,6 +83,7 @@ ulong flash_init (void)  			switch (info->flash_id & FLASH_TYPEMASK) {  			case (FLASH_AM320B & FLASH_TYPEMASK): +			case (FLASH_MXLV320B & FLASH_TYPEMASK):  				/* Boot sector type: 8 x 8 + N x 128 kB */  				flashbase += (j < 8) ? 0x4000 : 0x20000;  				break; @@ -130,6 +131,8 @@ void flash_print_info (flash_info_t * info)  			printf ("AMD ");		break;  	case (FLASH_MAN_FUJ & FLASH_VENDMASK):  			printf ("FUJITSU ");		break; +	case (FLASH_MAN_MX  & FLASH_VENDMASK): +			printf ("MACRONIX ");		break;  	default:	printf ("Unknown Vendor ");	break;  	} @@ -137,6 +140,9 @@ void flash_print_info (flash_info_t * info)  	case (FLASH_AM320B & FLASH_TYPEMASK):  		printf ("2x Am29LV320DB (32Mbit)\n");  		break; +	case (FLASH_MXLV320B & FLASH_TYPEMASK): +		printf ("2x MX29LV320DB (32Mbit)\n"); +		break;  	case (FLASH_AM640U & FLASH_TYPEMASK):  		printf ("2x Am29LV640D (64Mbit)\n");  		break; @@ -191,6 +197,7 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)  	switch (info->flash_id & FLASH_VENDMASK) {  	case (FLASH_MAN_AMD & FLASH_VENDMASK):	break;	/* OK */  	case (FLASH_MAN_FUJ & FLASH_VENDMASK):	break;	/* OK */ +	case (FLASH_MAN_MX  & FLASH_VENDMASK):	break;	/* OK */  	default:  		debug ("## flash_erase: unknown manufacturer\n");  		return (ERR_UNKNOWN_FLASH_VENDOR); @@ -502,6 +509,9 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)  	case FUJ_MANUFACT:  		info->flash_id = FLASH_MAN_FUJ;  		break; +	case MX_MANUFACT: +		info->flash_id = FLASH_MAN_MX; +		break;  	default:  		info->flash_id = FLASH_UNKNOWN;  		info->sector_count = 0; @@ -532,6 +542,14 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)  		addr[0] = 0x00F000F0;		/* restore read mode */  		break;				/* => 16 MB		*/ +	case MX_ID_LV320B: +		info->flash_id += FLASH_MXLV320B; +		info->sector_count = 71; +		info->size = 0x00800000; + +		addr[0] = 0x00FF00FF;		/* restore read mode */ +		break;				/* =>  8 MB		*/ +  	default:  		debug ("## flash_init: unknown flash chip\n");  		info->flash_id = FLASH_UNKNOWN; |