diff options
author | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2009-11-12 15:32:11 +0000 |
---|---|---|
committer | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2009-11-12 15:32:11 +0000 |
commit | c0e0a92892f1f4993522e482cb13953d69e60309 (patch) | |
tree | 11c09fe56771bcec66ebce6b050a375b145e9bf0 /cpukit/libblock | |
parent | 2009-11-12 Ralf Corsépius <ralf.corsepius@rtems.org> (diff) | |
download | rtems-c0e0a92892f1f4993522e482cb13953d69e60309.tar.bz2 |
Changed set and get IO controls to use the buffer argument for data exchange.
Diffstat (limited to 'cpukit/libblock')
-rw-r--r-- | cpukit/libblock/include/rtems/blkdev.h | 8 | ||||
-rw-r--r-- | cpukit/libblock/src/blkdev.c | 12 |
2 files changed, 12 insertions, 8 deletions
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: |