Add IO abstraction framework
This is intended primarily for use as a storage abstraction.
It allows operations such as image-loading to be implemented
in a platform-independent fashion.  Each platform registers
a set of IO drivers during initialisation.  The platform must
also provide a function that will return a device and a specifier
that can be used to access specified content.

Clients of the API will primarily use device and entity handles.
The term "entity" is deliberately vague, to allow for different
representations of content accessed using different types of
specifier, but will often be interpreted as a "file" where the
specifier will normally be its path.

This commit builds, but is intended to be paired with a sample
implementation of "load_image" using a semi-hosting driver on FVP.

Change-Id: Id3b52f1c0eb9ce76b44b99fc6b6460803668cc86
1 parent 40a6f64 commit f2f9bb5e712d3ec1d7dda5a5b52c8f8701a93d99
@James Morrissey James Morrissey authored on 10 Feb 2014
Dan Handley committed on 17 Feb 2014
Showing 9 changed files
View
Makefile
View
drivers/io/io_driver.h 0 → 100644
View
include/io_storage.h 0 → 100644
View
include/stdlib/string.h
View
lib/io_storage.c 0 → 100644
View
lib/stdlib/std.c
View
lib/stdlib/strcmp.c 0 → 100644
View
lib/stdlib/strncmp.c 0 → 100644
View
plat/fvp/platform.h