-static ssize_t zoran_write(struct file *file, const char __user *buffer,
- size_t count, loff_t *ppos)
+static int
+zoran_read_proc (char *buffer,
+ char **start,
+ off_t offset,
+ int size,
+ int *eof,
+ void *data)
+{
+ struct procfs_io io;
+ int nbytes;
+
+ io.buffer = buffer;
+ io.end = buffer + size - 128; // Just to make it a little bit safer
+ io.count = offset;
+ io.count_current = 0;
+ io.neof = 0;
+ zoran_procfs_output(&io, data);
+ *start = (char *) (io.count_current - io.count);
+ nbytes = (int) (io.buffer - buffer);
+ *eof = !io.neof;
+ return nbytes;
+
+ return 0;
+}
+
+static int
+zoran_write_proc (struct file *file,
+ const char __user *buffer,
+ unsigned long count,
+ void *data)