<html devsite><head>
    <title>Como criar kernels</title>
    <meta name="project_path" value="/_project.yaml"/>
    <meta name="book_path" value="/_book.yaml"/>
  </head>
  <body>
  <!--
      Copyright 2017 The Android Open Source Project

      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
  -->

<p>
  Esta página detalha como criar apenas o <a href="/devices/architecture/kernel/">kernel</a>. As instruções a seguir presumem que você não fez o download de todo o AOSP. Se você já fez isso, pule para as etapas <code>git clone</code>, exceto a etapa que faz o download das origens do kernel.
</p>

<p>Todos os exemplos nesta seção usam o kernel do <a href="devices.html#hikey-boards">hikey</a>.</p>

<h2 id="figuring-out-which-kernel-to-build">Como selecionar um kernel</h2>
<p>Esta tabela lista o nome e os locais dos binários e origens de kernel:
<table>
  <tbody><tr>
    <th>Dispositivo</th>
    <th>Local do binário</th>
    <th>Local da origem</th>
    <th>Configuração da versão</th>
  </tr>
  <tr>
    <td>blueline</td>
    <td>device/google/crosshatch-kernel</td>
    <td><a href="#building-b1c1">instruções</a></td>
    <td>b1c1_defconfig</td>
  </tr>
  <tr>
    <td>crosshatch</td>
    <td>device/google/crosshatch-kernel</td>
    <td><a href="#building-b1c1">instruções</a></td>
    <td>b1c1_defconfig</td>
  </tr>
  <tr>
    <td>taimen</td>
    <td>device/google/wahoo-kernel</td>
    <td>kernel/msm</td>
    <td>wahoo_defconfig</td>
  </tr>
  <tr>
    <td>walleye</td>
    <td>device/google/wahoo-kernel</td>
    <td>kernel/msm</td>
    <td>wahoo_defconfig</td>
  </tr>
  <tr>
    <td>easel</td>
    <td>N/A</td>
    <td>kernel/arm64</td>
    <td>mnh_prod_defconfig</td>
  </tr>
  <tr>
    <td>marlin</td>
    <td>device/google/marlin-kernel</td>
    <td>kernel/msm</td>
    <td>marlin_defconfig</td>
  </tr>
  <tr>
    <td>sailfish</td>
    <td>device/google/marlin-kernel</td>
    <td>kernel/msm</td>
    <td>marlin_defconfig</td>
  </tr>
  <tr>
    <td>hikey</td>
    <td>device/linaro/hikey-kernel</td>
    <td>kernel/hikey-linaro</td>
    <td>hikey_defconfig</td>
  </tr>
  <tr>
    <td>angler</td>
    <td>device/huawei/angler-kernel</td>
    <td>kernel/msm</td>
    <td>angler_defconfig</td>
  </tr>
  <tr>
    <td>bullhead</td>
    <td>device/lge/bullhead-kernel</td>
    <td>kernel/msm</td>
    <td>bullhead_defconfig</td>
  </tr>
  <tr>
    <td>shamu</td>
    <td>device/moto/shamu-kernel</td>
    <td>kernel/msm</td>
    <td>shamu_defconfig</td>
  </tr>
  <tr>
    <td>fugu</td>
    <td>device/asus/fugu-kernel</td>
    <td>kernel/x86_64</td>
    <td>fugu_defconfig</td>
  </tr>
  <tr>
    <td>volantis</td>
    <td>device/htc/flounder-kernel</td>
    <td>kernel/tegra</td>
    <td>flounder_defconfig</td>
  </tr>
  <tr>
    <td>hammerhead</td>
    <td>device/lge/hammerhead-kernel</td>
    <td>kernel/msm</td>
    <td>hammerhead_defconfig</td>
  </tr>
  <tr>
    <td>flo</td>
    <td>device/asus/flo-kernel/kernel</td>
    <td>kernel/msm</td>
    <td>flo_defconfig</td>
  </tr>
  <tr>
    <td>deb</td>
    <td>device/asus/flo-kernel/kernel</td>
    <td>kernel/msm</td>
    <td>flo_defconfig</td>
  </tr>
  <tr>
    <td>manta</td>
    <td>device/samsung/manta/kernel</td>
    <td>kernel/exynos</td>
    <td>manta_defconfig</td>
  </tr>
  <tr>
    <td>mako</td>
    <td>device/lge/mako-kernel/kernel</td>
    <td>kernel/msm</td>
    <td>mako_defconfig</td>
  </tr>
  <tr>
    <td>grouper</td>
    <td>device/asus/grouper/kernel</td>
    <td>kernel/tegra</td>
    <td>tegra3_android_defconfig</td>
  </tr>
  <tr>
    <td>tilapia</td>
    <td>device/asus/grouper/kernel</td>
    <td>kernel/tegra</td>
    <td>tegra3_android_defconfig</td>
  </tr>
  <tr>
    <td>maguro</td>
    <td>device/samsung/tuna/kernel</td>
    <td>kernel/omap</td>
    <td>tuna_defconfig</td>
  </tr>
  <tr>
    <td>toro</td>
    <td>device/samsung/tuna/kernel</td>
    <td>kernel/omap</td>
    <td>tuna_defconfig</td>
  </tr>
  <tr>
    <td>panda</td>
    <td>device/ti/panda/kernel</td>
    <td>kernel/omap</td>
    <td>panda_defconfig</td>
  </tr>
  <tr>
    <td>stingray</td>
    <td>device/moto/wingray/kernel</td>
    <td>kernel/tegra</td>
    <td>stingray_defconfig</td>
  </tr>
  <tr>
    <td>wingray</td>
    <td>device/moto/wingray/kernel </td>
    <td>kernel/tegra</td>
    <td>stingray_defconfig</td>
  </tr>
  <tr>
    <td>crespo</td>
    <td>device/samsung/crespo/kernel</td>
    <td>kernel/samsung</td>
    <td>herring_defconfig</td>
  </tr>
  <tr>
    <td>crespo4g</td>
    <td>device/samsung/crespo/kernel</td>
    <td>kernel/samsung</td>
    <td>herring_defconfig</td>
  </tr>
