mtd: ubi: Use 'max_bad_blocks' to compute bad_peb_limit if available
If the user has not set max_beb_per1024 using either the cmdline or Kconfig options for doing so, use the MTD function 'max_bad_blocks' to compute the UBI bad_peb_limit. Signed-off-by: Jeff Westfahl <jeff.westfahl@ni.com> Signed-off-by: Zach Brown <zach.brown@ni.com> Acked-by: Boris Brezillon <boris.brezillon@free-electron.com> Acked-by: Richard Weinberger <richard@nod.at> Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
parent
c877154d30
commit
c0e860ba03
@ -535,8 +535,17 @@ static int get_bad_peb_limit(const struct ubi_device *ubi, int max_beb_per1024)
|
||||
int limit, device_pebs;
|
||||
uint64_t device_size;
|
||||
|
||||
if (!max_beb_per1024)
|
||||
return 0;
|
||||
if (!max_beb_per1024) {
|
||||
/*
|
||||
* Since max_beb_per1024 has not been set by the user in either
|
||||
* the cmdline or Kconfig, use mtd_max_bad_blocks to set the
|
||||
* limit if it is supported by the device.
|
||||
*/
|
||||
limit = mtd_max_bad_blocks(ubi->mtd, 0, ubi->mtd->size);
|
||||
if (limit < 0)
|
||||
return 0;
|
||||
return limit;
|
||||
}
|
||||
|
||||
/*
|
||||
* Here we are using size of the entire flash chip and
|
||||
|
Loading…
x
Reference in New Issue
Block a user