diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-10-14 13:46:09 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2012-06-30 16:53:24 +0200 |
commit | 3e503822c7379ffc1a1c60aed57eb81954451faa (patch) | |
tree | 49e4f7dd370954b7920606afdd82282f6e79e698 /drivers/mtd/mtdraw.c | |
parent | e71c34366808bbe3ce0b166d8710749513af6d81 (diff) | |
download | barebox-3e503822c7379ffc1a1c60aed57eb81954451faa.tar.gz barebox-3e503822c7379ffc1a1c60aed57eb81954451faa.tar.xz |
use loff_t for file offsets
This is a first step for 64bit file support: Make the file sizes/offsets
64bit.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/mtd/mtdraw.c')
-rw-r--r-- | drivers/mtd/mtdraw.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/mtd/mtdraw.c b/drivers/mtd/mtdraw.c index 7abe2351a5..24f7358098 100644 --- a/drivers/mtd/mtdraw.c +++ b/drivers/mtd/mtdraw.c @@ -116,12 +116,13 @@ err: } static ssize_t mtdraw_read(struct cdev *cdev, void *buf, size_t count, - ulong offset, ulong flags) + loff_t _offset, ulong flags) { struct mtd_info *mtd = to_mtd(cdev); ssize_t retlen = 0, ret = 1, toread; ulong numpage; int skip; + unsigned long offset = _offset; numpage = offset / (mtd->writesize + mtd->oobsize); skip = offset % (mtd->writesize + mtd->oobsize); @@ -167,13 +168,14 @@ static void mtdraw_fillbuf(struct mtdraw *mtdraw, const void *src, int nbbytes) } static ssize_t mtdraw_write(struct cdev *cdev, const void *buf, size_t count, - ulong offset, ulong flags) + loff_t _offset, ulong flags) { struct mtdraw *mtdraw = to_mtdraw(cdev); struct mtd_info *mtd = to_mtd(cdev); int bsz = mtd->writesize + mtd->oobsize; ulong numpage; size_t retlen = 0, tofill; + unsigned long offset = _offset; int ret = 0; if (mtdraw->write_fill && @@ -220,10 +222,11 @@ static ssize_t mtdraw_write(struct cdev *cdev, const void *buf, size_t count, } } -static ssize_t mtdraw_erase(struct cdev *cdev, size_t count, ulong offset) +static ssize_t mtdraw_erase(struct cdev *cdev, size_t count, loff_t _offset) { struct mtd_info *mtd = to_mtd(cdev); struct erase_info erase; + unsigned long offset = _offset; int ret; offset = offset / (mtd->writesize + mtd->oobsize) * mtd->writesize; |