--- /dev/null
+Coding Style for the Xen Test Framework
+=======================================
+
+The Xen Test Framework inherits its coding style from the Xen hypervisor.
+
+Indentation
+-----------
+
+Indenting uses spaces, not tabs - in contrast to Linux. An indent
+level consists of four spaces. Code within blocks is indented by one
+extra indent level. The enclosing braces of a block are indented the
+same as the code _outside_ the block. e.g.
+
+void fun(void)
+{
+ /* One level of indent. */
+
+ {
+ /* A second level of indent. */
+ }
+}
+
+White space
+-----------
+
+Space characters are used to spread out logical statements, such as in
+the condition of an if or while. Spaces are placed between the
+keyword and the brackets surrounding the condition, between the
+brackets and the condition itself, and around binary operators (except
+the structure access operators, '.' and '->'). e.g.
+
+if ( (wibble & wombat) == 42 )
+{
+ ...
+
+There should be no trailing white space at the end of lines (including
+after the opening /* of a comment block).
+
+Line Length
+-----------
+
+Lines should be less than 80 characters in length. Long lines should
+be split at sensible places and the trailing portions indented.
+
+User visible strings (e.g., printk() messages) should not be split so
+they can searched for more easily.
+
+Bracing
+-------
+
+Braces ('{' and '}') are usually placed on a line of their own, except
+for the do/while loop. This is unlike the Linux coding style and
+unlike K&R. do/while loops are an exception. e.g.:
+
+if ( condition )
+{
+ /* Do stuff. */
+}
+else
+{
+ /* Other stuff. */
+}
+
+while ( condition )
+{
+ /* Do stuff. */
+}
+
+do {
+ /* Do stuff. */
+} while ( condition );
+
+etc.
+
+Braces should be omitted for blocks with a single statement. e.g.,
+
+if ( condition )
+ single_statement();
+
+Comments
+--------
+
+Only C style /* ... */ comments are to be used. C++ style // comments
+should not be used. Multi-word comments should begin with a capital
+letter and end with a full stop.
+
+Multi-line comment blocks should start and end with comment markers on
+separate lines and each line should begin with a leading '*'.
+
+/*
+ * Example, multi-line comment block.
+ *
+ * Note beginning and end markers on separate lines and leading '*'.
+ */
+
+Emacs local variables
+---------------------
+
+A comment block containing local variables for emacs is permitted at
+the end of files. It should be:
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
+
+Header files
+------------
+
+A microkernel will not make use of system libraries, and provide local
+implementations of all required functionality. C99 however provides
+standard headers which are explicitly safe for embedded use. These
+should be used instead of reimplementing equivalent functionality
+locally.
+
+An incomplete list includes:
+
+ * inttypes.h (PRIx64, ...)
+ * limits.h (INT_MAX, ...)
+ * stdarg.h (va_list, ...)
+ * stdbool.h (bool, true, false)
+ * stdint.h (uint??_t ...)
--- /dev/null
+The Xen Test Framework is licenced under the BSD 2-clause license
+
+Copyright (c) 2014,2015 Citrix Systems Ltd.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--- /dev/null
+% Xen Test Framework
+
+This is a framework for creating microkernel-based tests of Xen, and a suite
+of tests. Tests are performed by the microkernel, with a single test (or
+related set) per domain, with common setup, logging and reporting, designed
+with "ease of automation" in mind for the entire suite of tests.
+
+Tests for more generic areas are build multiple times into different
+microkernels, to test the same functionality from different types of virtual
+machine.
+
+## The framework consists of:
+
+* Nothing (yet)
+
+## TODO List:
+
+* More introductory text
+* Entry points for 32 and 64bit PV and HVM guests
+* Hypercall infrastructure
+* PV console driver
+* Common reporting framework
+* Tests