Skip to content
Snippets Groups Projects
Commit ba8e3f51 authored by Joakim Bech's avatar Joakim Bech
Browse files

Add juno.md


Signed-off-by: default avatarJoakim Bech <joakim.bech@linaro.org>
Reviewed-by: default avatarIgor Opaniuk <igor.opaniuk@linaro.org>
parent 43b04679
No related branches found
No related tags found
No related merge requests found
# OP-TEE on Juno
# Contents
1. [Introduction](#1-introduction)
2. [Regular build](#2-regular-build)
3. [Install files on the device](#3-install-files-on-the-device)
# 1. Introduction
The instructions here will tell how to run OP-TEE on the Juno board.
# 2. Regular build
Start out by following the "Get and build the solution" in the [README.md] file.
# 3. Install files on the device
Enter the firmware console on the juno board and press enter to stop the auto
boot flow
```
ARM V2M_Juno Firmware v1.3.9
Build Date: Nov 11 2015
Time : 12:50:45
Date : 29:03:2016
Press Enter to stop auto boot...
```
Enable ftp at the firmware prompt
```
Cmd> ftp_on
Enabling ftp server...
MAC address: xxxxxxxxxxxx
IP address: 192.168.1.158
Local host name = V2M-JUNO-A2
```
Flash the binary by running (note the IP address from above):
```
make JUNO_IP=192.168.1.158 flash
```
Once the binaries are transferred, reboot the board:
```
Cmd> reboot
```
## 3.1 Update flash and its layout
The flash in the board may need to be updated for the flashing above to
work. If the flashing fails or if ARM-TF refuses to boot due to wrong
version of the SCP binary the flash needs to be updated. To update the
flash please follow the instructions at [Using Linaro's deliverable on
Juno](https://community.arm.com/docs/DOC-10804) selecting one of the zips
under "4.1 Prebuilt configurations" flashing it as described under "5.
Running the software".
## 3.2 GlobalPlatform testsuite support
**Note!**
Depending on the Juno pre-built configuration, the built ramdisk.img
size with GlobalPlatform testsuite may exceed its pre-defined Juno flash
memory reserved location (image.txt file).
In that case, you will need to extend the Juno flash block size reserved
location for the ramdisk.img in the image.txt file accordingly and
follow the instructions under "5.7.1 Update flash and its layout".
**Example with juno-latest-busybox-uboot.zip:**
The current ramdisk.img size with GlobalPlatform testsuite is 8.6 MBytes.
###### Updated file is /JUNO/SITE1/HBI0262B/images.txt (limited to 8.3 MB)
```
NOR4UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
NOR4ADDRESS: 0x01800000 ;Image Flash Address
NOR4FILE: \SOFTWARE\ramdisk.img ;Image File Name
NOR4NAME: ramdisk.img
NOR4LOAD: 00000000 ;Image Load Address
NOR4ENTRY: 00000000 ;Image Entry Point
```
###### Extended to 16MB
```
NOR4UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
NOR4ADDRESS: 0x01000000 ;Image Flash Address
NOR4FILE: \SOFTWARE\ramdisk.img ;Image File Name
NOR4NAME: ramdisk.img
NOR4LOAD: 00000000 ;Image Load Address
NOR4ENTRY: 00000000 ;Image Entry Point
```
## 3.3 GCC5.x support
##### Note :
In case you are using the **Latest version** of the ARM Juno board (this is
`juno.xml` manifest), the built `ramdisk.img` size with GCC5 compiler, at the
moment, exceeds its pre-defined Juno flash memory reserved location (`image.txt`
file).
To solve this problem you will need to extend the Juno flash block size reserved
location for the `ramdisk.img` and decrease the size for other images in the
`image.txt` file accordingly and then follow the instructions under "3.2" above.
##### Example with juno-latest-busybox-uboot.zip:
The current `ramdisk.img` size with GCC5 compiler is 29.15 MBytes we will
extend it to 32 MBytes. The only changes that you need to do are those in
**bold**
###### File to update is /JUNO/SITE1/HBI0262B/images.txt
```
NOR2UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
NOR2ADDRESS: <b>0x00100000</b> ;Image Flash Address
NOR2FILE: \SOFTWARE\Image ;Image File Name
NOR2NAME: norkern ;Rename kernel to norkern
NOR2LOAD: 00000000 ;Image Load Address
NOR2ENTRY: 00000000 ;Image Entry Point
NOR3UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
NOR3ADDRESS: <b>0x02C00000</b> ;Image Flash Address
NOR3FILE: \SOFTWARE\juno.dtb ;Image File Name
NOR3NAME: board.dtb ;Specify target filename to preserve file extension
NOR3LOAD: 00000000 ;Image Load Address
NOR3ENTRY: 00000000 ;Image Entry Point
NOR4UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
NOR4ADDRESS: <b>0x00D00000</b> ;Image Flash Address
NOR4FILE: \SOFTWARE\ramdisk.img ;Image File Name
NOR4NAME: ramdisk.img
NOR4LOAD: 00000000 ;Image Load Address
NOR4ENTRY: 00000000 ;Image Entry Point
NOR5UPDATE: AUTO ;Image Update:NONE/AUTO/FORCE
NOR5ADDRESS: <b>0x02D00000</b> ;Image Flash Address
NOR5FILE: \SOFTWARE\hdlcdclk.dat ;Image File Name
NOR5LOAD: 00000000 ;Image Load Address
NOR5ENTRY: 00000000 ;Image Entry Point
```
[README.md]: https://github.com/OP-TEE/build/README.md
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment