9
0
Fork 0

cfi_flash: move flash_read_uchar from inline to noinline

it will reduce the binary size of 28 bytes
and fix some issue observerd during the porting of the at91rm9200ek
when reading the device_id and manufacturor_id

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
This commit is contained in:
Jean-Christophe PLAGNIOL-VILLARD 2010-11-27 00:11:59 +08:00
parent 7c487f3730
commit ae416f6270
2 changed files with 16 additions and 14 deletions

View File

@ -185,6 +185,21 @@ static void flash_printqry (struct flash_info *info, flash_sect_t sect)
}
#endif
/*
* read a character at a port width address
*/
uchar flash_read_uchar (struct flash_info *info, uint offset)
{
uchar *cp;
cp = flash_make_addr (info, 0, offset);
#if defined(__LITTLE_ENDIAN)
return (cp[0]);
#else
return (cp[info->portwidth - 1]);
#endif
}
/*
* read a short word by swapping for ppc format.
*/

View File

@ -211,20 +211,7 @@ static inline uchar *flash_make_addr (struct flash_info *info, flash_sect_t sect
return ((uchar *) (info->start[sect] + (offset * info->portwidth)));
}
/*
* read a character at a port width address
*/
static inline uchar flash_read_uchar (struct flash_info *info, uint offset)
{
uchar *cp;
cp = flash_make_addr (info, 0, offset);
#if defined(__LITTLE_ENDIAN)
return (cp[0]);
#else
return (cp[info->portwidth - 1]);
#endif
}
uchar flash_read_uchar (struct flash_info *info, uint offset);
#ifdef CONFIG_DRIVER_CFI_BANK_WIDTH_1
#define bankwidth_is_1(info) (info->portwidth == 1)