summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan Castillo <jcastillo.devel@gmail.com>2015-10-01 17:55:11 +0100
committerJuan Castillo <juan.castillo@arm.com>2015-10-23 16:57:52 +0100
commit7e26fe1f05bb05ce6e0f95b9a44ada2a21d53dd3 (patch)
tree8aa2b46736442be975e7f83cb689082018903d98
parent84ab33e1e95500a3dfc776fe416b9d1a51288057 (diff)
IO Framework: use standard errno codes as return values
This patch redefines the values of IO_FAIL, IO_NOT_SUPPORTED and IO_RESOURCES_EXHAUSTED to match the corresponding definitions in errno.h: #define IO_FAIL (-ENOENT) #define IO_NOT_SUPPORTED (-ENODEV) #define IO_RESOURCES_EXHAUSTED (-ENOMEM) NOTE: please note that the IO_FAIL, IO_NOT_SUPPORTED and IO_RESOURCES_EXHAUSTED definitions are considered deprecated and their usage should be avoided. Callers should rely on errno.h definitions when checking the return values of IO functions. Change-Id: Ic8491aa43384b6ee44951ebfc053a3ded16a80be
-rw-r--r--docs/porting-guide.md5
-rw-r--r--include/drivers/io/io_storage.h11
2 files changed, 9 insertions, 7 deletions
diff --git a/docs/porting-guide.md b/docs/porting-guide.md
index c369844c..db6038a4 100644
--- a/docs/porting-guide.md
+++ b/docs/porting-guide.md
@@ -358,13 +358,12 @@ must also be defined:
Defines the maximum number of registered IO devices. Attempting to register
more devices than this value using `io_register_device()` will fail with
- IO_RESOURCES_EXHAUSTED.
+ -ENOMEM.
* **#define : MAX_IO_HANDLES**
Defines the maximum number of open IO handles. Attempting to open more IO
- entities than this value using `io_open()` will fail with
- IO_RESOURCES_EXHAUSTED.
+ entities than this value using `io_open()` will fail with -ENOMEM.
If the platform needs to allocate data within the per-cpu data framework in
BL3-1, it should define the following macro. Currently this is only required if
diff --git a/include/drivers/io/io_storage.h b/include/drivers/io/io_storage.h
index e98dcd04..4c3526ef 100644
--- a/include/drivers/io/io_storage.h
+++ b/include/drivers/io/io_storage.h
@@ -31,6 +31,7 @@
#ifndef __IO_H__
#define __IO_H__
+#include <errno.h>
#include <stdint.h>
#include <stdio.h> /* For ssize_t */
#include <uuid.h>
@@ -88,11 +89,13 @@ typedef struct io_block_spec {
#define IO_MODE_RW (1 << 1)
-/* Return codes reported by 'io_*' APIs */
+/* Return codes reported by 'io_*' APIs.
+ * IMPORTANT: these definitions are deprecated. Callers should use standard
+ * errno definitions when checking the return value of io_* APIs. */
#define IO_SUCCESS (0)
-#define IO_FAIL (-1)
-#define IO_NOT_SUPPORTED (-2)
-#define IO_RESOURCES_EXHAUSTED (-3)
+#define IO_FAIL (-ENOENT)
+#define IO_NOT_SUPPORTED (-ENODEV)
+#define IO_RESOURCES_EXHAUSTED (-ENOMEM)
/* Open a connection to a device */