aboutsummaryrefslogtreecommitdiff
path: root/en/source/devices.html
diff options
context:
space:
mode:
Diffstat (limited to 'en/source/devices.html')
-rw-r--r--en/source/devices.html240
1 files changed, 166 insertions, 74 deletions
diff --git a/en/source/devices.html b/en/source/devices.html
index f15da542..4c821d63 100644
--- a/en/source/devices.html
+++ b/en/source/devices.html
@@ -25,38 +25,37 @@
<p>You can create builds for Nexus devices using Android Open Source Project
-(AOSP) builds and the relevant hardware-specific binaries. For available Android
-builds and targeted Nexus devices, see
-<a href="/source/build-numbers.html#source-code-tags-and-builds">Source
-Code, Tags, and Builds</a>.</p>
+(AOSP) builds and the relevant hardware-specific binaries. For available
+Android builds and targeted devices, see
+<a href="/source/build-numbers.html#source-code-tags-and-builds">Source Code,
+Tags, and Builds</a>.</p>
-<p class="note"><b>Note:</b> Due to hardware differences, do not use Android
-4.1.1 on a Nexus 7 originally sold with Android 4.1.2 or newer.</p>
+<p class="note"><strong>Note:</strong> Due to hardware differences, do not use
+Android 4.1.1 on a Nexus 7 originally sold with Android 4.1.2 or later.</p>
-<p>You can also create builds for the
+<p>You can also create builds for
<a href="https://android.googlesource.com/device/linaro/hikey/">HiKey</a>
-Android reference board (described below). Reference boards are designed to help
-non-Nexus component vendors develop and port drivers to Android releases. Using
-a reference board can ease upgrade efforts, reduce time-to-market for new
-Android devices, lower device costs by enabling ODM/OEMs to choose from a wider
-range of compatible components, and increase the speed of innovation among
-component suppliers.</p>
-
-<h2 id="hikey-boards">HiKey boards</h2>
-
-<p>Google supports
-<a href="https://www.96boards.org/products/ce/hikey/">HiKey</a>, a certified
-<a href="http://www.96boards.org/">96Board</a>, as an Android reference board.
-AOSP provides kernel source and board support for HiKey to enable developers to
-easily create and debug new and existing peripheral drivers, do kernel
-development, and perform other tasks with fewer OEM encumbrances.</p>
-
-<p>HiKey boards</a> are available in
+Android reference boards, which are designed to help non-Nexus component vendors
+develop and port drivers to Android releases. Using a reference board can ease
+upgrade efforts, reduce time-to-market for new Android devices, lower device
+costs by enabling ODM/OEMs to choose from a wider range of compatible
+components, and increase the speed of innovation among component suppliers.</p>
+
+<p>Google supports <a href="#620hikey">HiKey</a> and
+<a href="#960hikey">Hikey960</a> certified
+<a href="https://www.96boards.org/products/ce/hikey/">96Boards</a> as Android
+reference boards. AOSP provides kernel source and board support for HiKey so
+developers can easily create and debug new and existing peripheral drivers, do
+kernel development, and perform other tasks with fewer OEM encumbrances.</p>
+
+<h2 id="620hikey">Hikey boards</h2>
+
+<p>The HiKey board (also known as HiKey620) is available in
<a href="http://www.lenovator.com/product/86.html">1GB RAM</a> and
-<a href="http://www.lenovator.com/product/90.html">2GB RAM</a> configurations from
-<a href="http://www.lenovator.com">Lenovator</a>:</p>
+<a href="http://www.lenovator.com/product/90.html">2GB RAM</a> configurations
+from <a href="http://www.lenovator.com">Lenovator</a>:</p>
-<img src="images/hikey-board.png" alt="HiKey board image" />
+<img src="images/hikey620.png" alt="HiKey620 board image" />
<p class="img-caption"><strong>Figure 1.</strong> HiKey board by Lenovator</p>
<p>Additional resources:</p>
@@ -66,92 +65,185 @@ development, and perform other tasks with fewer OEM encumbrances.</p>
schematics</a></li>
<li>
<a href="https://www.96boards.org/wp-content/uploads/2015/02/HiKey_User_Guide_Rev0.2.pdf">HiKey
-User Guide</a></li>
-<li>
-<a href="https://github.com/96boards/documentation/wiki/HiKey-Home">HiKey
-wiki</a></li>
+user guide</a></li>
+<li><a href="https://github.com/96boards/documentation/wiki/">96boards wiki</a></li>
</ul>
-<h2 id="running-android-hikey">Running Android on HiKey</h2>
-
-<p>Use the following commands to download, build, and run Android on a HiKey
+<p>Use the following commands to download, build, and run Android on the HiKey
board.</p>
-<h3 id="compiling-userspace">Compiling userspace</h3>
+<h3 id="620userspace">Compiling userspace</h3>
<ol>
-<li>Download the Android source tree:<br>
-<pre><code>$ repo init -u <a href="https://android.googlesource.com/platform/manifest">https://android.googlesource.com/platform/manifest</a> -b master<br>
-$ repo sync -j24</code></pre></li>
-<li>Download and extract HDMI binaries into the Android source tree:<br>
-<pre><code>$ wget <a href="https://dl.google.com/dl/android/aosp/linaro-hikey-20160226-67c37b1a.tgz">https://dl.google.com/dl/android/aosp/linaro-hikey-20160226-67c37b1a.tgz</a><br>
-$ tar xzf linaro-hikey-20160226-67c37b1a.tgz<br>
-$ ./extract-linaro-hikey.sh</code></pre></li>
-<li>Install mcopy utility:<br>
-<pre><code>$ apt-get install mtools</code></pre></li>
-<li>Build:<br>
-<pre><code>$ . ./build/envsetup.sh<br>
-$ lunch hikey-userdebug<br>
-$ make -j32</code></pre></li>
+<li>Download the Android source tree:
+<pre>$ repo init -u <a href="https://android.googlesource.com/platform/manifest">https://android.googlesource.com/platform/manifest</a> -b master
+$ repo sync -j24</pre></li>
+<li>Download and extract HDMI binaries into the Android source tree:
+<pre>$ wget <a href="https://dl.google.com/dl/android/aosp/linaro-hikey-20160226-67c37b1a.tgz">https://dl.google.com/dl/android/aosp/linaro-hikey-20160226-67c37b1a.tgz</a>
+$ tar xzf linaro-hikey-20160226-67c37b1a.tgz
+$ ./extract-linaro-hikey.sh</pre></li>
+<li>Install mcopy utility:
+<pre>$ apt-get install mtools</pre></li>
+<li>Build:
+<pre>$ . ./build/envsetup.sh
+$ lunch hikey-userdebug
+$ make -j32</pre></li>
</ol>
-<p class="note"><b>Note:</b> For 4GB eMMC, instead of <code>$ make -j32</code>
+<p class="note"><strong>Note:</strong> For 4GB eMMC, instead of <code>$ make -j32</code>
use: <code>$ make -j32 TARGET_USERDATAIMAGE_4GB=true</code>.</p>
-<h3 id="installing-fastboot-ptable">Installing initial fastboot and ptable</h3>
+<h3 id="620fastboot">Installing initial fastboot and ptable</h3>
<ol>
<li>Select special bootloader mode by linking J15 1-2 and 3-4 pins (for details,
refer to the
<a href="https://www.96boards.org/wp-content/uploads/2015/02/HiKey_User_Guide_Rev0.2.pdf">HiKey
-User Guide</a>).</li>
+user guide</a>).</li>
<li>Connect USB to PC to get ttyUSB device (ex: <code>/dev/ttyUSB1</code>).</li>
-<li>Power the board:<br>
-<pre><code>$ cd device/linaro/hikey/installer/hikey<br>
-$ ./flash-all.sh /dev/ttyUSB1 [4g]</code></pre></li>
+<li>Power the board:
+<pre>$ cd device/linaro/hikey/installer/hikey
+$ ./flash-all.sh /dev/ttyUSB1 [4g]</pre></li>
<li>Remove jumper 3-4 and power the board.</li>
</ol>
-<h3 id="flashing-images">Flashing images</h3>
+<h3 id="620images">Flashing images</h3>
<ol>
<li>Enter fastboot mode by linking J15 1-2 and 5-6 pins.</li>
-<li>Run the following commands:<br>
-<pre><code>$ fastboot flash boot out/target/product/hikey/boot.img<br>
-$ fastboot flash -w system out/target/product/hikey/system.img</code></pre></li>
+<li>Run the following commands:
+<pre>$ fastboot flash boot out/target/product/hikey/boot.img
+$ fastboot flash -w system out/target/product/hikey/system.img</pre></li>
<li>Remove jumper 5-6 and power the board.</li>
</ol>
-<h3 id="building-kernel">Building the kernel</h3>
+<h3 id="620kernel">Building the kernel</h3>
<ol>
-<li>Run the following commands:<br>
-<pre><code>$ git clone <a href="https://android.googlesource.com/kernel/hikey-linaro">https://android.googlesource.com/kernel/hikey-linaro</a><br>
-$ cd hikey-linaro<br>
-$ git checkout -b android-hikey-linaro-4.9 origin/android-hikey-linaro-4.9<br>
-$ make ARCH=arm64 hikey_defconfig<br>
-$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- -j24</code></pre></li>
+<li>Run the following commands:
+<pre>$ git clone <a href="https://android.googlesource.com/kernel/hikey-linaro">https://android.googlesource.com/kernel/hikey-linaro</a>
+$ cd hikey-linaro
+$ git checkout -b android-hikey-linaro-4.9 origin/android-hikey-linaro-4.9
+$ make ARCH=arm64 hikey_defconfig
+$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- -j24</pre></li>
<li>Copy output to the hikey kernel directory
(<code>/kernel/hikey-linaro</code>):
-<ol style="list-style-type:lower-alpha">
+<ul>
<li>Copy hi6220-hikey.dtb
(<code>arch/arm64/boot/dts/hisilicon/hi6220-hikey.dtb</code>) to the
hikey-kernel directory as file hi6220-hikey.dtb-4.9.</li>
<li>Copy the Image file <code>(arch/arm64/boot/Image-dtb</code>) to the
-hikey-kernel directory as file Image-dtb-4.9.</li></ol>
+hikey-kernel directory as file Image-dtb-4.9.</li></ul>
<li>Make the boot image:
-<pre>
-$ make bootimage -j24
-</pre>
-</li>
+<pre>$ make bootimage -j24</pre></li>
</ol>
-<h3 id="setting-resolution">Setting monitor resolution</h3>
+<h3 id="620resolution">Setting monitor resolution</h3>
<p>Edit <code>device/linaro/hikey/hikey/BoardConfig.mk</code> parameter
<code>BOARD_KERNEL_CMDLINE</code> and configure the <code>video</code> setting.
Example setting for a 24" monitor: <code>video=HDMI-A-1:1280x800@60</code>.</p>
-<h3 id="configuring-output">Configuring kernel serial output (uart3)</h3>
+<h3 id="620serial">Configuring kernel serial output (uart3)</h3>
<p>Set the J2 low speed expansion connector to 1 - Gnd, 11 - Rx, 13 - Tx. For
details, refer to the
<a href="https://www.96boards.org/wp-content/uploads/2015/02/HiKey_User_Guide_Rev0.2.pdf">HiKey
-User Guide</a>.</p>
+user guide</a>.</p>
+
+
+<h2 id="960hikey">Hikey960 boards</h2>
+
+<p>The HiKey960 board is available in a 3GB RAM configuration from LeMaker (via
+<a href="https://www.amazon.com/dp/B071RD3V34">Amazon.com</a>) and from
+<a href=" http://www.lenovator.com/product/132.html">Lenovator<a/>.</a></p>
+
+<img src="images/hikey960.png" alt="HiKey960 board image" />
+<p class="img-caption"><strong>Figure 2.</strong> HiKey960 board by Lenovator</p>
+
+<p>Additional resources:</p>
+<ul>
+<li>
+<a href="https://github.com/96boards/documentation/blob/master/ConsumerEdition/HiKey960/HardwareDocs/HiKey960_Schematics.pdf">HiKey960
+schematics</a></li>
+<li>
+<a href="http://www.96boards.org/documentation/ConsumerEdition/HiKey960/HardwareDocs/HardwareUserManual.md/">HiKey960
+user guide</a></li>
+<li>
+<a href="https://github.com/96boards/documentation/wiki/">96boards wiki</a></li>
+</ul>
+
+<p>Use the following commands to download, build, and run Android on the
+HiKey960 board.</p>
+
+<h3 id="960userspace">Compiling userspace</h3>
+<ol>
+<li>Download the Android source tree:
+<pre>$ repo init -u <a href="https://android.googlesource.com/platform/manifest">https://android.googlesource.com/platform/manifest</a> -b master
+$ repo sync -j24</pre></li>
+<li>Download and extract binaries into the Android source tree:
+<pre>$ wget https://dl.google.com/dl/android/aosp/arm-hikey960-NOU-6eafa750.tgz
+$ tar xzf arm-hikey960-NOU-6eafa750.tgz
+$ ./extract-arm-hikey960.sh
+$ wget https://dl.google.com/dl/android/aosp/hisilicon-hikey960-NOU-5db76395.tgz
+$ tar xzf hisilicon-hikey960-NOU-5db76395.tgz
+$ ./extract-hisilicon-hikey960.sh</pre></li>
+<li>Build:
+<pre>$ . ./build/envsetup.sh
+$ lunch hikey960-userdebug
+$ make -j32</pre></li>
+</ol>
+
+<h3 id="960fastboot">Installing initial images</h3>
+<ol>
+<li>Select fastboot mode turning ON switch 1 and 3 (for details, refer to the
+HiKey960 user guide).</li>
+<li>Power the board.</li>
+<li>Flash initial images:
+<pre>$ cd device/linaro/hikey/installer/hikey960
+$ ./flash-all.sh</pre></li>
+<li>Turn OFF switch 3 and power cycle the board.</li>
+</ol>
+
+<h3 id="960images">Flashing images</h3>
+<ol>
+<li>Enter fastboot mode by turning ON switch 1 and 3.</li>
+<li>Flash images by running the following commands:
+<pre>$ fastboot flash boot out/target/product/hikey/boot.img
+$ fastboot flash dts out/target/product/hikey960/dt.img
+$ fastboot flash system out/target/product/hikey960/system.img
+$ fastboot flash cache out/target/product/hikey960/cache.img
+$ fastboot flash userdata out/target/product/hikey960/userdata.img</pre>
+</li>
+<li>Turn OFF switch 3 and power cycle the board.</li>
+</ol>
+
+<h3 id="960kernel">Building the kernel</h3>
+<ol>
+<li>Run the following commands:
+<pre>$ git clone <a href="https://android.googlesource.com/kernel/hikey-linaro">https://android.googlesource.com/kernel/hikey-linaro</a>
+$ cd hikey-linaro
+$ git checkout -b android-hikey-linaro-4.4 origin/android-hikey-linaro-4.4
+$ make ARCH=arm64 hikey960_defconfig
+$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- -j24</pre></li>
+<li>Update the kernel in the boot image.
+<ul>
+<li>Copy hi3660-hikey960.dtb
+(<code>arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dtb</code>) to the
+hikey-kernel directory as file hi3660-hikey960.dtb.</li>
+<li>Copy the Image file <code>(arch/arm64/boot/Image.gz</code>) to the
+hikey-kernel directory as file Image.gz-hikey960.</li></ul>
+<li>Make the boot image:
+<pre>$ make bootimage -j24</pre></li>
+</ol>
+
+<h3 id="960serial">Setting serial number</h3>
+<p>To set random serial number, run:
+<pre>$ fastboot getvar nve:SN@<em>16-digit-number</em></pre>
+<p>Bootloader exports the generated serial number to kernel via
+<code>androidboot.serialno=</code>.
+
+<h3 id="960resolution">Setting monitor resolution</h3>
+<p>Edit the <code>device/linaro/hikey/hikey960/BoardConfig.mk</code> parameter
+<code>BOARD_KERNEL_CMDLINE</code> and configure the <code>video</code> setting.
+Example setting for a 24" monitor is <code>video=HDMI-A-1:1280x800@60</code>.
+For a
+<a href="https://www.arrow.com/en/products/96boards-display-7/linksprite-technologies-inc">LinkSprite
+7-inch Display Kit</a>, the setting is <code>video=HDMI-A-1:800x480@60</code>.</p>
</body>
</html>