mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-21 10:43:06 +00:00
855ffdfa65
Nexus 7 is a mini tablet computer co-developed by Google and Asus that runs the Android operating system. The Nexus 7 features a 7" display, an Nvidia Tegra 3 quad-core chip, 1 GB of RAM and 8/16 GB of internal storage. This patch brings support for all 3 known ASUS/Google devices: - Nexus 7 (2012) E1565 - Nexus 7 (2012) PM269 - Nexus 7 (2012) 3G - tilapia Tested-by: Andreas Westman Dorcsak <hedmoo@yahoo.com> # ASUS Grouper E1565 Tested-by: Svyatoslav Ryhel <clamor95@gmail.com> # ASUS Grouper E1565 Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
94 lines
3.1 KiB
ReStructuredText
94 lines
3.1 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0+
|
||
|
||
U-Boot for the ASUS/Google Nexus 7 (2012)
|
||
=========================================
|
||
|
||
``DISCLAMER!`` Moving your ASUS/Google Nexus 7 (2012) to use
|
||
U-Boot assumes replacement of the vendor ASUS bootloader. Vendor
|
||
android firmwares will no longer be able to run on the device.
|
||
This replacement IS reversible.
|
||
|
||
Quick Start
|
||
-----------
|
||
|
||
- Build U-Boot
|
||
- Pack U-Boot into repart-block
|
||
- Flash repart-block into the eMMC
|
||
- Boot
|
||
- Self Upgrading
|
||
|
||
Build U-Boot
|
||
------------
|
||
|
||
Device support is implemented by applying config fragment to a generic
|
||
board defconfig. Valid fragments are ``grouper_E1565.config``,
|
||
``grouper_PM269.config`` and ``tilapia.config``.
|
||
|
||
.. code-block:: bash
|
||
|
||
$ export CROSS_COMPILE=arm-linux-gnueabi-
|
||
$ make grouper_common_defconfig grouper_E1565.config # For maxim based grouper
|
||
$ make
|
||
|
||
After the build succeeds, you will obtain the final ``u-boot-dtb-tegra.bin``
|
||
image, ready for flashing (but check the next section for additional
|
||
adjustments).
|
||
|
||
Pack U-Boot into repar-block
|
||
----------------------------
|
||
|
||
``DISCLAMER!`` All questions related to re-crypt work should be asked
|
||
in re-crypt repo issues. NOT HERE!
|
||
|
||
re-crypt is a small script which packs ``u-boot-dtb-tegra.bin`` in
|
||
form usable by device. This process is required only on the first
|
||
installation or to recover the device in case of a failed update.
|
||
You need to know your tablet's individual SBK to continue.
|
||
|
||
.. code-block:: bash
|
||
|
||
$ git clone https://github.com/clamor-s/re-crypt.git
|
||
$ cd re-crypt # place your u-boot-dtb-regra.bin here
|
||
$ ./re-crypt.sh -d grouper -k deadbeefdeadc0dedeadd00dfee1dead
|
||
|
||
Script will produce you a ``repart-block.bin`` ready to flash.
|
||
|
||
Flash repart-block into the eMMC
|
||
--------------------------------
|
||
|
||
``DISCLAMER!`` All questions related to NvFlash should be asked
|
||
in the proper place. NOT HERE! Flashing repart-block will erase
|
||
all your eMMC, so make a backup before!
|
||
|
||
``repart-block.bin`` contains BCT and bootloader in encrypted state
|
||
in form which can just be written RAW at the start of eMMC.
|
||
|
||
.. code-block:: bash
|
||
|
||
$ wheelie --blob blob.bin
|
||
$ nvflash --resume --rawdevicewrite 0 1024 repart-block.bin
|
||
|
||
Boot
|
||
----
|
||
|
||
After flashing ``repart-block.bin`` the device should reboot and turn
|
||
itself off. This is normal behavior if no boot configuration is
|
||
found.
|
||
|
||
To boot Linux, U-Boot will look for an ``extlinux.conf`` configuration
|
||
on eMMC. Additionally if Volume Down button is pressed while booting
|
||
device will enter bootmenu. Bootmenu contains entries to mount eMMC as
|
||
mass storage, fastboot, reboot, reboot RCM, poweroff, enter U-Boot
|
||
console and update bootloader (check next chapter).
|
||
|
||
Flashing ``repart-block.bin`` eliminates vendor restriction on eMMC
|
||
and allows the user to use/partition it in any way the user desires.
|
||
|
||
Self Upgrading
|
||
--------------
|
||
|
||
Place your ``u-boot-dtb-tegra.bin`` on the first partition of the
|
||
eMMC (using ability of u-boot to mount it). Enter bootmenu, choose
|
||
update bootloader option with Power button and U-Boot should update
|
||
itself. Once the process is completed, U-Boot will ask to press any
|
||
button to reboot.
|