summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2009-11-12 15:32:11 +0000
committerThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2009-11-12 15:32:11 +0000
commitc0e0a92892f1f4993522e482cb13953d69e60309 (patch)
tree11c09fe56771bcec66ebce6b050a375b145e9bf0 /cpukit
parent2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org> (diff)
downloadrtems-c0e0a92892f1f4993522e482cb13953d69e60309.tar.bz2
Changed set and get IO controls to use the buffer argument for data exchange.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/ChangeLog6
-rw-r--r--cpukit/libblock/include/rtems/blkdev.h8
-rw-r--r--cpukit/libblock/src/blkdev.c12
3 files changed, 18 insertions, 8 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index 3ae5a4b90c..d022c55a38 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,3 +1,9 @@
+2009-11-12 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * libblock/include/rtems/blkdev.h, libblock/src/blkdev.c: Changed set
+ and get IO controls to use the buffer argument for data exchange.
+
+
2009-11-11 Sebastian Huber <sebastian.huber@embedded-brains.de>
* libcsupport/Makefile.am, libcsupport/include/rtems/malloc.h,
diff --git a/cpukit/libblock/include/rtems/blkdev.h b/cpukit/libblock/include/rtems/blkdev.h
index 721ecbb707..7956a59460 100644
--- a/cpukit/libblock/include/rtems/blkdev.h
+++ b/cpukit/libblock/include/rtems/blkdev.h
@@ -157,10 +157,10 @@ typedef struct rtems_blkdev_request {
*/
#define RTEMS_BLKIO_REQUEST _IOWR('B', 1, rtems_blkdev_request)
-#define RTEMS_BLKIO_GETMEDIABLKSIZE _IO('B', 2)
-#define RTEMS_BLKIO_GETBLKSIZE _IO('B', 3)
-#define RTEMS_BLKIO_SETBLKSIZE _IO('B', 4)
-#define RTEMS_BLKIO_GETSIZE _IO('B', 5)
+#define RTEMS_BLKIO_GETMEDIABLKSIZE _IOR('B', 2, uint32_t)
+#define RTEMS_BLKIO_GETBLKSIZE _IOR('B', 3, uint32_t)
+#define RTEMS_BLKIO_SETBLKSIZE _IOW('B', 4, uint32_t)
+#define RTEMS_BLKIO_GETSIZE _IOR('B', 5, rtems_blkdev_bnum)
#define RTEMS_BLKIO_SYNCDEV _IO('B', 6)
#define RTEMS_BLKIO_DELETED _IO('B', 7)
diff --git a/cpukit/libblock/src/blkdev.c b/cpukit/libblock/src/blkdev.c
index 779290b4f4..dccb93b020 100644
--- a/cpukit/libblock/src/blkdev.c
+++ b/cpukit/libblock/src/blkdev.c
@@ -226,19 +226,23 @@ rtems_blkdev_generic_ioctl(
switch (args->command)
{
case RTEMS_BLKIO_GETMEDIABLKSIZE:
- args->ioctl_return = dd->media_block_size;
+ *((uint32_t *) args->buffer) = dd->media_block_size;
+ args->ioctl_return = 0;
break;
case RTEMS_BLKIO_GETBLKSIZE:
- args->ioctl_return = dd->block_size;
+ *((uint32_t *) args->buffer) = dd->block_size;
+ args->ioctl_return = 0;
break;
case RTEMS_BLKIO_SETBLKSIZE:
- dd->block_size = *((size_t*) args->buffer);
+ dd->block_size = *((uint32_t *) args->buffer);
+ args->ioctl_return = 0;
break;
case RTEMS_BLKIO_GETSIZE:
- args->ioctl_return = dd->size;
+ *((rtems_blkdev_bnum *) args->buffer) = dd->size;
+ args->ioctl_return = 0;
break;
case RTEMS_BLKIO_SYNCDEV: