summaryrefslogtreecommitdiffstats
path: root/cpukit/libblock
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-02-28 13:28:42 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-03-13 12:24:17 +0100
commitc6499768595c5c2046eb3c32b0b34a56d948c53b (patch)
treee091d0f554c01d55efbef4ad9ef49935c5291ef0 /cpukit/libblock
parentlibblock: New IO control RTEMS_BLKIO_GETDISKDEV (diff)
downloadrtems-c6499768595c5c2046eb3c32b0b34a56d948c53b.tar.bz2
libblock: New block IO control support functions
Diffstat (limited to 'cpukit/libblock')
-rw-r--r--cpukit/libblock/include/rtems/blkdev.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/cpukit/libblock/include/rtems/blkdev.h b/cpukit/libblock/include/rtems/blkdev.h
index 978e93056f..70259d6c43 100644
--- a/cpukit/libblock/include/rtems/blkdev.h
+++ b/cpukit/libblock/include/rtems/blkdev.h
@@ -165,6 +165,45 @@ typedef struct rtems_blkdev_request {
/** @} */
+static inline int rtems_disk_fd_get_media_block_size(
+ int fd,
+ uint32_t *media_block_size
+)
+{
+ return ioctl(fd, RTEMS_BLKIO_GETMEDIABLKSIZE, media_block_size);
+}
+
+static inline int rtems_disk_fd_get_block_size(int fd, uint32_t *block_size)
+{
+ return ioctl(fd, RTEMS_BLKIO_GETBLKSIZE, block_size);
+}
+
+static inline int rtems_disk_fd_set_block_size(int fd, uint32_t block_size)
+{
+ return ioctl(fd, RTEMS_BLKIO_SETBLKSIZE, &block_size);
+}
+
+static inline int rtems_disk_fd_get_block_count(
+ int fd,
+ rtems_blkdev_bnum *block_count
+)
+{
+ return ioctl(fd, RTEMS_BLKIO_GETSIZE, block_count);
+}
+
+static inline int rtems_disk_fd_get_disk_device(
+ int fd,
+ const rtems_disk_device **dd_ptr
+)
+{
+ return ioctl(fd, RTEMS_BLKIO_GETDISKDEV, dd_ptr);
+}
+
+static inline int rtems_disk_fd_sync(int fd)
+{
+ return ioctl(fd, RTEMS_BLKIO_SYNCDEV);
+}
+
/**
* Only consecutive multi-sector buffer requests are supported.
*