Bug fix: 'for' statement in xdma-demo
Add new app to prototype ideas for a library

Cloned from the xdma-demo.c file.
Move map ptr out of main and add global offset variable

The offset variable will be used to keep track of what part of the map
has been allocated.
Add alloc functions to xdma-app

The allocate function returns the pointer to the start of a DMA array.
While the other function calculates absolute offset within the mmap'ed
region.
Use new allocate functions in xdma-app
Add function to align a buffer length

The DMA driver needs to have buffers aligned to a 32 bit word. However,
the memory map is currently made up of 8 bit chars. Care must be taken
to have offsets and sizes properly aligned.
Generalise the alloc function

Now can work with arrays of many types.
Change type of src/dst arrays
Make init/exit functions for mmap array
Add alloc reset function

Returns the offset (head) pointer to zero.
Rename "rx" to "dst" short for destination
Rename "tx" to "src" short for source
Use sizeof uint8_t instead of char in FILESIZE

Since the map pointer is using uint8_t types the code should be consistent.
Add void as argument to function definitions

This indicates that there are to be no arguments for the functions.
Move query for number of devices into function
White space code formatting changes
Prototype DMA transaction function

Not in its finial form.
Fix up return values for functions

Use 'return' instead of 'exit'. Use return '0' for success and '-1' for
failure.
Move device config code from main to init function
Move data structs local where you can.