diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-07-30 06:39:09 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-08-07 07:17:16 +0200 |
commit | 24b94c47713bbaadd8b8a876a2e7c7f3a9def5d8 (patch) | |
tree | efcbf3a2cd173820310dea2b7b7677329bc1a4e4 /cpukit/libblock | |
parent | d56e68bb8be5a44e54652c59b787caf2911e7e57 (diff) |
ramdisk: Use rtems_blkdev_create()
Update #3358.
Diffstat (limited to 'cpukit/libblock')
-rw-r--r-- | cpukit/libblock/src/ramdisk-config.c | 11 | ||||
-rw-r--r-- | cpukit/libblock/src/ramdisk-register.c | 30 |
2 files changed, 7 insertions, 34 deletions
diff --git a/cpukit/libblock/src/ramdisk-config.c b/cpukit/libblock/src/ramdisk-config.c index 7bd137a394..8e1b277674 100644 --- a/cpukit/libblock/src/ramdisk-config.c +++ b/cpukit/libblock/src/ramdisk-config.c @@ -23,7 +23,7 @@ rtems_device_driver ramdisk_initialize( - rtems_device_major_number major, + rtems_device_major_number major RTEMS_UNUSED, rtems_device_minor_number minor RTEMS_UNUSED, void *arg RTEMS_UNUSED) { @@ -32,10 +32,6 @@ ramdisk_initialize( struct ramdisk *r; rtems_status_code rc; - rc = rtems_disk_io_initialize(); - if (rc != RTEMS_SUCCESSFUL) - return rc; - /* * Coverity Id 27 notes that this calloc() is a resource leak. * @@ -48,7 +44,6 @@ ramdisk_initialize( r->trace = false; for (i = 0; i < rtems_ramdisk_configuration_size; i++, c++, r++) { - dev_t dev = rtems_filesystem_make_dev_t(major, i); char name [] = RAMDISK_DEVICE_BASE_NAME "a"; name [sizeof(RAMDISK_DEVICE_BASE_NAME) - 1] += i; r->block_size = c->block_size; @@ -73,8 +68,8 @@ ramdisk_initialize( r->initialized = true; r->area = c->location; } - rc = rtems_disk_create_phys(dev, c->block_size, c->block_num, - ramdisk_ioctl, r, name); + rc = rtems_blkdev_create(name, c->block_size, c->block_num, + ramdisk_ioctl, r); if (rc != RTEMS_SUCCESSFUL) { if (r->malloced) 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; } |