Updated README.md with the v0.3-Juno release information
authorLiviu Dudau <Liviu.Dudau@arm.com>
Tue, 13 May 2014 09:36:45 +0000 (10:36 +0100)
committerLiviu Dudau <Liviu.Dudau@arm.com>
Tue, 13 May 2014 09:36:45 +0000 (10:36 +0100)
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
README.md [new file with mode: 0644]

diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..b7b3a24
--- /dev/null
+++ b/README.md
@@ -0,0 +1,96 @@
+### 1.  Release details
+*  Product Release Status
+      - 0.3-Juno
+*  Linux Kernel BSP
+      - The Linux Kernel BSP contains the upstream version 3.15-rc5 of the 
+        Linux kernel modified to support the Juno development board.
+*  Functionality included
+      - Linux kernel configures the Juno Compute System and a limited set
+        of peripherals on the Juno development board.
+*  New features
+      - full native resolution on HDMI connectors.
+      - USB 1.1 and USB 2.0 devices fully working
+      - Initial support for HMP patchset for AArch64. Please note that the patch has not been fine-tuned for Juno yet.
+      - Initial support for DVFS
+      - Unified defconfig for both standard Linux filesystem and Android
+*  Limitations
+      - No support for MALI graphics chip yet, Linux support will be commited on the next release
+*  Issues resolved since last release
+      - USB keyboard issues fixed
+      - Drivers for DVFS and cpufreq
+      - SCPI clock framework updated to follow the new MHU driver that uses the mailbox mechanisms
+*  Test cases and results
+      - This release does not contain any test cases or example code other
+          than those already present in the upstream version of the kernel.
+*  Other information
+      - Please refer to the supplied documentation.
+
+### 2.  Installation
+
+This is only a short summary of the steps required in order to build
+the Linux kernel and the Juno device tree bindings binaries. It
+assumes that the GNU C cross-compiler used is already set
+in the _$PATH_ environment variable and that the name prefix for the
+toolchain executables is 'aarch64-linux-gnu-'. If this is different
+in your setup, please adjust the command lines accordingly.
+
+*   Ensure clean state of the source code deliverable
+
+    ```
+$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- mrproper
+    ```
+
+*   Initial configuration of the kernel source code
+
+    ```
+$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig
+    ```
+
+*   Please note that if you plan to use the kernel with an Android software stack, the provided defconfig enables all the features needed for it.
+
+*   Kernel compilation. This step needs to be repeated after changes in the kernel source code.
+
+    ```
+$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8
+    ```
+
+*   Device Tree compilation. This step needs to be repeated after changes in the arch/arm64/boot/dts/juno.dts file.
+
+    ```
+$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- dtbs
+    ```
+
+*   Deployment. The kernel binary will be stored in _arch/arm64/boot/Image_ and
+        the compiled device tree bindings in _arch/arm64/boot/dts/juno.dtb_. Copy
+        these two files to the SOFTWARE directory on the mounted Juno board storage.
+
+###3.  Deploying a root filesystem
+
+* This BSP code has been tested with **_minimal_** version of the AArch64 OpenEmbedded
+      filesystem from Linaro.
+* Download the filesystem from here: [14.02 minimal release](http://releases.linaro.org/14.02/openembedded/aarch64/linaro-image-minimal-genericarmv8-20140223-649.rootfs.tar.gz)
+* Format a partition on the USB mass storage as ext4 filesystem. If another 
+      filesystem is preferred then support needs to be enabled in the kernel.
+* Mount the USB mass storage on the computer and extract the rootfs as root
+      onto the formatted partition (replace */media/usb_storage* with the correct
+      path to the mounted directory)
+
+    ```
+$ sudo tar zxf linaro-image-minimal-genericarmv8-20140223-649.rootfs.tar.gz -C /media/usb_storage/
+    ```
+* Return to the directory where you have compiled the kernel and install the built modules onto the USB mass storage partition:
+
+    ```
+$ sudo make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- INSTALL_MOD_PATH=/media/usb_storage modules_install
+    ```
+* Unmount the USB mass storage and place it onto the Juno board in one of the
+      USB ports next to the HDMI connectors.
+
+###4.  Tools
+
+The Linux kernel BSP depends on the availability of a GNU C cross-compiler
+    that supports ARM's v8 architecture. 
+
+###5.  Support
+
+Any feedback is to be routed through [support@arm.com](mailto:support@arm.com).