summaryrefslogtreecommitdiffstats
path: root/testsuites/libtests/block08/bdbuf_tests.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-03 18:18:56 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-07 07:17:17 +0200
commit117f7b1f670ab88ab256e596dd289743678b3bb7 (patch)
tree796f71b0098a342a760022de9db6248b94a67be2 /testsuites/libtests/block08/bdbuf_tests.c
parentlibtests/block06: Use rtems_blkdev_create() (diff)
downloadrtems-117f7b1f670ab88ab256e596dd289743678b3bb7.tar.bz2
libtests/block08: Use rtems_blkdev_create()
Update #3358.
Diffstat (limited to '')
-rw-r--r--testsuites/libtests/block08/bdbuf_tests.c59
1 files changed, 16 insertions, 43 deletions
diff --git a/testsuites/libtests/block08/bdbuf_tests.c b/testsuites/libtests/block08/bdbuf_tests.c
index 66e69d4fbd..8cf0111dbc 100644
--- a/testsuites/libtests/block08/bdbuf_tests.c
+++ b/testsuites/libtests/block08/bdbuf_tests.c
@@ -13,17 +13,20 @@
#include "config.h"
#endif
+#include <sys/stat.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
+#include <fcntl.h>
+#include <unistd.h>
#include <rtems.h>
#include <rtems/io.h>
-#include <rtems/diskdevs.h>
#include <rtems/bdbuf.h>
#include <rtems/inttypes.h>
#include "bdbuf_tests.h"
+#include <tmacros.h>
struct bdbuf_test_descr {
void (* main)(void);
@@ -105,17 +108,10 @@ bdbuf_test_start_aux_task(rtems_name name,
void
run_bdbuf_tests()
{
- rtems_disk_device *disk;
- rtems_status_code sc;
- dev_t dev = -1;
- dev_t test_dev;
- unsigned int i;
-
- rtems_device_major_number major;
- rtems_driver_address_table testdisk = {
- test_disk_initialize,
- RTEMS_GENERIC_BLOCK_DEVICE_DRIVER_ENTRIES
- };
+ rtems_status_code sc;
+ unsigned int i;
+ int fd;
+ int rv;
/* Create a message queue to get events from disk driver. */
sc = rtems_message_queue_create(TEST_TASK_RX_MQUEUE_NAME,
@@ -130,40 +126,17 @@ run_bdbuf_tests()
return;
}
- /* Register a disk device that is used in tests */
- sc = rtems_io_register_driver(0, &testdisk, &major);
- if (sc != RTEMS_SUCCESSFUL)
- {
- printf("Failed to register TEST DEVICE: %d\n", sc);
- return;
- }
+ sc = test_disk_initialize();
+ rtems_test_assert(sc == RTEMS_SUCCESSFUL);
- test_dev = -1;
- while ((disk = rtems_disk_next(dev)) != NULL)
- {
- printf(
- "DEV: %s [%" PRIdrtems_blkdev_bnum "]\n",
- disk->name,
- disk->size
- );
- dev = disk->dev;
- if (strcmp(disk->name, TEST_DISK_NAME) == 0)
- test_dev = dev;
- rtems_disk_release(disk);
- }
+ fd = open(TEST_DISK_NAME, O_RDWR);
+ rtems_test_assert(fd >= 0);
- if (test_dev == (dev_t)-1)
- {
- printf("Failed to find %s disk\n", TEST_DISK_NAME);
- return;
- }
+ rv = rtems_disk_fd_get_disk_device(fd, &test_dd);
+ rtems_test_assert(rv == 0);
- test_dd = rtems_disk_obtain(test_dev);
- if (test_dd == NULL)
- {
- printf("Failed to obtain %s disk\n", TEST_DISK_NAME);
- return;
- }
+ rv = close(fd);
+ rtems_test_assert(rv == 0);
/*
* On initialization test disk device driver registers