From 3278d202004a0d37abfbc9a24845b2e00e967ce8 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 3 Aug 2018 22:25:40 +0200 Subject: libtests/block13: Use rtems_blkdev_create() Update #3358. --- testsuites/libtests/block13/init.c | 44 ++++++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 19 deletions(-) (limited to 'testsuites') diff --git a/testsuites/libtests/block13/init.c b/testsuites/libtests/block13/init.c index afd7704026..0eb5d676ee 100644 --- a/testsuites/libtests/block13/init.c +++ b/testsuites/libtests/block13/init.c @@ -1,8 +1,8 @@ /* - * Copyright (c) 2012 embedded brains GmbH. All rights reserved. + * Copyright (c) 2012, 2018 embedded brains GmbH. All rights reserved. * * embedded brains GmbH - * Obere Lagerstr. 30 + * Dornierstr. 4 * 82178 Puchheim * Germany * @@ -18,10 +18,13 @@ #include "tmacros.h" +#include +#include #include +#include #include +#include -#include #include const char rtems_test_name[] = "BLOCK 13"; @@ -29,6 +32,8 @@ const char rtems_test_name[] = "BLOCK 13"; #define BLOCK_COUNT 11 #define READ_COUNT 23 +#define DISK_PATH "/disk" + static int block_access_counts [BLOCK_COUNT]; #define RESET_CACHE (-1) @@ -130,8 +135,7 @@ static int test_disk_ioctl(rtems_disk_device *dd, uint32_t req, void *arg) rtems_blkdev_request_done(breq, RTEMS_SUCCESSFUL); } else { - errno = EINVAL; - rv = -1; + rv = rtems_blkdev_ioctl(dd, req, arg); } return rv; @@ -181,32 +185,32 @@ static void test_read_ahead(rtems_disk_device *dd) static void test(void) { rtems_status_code sc; - dev_t dev = 0; rtems_disk_device *dd; + int fd; + int rv; - sc = rtems_disk_io_initialize(); - rtems_test_assert(sc == RTEMS_SUCCESSFUL); - - sc = rtems_disk_create_phys( - dev, + sc = rtems_blkdev_create( + DISK_PATH, 1, BLOCK_COUNT, test_disk_ioctl, - NULL, NULL ); rtems_test_assert(sc == RTEMS_SUCCESSFUL); - dd = rtems_disk_obtain(dev); - rtems_test_assert(dd != NULL); + fd = open(DISK_PATH, O_RDWR); + rtems_test_assert(fd >= 0); - test_read_ahead(dd); + rv = rtems_disk_fd_get_disk_device(fd, &dd); + rtems_test_assert(rv == 0); - sc = rtems_disk_release(dd); - rtems_test_assert(sc == RTEMS_SUCCESSFUL); + rv = close(fd); + rtems_test_assert(rv == 0); - sc = rtems_disk_delete(dev); - rtems_test_assert(sc == RTEMS_SUCCESSFUL); + test_read_ahead(dd); + + rv = unlink(DISK_PATH); + rtems_test_assert(rv == 0); } static void Init(rtems_task_argument arg) @@ -224,6 +228,8 @@ static void Init(rtems_task_argument arg) #define CONFIGURE_APPLICATION_NEEDS_SIMPLE_CONSOLE_DRIVER #define CONFIGURE_APPLICATION_NEEDS_LIBBLOCK +#define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 4 + #define CONFIGURE_BDBUF_BUFFER_MIN_SIZE 1 #define CONFIGURE_BDBUF_BUFFER_MAX_SIZE 1 #define CONFIGURE_BDBUF_CACHE_MEMORY_SIZE BLOCK_COUNT -- cgit v1.2.3