From fa12e06d333594fbf3dda81933af625a4aaff193 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 3 Aug 2018 22:28:31 +0200 Subject: libtests/block14: Use rtems_blkdev_create() Update #3358. --- testsuites/libtests/block14/init.c | 44 ++++++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 19 deletions(-) (limited to 'testsuites') diff --git a/testsuites/libtests/block14/init.c b/testsuites/libtests/block14/init.c index 879582f214..36325f5892 100644 --- a/testsuites/libtests/block14/init.c +++ b/testsuites/libtests/block14/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 14"; @@ -30,6 +33,8 @@ const char rtems_test_name[] = "BLOCK 14"; #define BLOCK_COUNT 6 +#define DISK_PATH "/disk" + typedef struct { rtems_blkdev_bnum block; rtems_status_code (*get)( @@ -109,8 +114,7 @@ static int test_disk_ioctl(rtems_disk_device *dd, uint32_t req, void *arg) rtems_blkdev_request_done(breq, sc); } else { - errno = EINVAL; - rv = -1; + rv = rtems_blkdev_ioctl(dd, req, arg); } return rv; @@ -161,32 +165,32 @@ static void test_actions(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_actions(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_actions(dd); + + rv = unlink(DISK_PATH); + rtems_test_assert(rv == 0); } static void Init(rtems_task_argument arg) @@ -204,6 +208,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