</tbody></table>

</p><p>Depois de determinar o projeto do dispositivo com que você quer trabalhar, veja o log do git para o binário do kernel. Os projetos de dispositivos usam o formato <code>device/<var>VENDOR</var>/<var>NAME</var></code>.</p>

<pre class="devsite-click-to-copy">
<code class="devsite-terminal">git clone https://android.googlesource.com/kernel/hikey-linaro</code>
<code class="devsite-terminal">cd hikey-linaro</code>
<code class="devsite-terminal">git log --max-count=1 kernel</code>
</pre>

<p>A mensagem de confirmação do binário do kernel contém um log de git parcial das origens do kernel usadas para criar o binário. A primeira entrada do log é a mais recente (aquela usada para criar o kernel). Anote a mensagem de confirmação, porque você precisará dela posteriormente.</p>

<h2 id="id-version">Como identificar a versão do kernel</h2>

<p>Para determinar a versão do kernel usada em uma imagem do sistema, execute o seguinte comando no arquivo do kernel:</p>

<pre class="devsite-terminal devsite-click-to-copy">
dd if=kernel bs=1 skip=$(LC_ALL=C grep -a -b -o $'\x1f\x8b\x08\x00\x00\x00\x00\x00' kernel | cut -d ':' -f 1) | zgrep -a 'Linux version'
</pre>

<p>Para o Nexus 5 (hammerhead), o comando é:</p>
<pre class="devsite-terminal devsite-click-to-copy">
dd if=zImage-dtb bs=1 skip=$(LC_ALL=C od -Ad -x -w2 zImage-dtb | grep 8b1f | cut -d ' ' -f1 | head -1) | zgrep -a 'Linux version'
</pre>

<h2 id="downloading-sources">Como fazer o download das origens</h2>
<p>Faça o download da origem para o kernel que você quer criar usando o comando <code>git clone</code> apropriado. Por exemplo, o comando a seguir clona o kernel <code>common</code>, um kernel genérico e personalizável:</p>
<pre class="devsite-terminal devsite-click-to-copy">
git clone https://android.googlesource.com/kernel/common
</pre>

<p>Uma lista completa dos projetos do kernel pode ser encontrada no diretório <a href="https://android.googlesource.com/kernel">Kernel</a>. Veja abaixo alguns dos kernels mais usados e os respectivos comandos <code>git clone</code>.</p>

<p>O projeto <code>exynos</code> tem as origens do kernel para Nexus 10 e pode ser usado como um ponto de partida para trabalhar com chipsets do Samsung Exynos.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/exynos</pre>

<p>O projeto <code>goldfish</code> contém as origens do kernel para as plataformas emuladas.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/goldfish</pre>

