summaryrefslogtreecommitdiffstats
path: root/fs/ramfs.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2008-06-06 09:25:13 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2008-06-06 09:30:48 +0200
commitee6d36a5405305f3bbdb0457948c219731b3d9cc (patch)
tree0a328bd96f2cf2f190372b654515e509c694930a /fs/ramfs.c
parent3f73e61600f8fce0b6fa02e9a82124c1c89937c7 (diff)
downloadbarebox-ee6d36a5405305f3bbdb0457948c219731b3d9cc.tar.gz
barebox-ee6d36a5405305f3bbdb0457948c219731b3d9cc.tar.xz
- introduce ioctl call
- pass open/close/lseek through to drivers
Diffstat (limited to 'fs/ramfs.c')
-rw-r--r--fs/ramfs.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/ramfs.c b/fs/ramfs.c
index 38ef035d53..beee6b9256 100644
--- a/fs/ramfs.c
+++ b/fs/ramfs.c
@@ -403,6 +403,12 @@ static int ramfs_write(struct device_d *_dev, FILE *f, const void *buf, size_t i
return insize;
}
+static off_t ramfs_lseek(struct device_d *dev, FILE *f, off_t pos)
+{
+ f->pos = pos;
+ return f->pos;
+}
+
static int ramfs_truncate(struct device_d *dev, FILE *f, ulong size)
{
struct ramfs_inode *node = (struct ramfs_inode *)f->inode;
@@ -540,6 +546,7 @@ static struct fs_driver_d ramfs_driver = {
.truncate = ramfs_truncate,
.read = ramfs_read,
.write = ramfs_write,
+ .lseek = ramfs_lseek,
.mkdir = ramfs_mkdir,
.rmdir = ramfs_rmdir,
.opendir = ramfs_opendir,