summaryrefslogtreecommitdiffstats
path: root/cpukit/libblock/src/ramdisk-register.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-07-30 06:39:09 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-07 07:17:16 +0200
commit24b94c47713bbaadd8b8a876a2e7c7f3a9def5d8 (patch)
treeefcbf3a2cd173820310dea2b7b7677329bc1a4e4 /cpukit/libblock/src/ramdisk-register.c
parentrfs: Remove erroneous call of rtems_disk_release() (diff)
downloadrtems-24b94c47713bbaadd8b8a876a2e7c7f3a9def5d8.tar.bz2
ramdisk: Use rtems_blkdev_create()
Update #3358.
Diffstat (limited to '')
-rw-r--r--cpukit/libblock/src/ramdisk-register.c30
1 files changed, 4 insertions, 26 deletions
diff --git a/cpukit/libblock/src/ramdisk-register.c b/cpukit/libblock/src/ramdisk-register.c
index ec133d0c03..6b2dc2c36d 100644
--- a/cpukit/libblock/src/ramdisk-register.c
+++ b/cpukit/libblock/src/ramdisk-register.c
@@ -24,57 +24,35 @@
#include "config.h"
#endif
-#include <rtems.h>
#include <rtems/ramdisk.h>
-const rtems_driver_address_table ramdisk_ops = {
- .initialization_entry = NULL,
- RTEMS_GENERIC_BLOCK_DEVICE_DRIVER_ENTRIES
-};
-
rtems_status_code ramdisk_register(
uint32_t media_block_size,
rtems_blkdev_bnum media_block_count,
bool trace,
- const char *disk,
- dev_t *dev_ptr
+ const char *disk
)
{
rtems_status_code sc = RTEMS_SUCCESSFUL;
- rtems_device_major_number major = 0;
ramdisk *rd = NULL;
- dev_t dev = 0;
-
- sc = rtems_io_register_driver(0, &ramdisk_ops, &major);
- if (sc != RTEMS_SUCCESSFUL) {
- return RTEMS_UNSATISFIED;
- }
rd = ramdisk_allocate(NULL, media_block_size, media_block_count, trace);
if (rd == NULL) {
- rtems_io_unregister_driver(major);
-
return RTEMS_UNSATISFIED;
}
- dev = rtems_filesystem_make_dev_t(major, 0);
-
- sc = rtems_disk_create_phys(
- dev,
+ sc = rtems_blkdev_create(
+ disk,
media_block_size,
media_block_count,
ramdisk_ioctl,
- rd,
- disk
+ rd
);
if (sc != RTEMS_SUCCESSFUL) {
ramdisk_free(rd);
- rtems_io_unregister_driver(major);
return RTEMS_UNSATISFIED;
}
- *dev_ptr = dev;
-
return RTEMS_SUCCESSFUL;
}