[MTD] update internal API to support 64-bit device size
MTD internal API presently uses 32-bit values to represent device size. This patch updates them to 64-bits but leaves the external API unchanged. Extending the external API is a separate issue for several reasons. First, no one needs it at the moment. Secondly, whether the implementation is done with IOCTLs, sysfs or both is still debated. Thirdly external API changes require the internal API to be accepted first. Note that although the MTD API will be able to support 64-bit device sizes, existing drivers do not and are not required to do so, although NAND base has been updated. In general, changing from 32-bit to 64-bit values cause little or no changes to the majority of the code with the following exceptions: - printk message formats - division and modulus of 64-bit values - NAND base support - 32-bit local variables used by mtdpart and mtdconcat - naughtily assuming one structure maps to another in MEMERASE ioctl Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Cette révision appartient à :

révisé par
David Woodhouse

Parent
8a4c2495b1
révision
69423d99fc
@@ -77,7 +77,7 @@ static int fwh_xxlock_oneblock(struct map_info *map, struct flchip *chip,
|
||||
}
|
||||
|
||||
|
||||
static int fwh_lock_varsize(struct mtd_info *mtd, loff_t ofs, size_t len)
|
||||
static int fwh_lock_varsize(struct mtd_info *mtd, loff_t ofs, uint64_t len)
|
||||
{
|
||||
int ret;
|
||||
|
||||
@@ -88,7 +88,7 @@ static int fwh_lock_varsize(struct mtd_info *mtd, loff_t ofs, size_t len)
|
||||
}
|
||||
|
||||
|
||||
static int fwh_unlock_varsize(struct mtd_info *mtd, loff_t ofs, size_t len)
|
||||
static int fwh_unlock_varsize(struct mtd_info *mtd, loff_t ofs, uint64_t len)
|
||||
{
|
||||
int ret;
|
||||
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur