@ -254,7 +254,7 @@ err_out:
}
}
static unsigned long
static unsigned long
mmc_berase ( int dev_num , unsigned long start , lbaint_t blkcnt )
mmc_berase ( int dev_num , lbaint_t start , lbaint_t blkcnt )
{
{
int err = 0 ;
int err = 0 ;
struct mmc * mmc = find_mmc_device ( dev_num ) ;
struct mmc * mmc = find_mmc_device ( dev_num ) ;
@ -266,7 +266,8 @@ mmc_berase(int dev_num, unsigned long start, lbaint_t blkcnt)
if ( ( start % mmc - > erase_grp_size ) | | ( blkcnt % mmc - > erase_grp_size ) )
if ( ( start % mmc - > erase_grp_size ) | | ( blkcnt % mmc - > erase_grp_size ) )
printf ( " \n \n Caution! Your devices Erase group is 0x%x \n "
printf ( " \n \n Caution! Your devices Erase group is 0x%x \n "
" The erase range would be change to 0x%lx~0x%lx \n \n " ,
" The erase range would be change to "
" 0x " LBAF " ~0x " LBAF " \n \n " ,
mmc - > erase_grp_size , start & ~ ( mmc - > erase_grp_size - 1 ) ,
mmc - > erase_grp_size , start & ~ ( mmc - > erase_grp_size - 1 ) ,
( ( start + blkcnt + mmc - > erase_grp_size )
( ( start + blkcnt + mmc - > erase_grp_size )
& ~ ( mmc - > erase_grp_size - 1 ) ) - 1 ) ;
& ~ ( mmc - > erase_grp_size - 1 ) ) - 1 ) ;
@ -289,14 +290,14 @@ mmc_berase(int dev_num, unsigned long start, lbaint_t blkcnt)
}
}
static ulong
static ulong
mmc_write_blocks ( struct mmc * mmc , ulong start , lbaint_t blkcnt , const void * src )
mmc_write_blocks ( struct mmc * mmc , lbaint_t start , lbaint_t blkcnt , const void * src )
{
{
struct mmc_cmd cmd ;
struct mmc_cmd cmd ;
struct mmc_data data ;
struct mmc_data data ;
int timeout = 1000 ;
int timeout = 1000 ;
if ( ( start + blkcnt ) > mmc - > block_dev . lba ) {
if ( ( start + blkcnt ) > mmc - > block_dev . lba ) {
printf ( " MMC: block number 0x%lx exceeds max(0x%lx ) \n " ,
printf ( " MMC: block number 0x " LBAF " exceeds max(0x " LBAF " ) \n " ,
start + blkcnt , mmc - > block_dev . lba ) ;
start + blkcnt , mmc - > block_dev . lba ) ;
return 0 ;
return 0 ;
}
}
@ -346,7 +347,7 @@ mmc_write_blocks(struct mmc *mmc, ulong start, lbaint_t blkcnt, const void*src)
}
}
static ulong
static ulong
mmc_bwrite ( int dev_num , ulong start , lbaint_t blkcnt , const void * src )
mmc_bwrite ( int dev_num , lbaint_t start , lbaint_t blkcnt , const void * src )
{
{
lbaint_t cur , blocks_todo = blkcnt ;
lbaint_t cur , blocks_todo = blkcnt ;
@ -369,7 +370,7 @@ mmc_bwrite(int dev_num, ulong start, lbaint_t blkcnt, const void*src)
return blkcnt ;
return blkcnt ;
}
}
static int mmc_read_blocks ( struct mmc * mmc , void * dst , ulong start ,
static int mmc_read_blocks ( struct mmc * mmc , void * dst , lbaint_t start ,
lbaint_t blkcnt )
lbaint_t blkcnt )
{
{
struct mmc_cmd cmd ;
struct mmc_cmd cmd ;
@ -408,7 +409,7 @@ static int mmc_read_blocks(struct mmc *mmc, void *dst, ulong start,
return blkcnt ;
return blkcnt ;
}
}
static ulong mmc_bread ( int dev_num , ulong start , lbaint_t blkcnt , void * dst )
static ulong mmc_bread ( int dev_num , lbaint_t start , lbaint_t blkcnt , void * dst )
{
{
lbaint_t cur , blocks_todo = blkcnt ;
lbaint_t cur , blocks_todo = blkcnt ;
@ -420,7 +421,7 @@ static ulong mmc_bread(int dev_num, ulong start, lbaint_t blkcnt, void *dst)
return 0 ;
return 0 ;
if ( ( start + blkcnt ) > mmc - > block_dev . lba ) {
if ( ( start + blkcnt ) > mmc - > block_dev . lba ) {
printf ( " MMC: block number 0x%lx exceeds max(0x%lx ) \n " ,
printf ( " MMC: block number 0x " LBAF " exceeds max(0x " LBAF " ) \n " ,
start + blkcnt , mmc - > block_dev . lba ) ;
start + blkcnt , mmc - > block_dev . lba ) ;
return 0 ;
return 0 ;
}
}