<p>O projeto <code>hikey-linaro</code> é usado para placas de referência HiKey e pode ser usado como ponto de partida para trabalhar com chipsets HiSilicon 620.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/hikey-linaro</pre>

<p>O projeto <code>msm</code> tem as origens para ADP1, ADP2, Nexus One, Nexus 4, Nexus 5, Nexus 6, Nexus 5X, Nexus 6P, Nexus 7 (2013), Pixel e Pixel XL e pode ser usado como ponto de partida para trabalhar com chipsets Qualcomm MSM.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/msm</pre>

<p>O projeto <code>omap</code> é usado para o PandaBoard e o Galaxy Nexus e pode ser usado como ponto de partida para trabalhar com chipsets TI OMAP.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/omap</pre>

<p>O projeto <code>samsung</code> é usado para o Nexus S e pode ser usado como ponto de partida para trabalhar com chipsets Samsung Hummingbird.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/samsung</pre>

<p>O projeto <code>tegra</code> destina-se ao Xoom, Nexus 7 (2012), Nexus 9 e pode ser usado como ponto de partida para trabalhar com chipsets NVIDIA Tegra.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/tegra</pre>

<p>O projeto <code>x86_64</code> tem as origens de kernel para o Nexus Player e pode ser usado como um ponto de partida para trabalhar com chipsets Intel x86_64.</p>
<pre class="devsite-terminal devsite-click-to-copy">git clone https://android.googlesource.com/kernel/x86_64</pre>

<h2 id="building">Como criar o kernel manualmente</h2>
<p>Depois de ver a última mensagem de confirmação de um kernel e fazer o download da origem do kernel e do gcc pré-criado, você poderá criar o kernel. Os comandos de criação a seguir usam o kernel do hikey:</p>
<pre class="devsite-click-to-copy">
<code class="devsite-terminal">export ARCH=arm64</code>
<code class="devsite-terminal">export CROSS_COMPILE=aarch64-linux-android-</code>
<code class="devsite-terminal">cd hikey-linaro</code>
<code class="devsite-terminal">git checkout -b android-hikey-linaro-4.1 origin/android-hikey-linaro-4.1</code>
<code class="devsite-terminal">make hikey_defconfig</code>
<code class="devsite-terminal">make</code>
</pre>

<p>Para criar um kernel diferente, basta substituir <code>hikey-linaro</code> pelo nome do kernel que você quer criar.</p>

<p>A imagem vai para o diretório <code>arch/arm64/boot/Image</code>, e os binários do kernel vão para o arquivo <code>arch/arm64/boot/dts/hisilicon/hi6220-hikey.dtb</code>. Copie o diretório <code>Image</code> e o arquivo <code>hi6220-hikey.dtb</code> para o diretório <code>hikey-kernel</code>.</p>

<p>Outra alternativa é incluir a variável <code>TARGET_PREBUILT_KERNEL</code> ao usar <code>make bootimage</code> (ou qualquer outra linha de comando <code>make</code> que crie uma imagem de inicialização). Essa variável é compatível com todos os dispositivos, porque ela é configurada por <code>device/common/populate-new-device.sh</code>.
Exemplo:</p>

<pre class="devsite-terminal devsite-click-to-copy">
export TARGET_PREBUILT_KERNEL=$your_kernel_path/arch/arm/boot/zImage-dtb
</pre>

<p class="note"><strong>Observação</strong>: os nomes do kernel diferem de acordo com o dispositivo. Para localizar o nome de arquivo correto do seu kernel, consulte <code>device/<var>VENDOR</var>/<var>NAME</var></code> na origem do kernel.</p>

<h2 id="building-b1c1">Como criar kernels do Pixel 3 (blueline) e Pixel 3 XL (crosshatch)</h2>

<p>Para o Pixel 3 e o Pixel 3 XL, a origem do kernel é separada em vários projetos. Use o <a href="/setup/develop/repo#init">repo</a> para fazer o download da origem do kernel para o branch adequado (até o presente momento, <code><var>VERSION</var></code> deve ser <code>4.9-pie-qpr1</code>):</p>

<pre class="devsite-terminal devsite-click-to-copy">repo init -u https://android.googlesource.com/kernel/manifest -b android-msm-bluecross-$<var>VERSION</var></pre>
<pre class="devsite-terminal devsite-click-to-copy">repo sync</pre>

<p>Em seguida, crie o kernel com:</p>

<pre class="devsite-terminal devsite-click-to-copy">sh build/build.sh</pre>

</body></html>