summaryrefslogtreecommitdiff
path: root/android/images/armv8-android-juno-lsk/HOWTO_releasenotes.txt
blob: 64001c1512d9d05e48d14df1b5cce1ac900d1547 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
h2. License

The use of Juno software is subject to the terms of the Juno "End User License Agreement":https://releases.linaro.org/14.06/android/images/armv8-android-juno-lsk/#tabs-5.


h2. About Juno

Juno is the first 64-bit development platform from ARM, featuring a dual Cortex-A57 "big" cluster, a quad Cortex-A53 "little" cluster, and a Mali T624 GPU cluster with four shader cores.

This board is lead-free (it does not contain Pb).

 

h2. About the Linaro Stable Kernel (LSK)

The Linaro Stable Kernel (LSK) is produced, validated and released by Linaro and is based on the linux stable kernel tree. The LSK focuses on quality and stability and is therefore a great foundation for product development. It also includes backports of commonly desired features, provided they meet the quality requirements, and also any bug fixes.

LSK releases appear monthly. Sources are also made available so you can build your own images (see the "'Building from Source'":https://releases.linaro.org/14.06/android/images/armv8-android-juno-lsk/#tabs-3 tab).


h2. About the Linaro Android Release for ARMv8

The Linaro Android release is based on Android AOSP master snapshot dated June 1st 2014. The release uses Linaro Linux LSK version 3.10 and is integrated with ARM Mali drivers for 3D graphics acceleration. The sources are built using Linaro GCC version 4.9.

The Android AOSP software provided in this release is thoroughly tested for CTS version 4.4 and the CTS results are shared with members. The BIONIC component is validated with Android BIONIC tests. Android Monkey tests were run for stress testing. OpenGL 3D graphics rendering is validated manually to check for any UI artifacts. multi-lib (both 64bit and 32bit applications) were validated using examples provided in Android NDK.

The Linaro Android releases for Juno appear monthly. Sources are also made available so you can build your own images (see the "Building from Source tab":https://releases.linaro.org/14.06/android/images/armv8-juice-juno-lsk/#tabs-5). 


h2. Support

Please send any support enquiries to "juno-support_arm.com":mailto:juno-support@arm.com?subject=Juno%20support%20request

 

h2. Functionality in this release

The current release supports the following:

* Full cold boot support to Linux shell or Android homescreen
* Multicore support in Linux, all six CPUs enabled.
* Experimental big.LITTLE MP support. The code is functional but has not been tuned and there are no performance guarantees.
* Full USB driver support in Linux, for access to mass storage and input devices.
* There is no GPU support for Linux in this release.
* GPU support in Android, functional but *not performant*. The performance issues will be addressed in the next release.
* HDLCD is fully supported, but is not performant on Android. This will be addressed in the next release.
* Thermal protection is enabled. If the SoC reaches 85C it will shut down. Linux will receive a warning at 75C.
* Stable operating points are enabled for nominal (Cortex-A57 800MHz, Cortex-A53 700MHz, Mali T624 600MHz) and overdrive (Cortex-A57 1100MHz, Cortex-A53 850MHz).
* DVFS is supported in the SCP firmware and the Linux CPUFreq driver.
* The Linux CPUIdle driver is included, but is disabled by default. The latency table has not been tuned and when CPUIdle is enabled, performance suffers accordingly. This will be addressed in the next release.
* Android patches and defconfig have been merged to unify the Linux and Android kernels.
* There is no PCIe support in this release.

h3. Functionality listed by software component

h4. SCP Firmware

* System configuration
* DDR initialization
* Basic power state management
* SCPI commands (Ready, Set/Get Clocks, Set/Get CPU power states)
* Thermal protection (shutdown at 85C)
* DVFS support

h4. AP Trusted Firmware

* Send the SCP firmware to SCP
* Initialize the Trusted World before transitioning into Normal World.
* Service CPU hotplug requests coming from Normal World

h4. UEFI

* Booting an Operating System from NOR Flash or USB mass storage
* Support for Ethernet and PXE boot

h4. Linux Kernel

* Enable Juno Compute Subsystem comprised of a dual A57 core cluster and a quad A53 core cluster.
* Enable a limited set of peripherals present on the Juno development board: on-chip USB, non-secure UART, HDMI output, keyboard and mouse functionality over PS/2 connector, Ethernet support via on-board SMSC ethernet chip.
* Experimental big.LITTLE support
* Unified kernel and kernel config for Android and Linux. 

h3. Limitations listed by software component

h4. SCP Firmware

* A number of SCPI commands are not yet implemented or are incomplete.

h4. AP Trusted Firmware

* Does not support changing the primary core using SCC General Purpose Register 1.
* Does not support bringing up secondary cores using PSCI CPU_ON when they have been enabled at boot time by SCP using SCC General Purpose Register 1.
* Does not support Secure-EL1 Payload (i.e. BL3-2)
* Does not support CPU suspend

h4. UEFI

* No PCI Express support included
* No display controller support
* No USB OHCI support. Only EHCI is supported

h4. Linux Kernel

* No PCI Express support included
* No support for MALI graphics other than in Android releases
* big.LITTLE support is experimental and there are no guarantees of performance. This support is disabled by default and must be "enabled":http://community.arm.com/docs/DOC-8664#biglittleenable before it can be used.




h2. Android AOSP Patch Summary

The following list of patches developed by ARM and Linaro engineering teams were applied to Android AOSP dated June 1st 2014 to get Android booting to UI on the ARMv8 Juno development platform. These patches can be found on Linaro's Android Git repositories. Some of these patches have been submitted to AOSP and are being tracked for acceptance.

* "build boot files and generate tarballs":https://android.git.linaro.org/gitweb/platform/build.git/commit/6a33bdf27388be96ed49b7eea4ee3f1ca90700e8
* "set default runtime and zygote property in device config files":https://android.git.linaro.org/gitweb/platform/build.git/commit/2f9ad5ea5eb6ce50d17a600f1df3403bb1e7c60d
* "Increase timeouts":https://android.git.linaro.org/gitweb/platform/frameworks/base.git/commit/4776a5761247eca5750f52757d85bb060570b126
* "Fix resolution issues for Juno.":https://android.git.linaro.org/gitweb/platform/frameworks/native.git/commit/ffa8b0c201615095f6783bc763b0bab9dbea9e33
* "AArch64: force SurfaceFlinger to use last egl config":https://android.git.linaro.org/gitweb/platform/frameworks/native.git/commit/bba5860061cb0119ec8d08da766a3c58b51f9fe4
* "Don't use memset to clear the framebuffer on arm64":https://android.git.linaro.org/gitweb/platform/hardware/libhardware.git/commit/d3080813c4284cd9a700bdc86bf3ee7807b8ceb4
* "Increase timeouts for slow platforms":https://android.git.linaro.org/gitweb/platform/libcore.git/commit/c2ae1bd6b1879071a4ca0f0b3507f695759ebab9
* "Don't write to the tty in init to avoid the cursor":https://android.git.linaro.org/gitweb/platform/system/core.git/commit/3e1977b8f719cc4e652902d7cd2331893d74ac6d
* "Quick and dirty utility to sync the system clock on Juno":https://android.git.linaro.org/gitweb/platform/system/core.git/commit/60d4dfae50a65980b34f28639b468aa8bddea271
* "bionic libc test: make it can be compiled for 64 bit":https://android.git.linaro.org/gitweb/platform/system/extras.git/commit/fcfff0a2c6e95e9e8e0643b4a4e495be60b1189c

 

h2. Known Issues

h3. Issues on OpenEmbedded images

* "ARM-133":https://cards.linaro.org/browse/ARM-133 2nd USB Mass storage device fails
* "ARM-134":https://cards.linaro.org/browse/ARM-134 nfs v4 hangs when creating symlinks
* "Bug 48":https://bugs.linaro.org/show_bug.cgi?id=48 password authentication over SSH doesn't work
* "LP:1192942":https://bugs.launchpad.net/linaro-oe/+bug/1192942 Invalid ps busybox option '-a' when starting or stopping cups
* "LP:1196907":https://bugs.launchpad.net/linaro-oe/+bug/1196907 HTTP downloads get cut short in Foundation model
* "LP:1212126":https://bugs.launchpad.net/linaro-oe/+bug/1212126 perf self test does not execute on Linaro openembedded lamp image
* "LP:1212115":https://bugs.launchpad.net/linaro-oe/+bug/1212115 phpmysql test fail on Linaro openembedded Lamp image on Lava
* "LP:1081162":https://bugs.launchpad.net/linaro-oe/+bug/1081162 No arm64 support in klibc
* "LP:1235239":https://bugs.launchpad.net/linaro-oe/+bug/1235239 level 1 translation fault when extracting bzipped tarball

h3. Issues on all Android images

* "ARM-135":https://cards.linaro.org/browse/ARM-135 Juno: Android fails to boot when board has a date in the future
* "Bug 54":https://bugs.linaro.org/show_bug.cgi?id=54 DNS loopup doesn't work
* "Bug 45":https://bugs.linaro.org/show_bug.cgi?id=45 CTS errors - Unable to resolve host "loca" : No address associated with hostname
* "Bug 12":https://bugs.linaro.org/show_bug.cgi?id=12 Intermittent HDMI failures on 14.06 RC

h3. Issues on Android for ARMv8 images

* "Bug 51":https://bugs.linaro.org/show_bug.cgi?id=51 Two tests from command-bionic_libc_tests fail on LAVA
* "Bug 23":https://bugs.linaro.org/show_bug.cgi?id=23 backtrace_test reports failures on 64/64 build
* "Bug 11":https://bugs.linaro.org/show_bug.cgi?id=11 Browser crashes on Juno in 14.06 RC
* "Bug 10":https://bugs.linaro.org/show_bug.cgi?id=10 settings crashed when running monkey
* ARM JSW-749 Linux [Juno-Beta-rc3] With cpuidle enabled kernels android 64 bit fs shows performance degradation
* ARM JSW-748 Linux [Juno-Beta-rc1] Screen blanking is seen at a regular frequency of one in 10 sec

h3. Issues on Juice images

* "Bug 22":https://bugs.linaro.org/show_bug.cgi?id=22 Caffeinemark crashes
* "Bug 21":https://bugs.linaro.org/show_bug.cgi?id=21 browser crash when closing a tab