mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-24 20:13:39 +00:00
95 lines
3.1 KiB
ReStructuredText
95 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.
|