diff options
Diffstat (limited to 'documentation/kernel-dev/kernel-dev-intro.xml')
| -rw-r--r-- | documentation/kernel-dev/kernel-dev-intro.xml | 92 |
1 files changed, 8 insertions, 84 deletions
diff --git a/documentation/kernel-dev/kernel-dev-intro.xml b/documentation/kernel-dev/kernel-dev-intro.xml index 99faad8316..bc638dcc40 100644 --- a/documentation/kernel-dev/kernel-dev-intro.xml +++ b/documentation/kernel-dev/kernel-dev-intro.xml | |||
| @@ -322,7 +322,7 @@ | |||
| 322 | 322 | ||
| 323 | <para> | 323 | <para> |
| 324 | For traditional kernel development using the Yocto | 324 | For traditional kernel development using the Yocto |
| 325 | Project, you need to establish local copies of the | 325 | Project, you need to establish a local copy of the |
| 326 | kernel source. | 326 | kernel source. |
| 327 | You can find Git repositories of supported Yocto Project | 327 | You can find Git repositories of supported Yocto Project |
| 328 | kernels organized under "Yocto Linux Kernel" in the Yocto | 328 | kernels organized under "Yocto Linux Kernel" in the Yocto |
| @@ -331,94 +331,18 @@ | |||
| 331 | </para> | 331 | </para> |
| 332 | 332 | ||
| 333 | <para> | 333 | <para> |
| 334 | This setup can involve creating a bare clone of the | 334 | For simplicity, it is recommended that you create your copy |
| 335 | Yocto Project kernel and then copying that cloned | 335 | of the kernel Git repository outside of the |
| 336 | repository. | ||
| 337 | You can create the bare clone and the copy of the bare | ||
| 338 | clone anywhere you like. | ||
| 339 | For simplicity, it is recommended that you create these | ||
| 340 | structures outside of the | ||
| 341 | <ulink url='&YOCTO_DOCS_REF_URL;source-directory'>Source Directory</ulink>, | 336 | <ulink url='&YOCTO_DOCS_REF_URL;source-directory'>Source Directory</ulink>, |
| 342 | which is usually named <filename>poky</filename>. | 337 | which is usually named <filename>poky</filename>. |
| 343 | </para> | 338 | </para> |
| 344 | 339 | ||
| 345 | <para> | 340 | <para> |
| 346 | The following steps show how to create a bare clone of the | 341 | The following command shows how to create a local copy of the |
| 347 | <filename>linux-yocto-4.4</filename> kernel and then | 342 | <filename>linux-yocto-4.4</filename> kernel: |
| 348 | create a copy of that clone: | 343 | <literallayout class='monospaced'> |
| 349 | <note> | 344 | $ git clone git://git.yoctoproject.org/linux-yocto-4.4 linux-yocto-4.4.git |
| 350 | When you have a local Yocto Project kernel Git | 345 | </literallayout> |
| 351 | repository, you can reference that repository rather than | ||
| 352 | the upstream Git repository as part of the | ||
| 353 | <filename>clone</filename> command. | ||
| 354 | Doing so can speed up the process. | ||
| 355 | </note> | ||
| 356 | <orderedlist> | ||
| 357 | <listitem><para> | ||
| 358 | <emphasis>Create the Bare Clone:</emphasis> | ||
| 359 | In the following example, the bare clone is named | ||
| 360 | <filename>linux-yocto-4.4.git</filename>: | ||
| 361 | <literallayout class='monospaced'> | ||
| 362 | $ git clone ‐‐bare git://git.yoctoproject.org/linux-yocto-4.4 linux-yocto-4.4.git | ||
| 363 | Cloning into bare repository 'linux-yocto-4.4.git'... | ||
| 364 | remote: Counting objects: 4543903, done. | ||
| 365 | remote: Compressing objects: 100% (695618/695618), done. | ||
| 366 | remote: Total 4543903 (delta 3818435), reused 4541724 (delta 3816256) | ||
| 367 | Receiving objects: 100% (4543903/4543903), 801.08 MiB | 6.55 MiB/s, done. | ||
| 368 | Resolving deltas: 100% (3818435/3818435), done. | ||
| 369 | Checking connectivity... done. | ||
| 370 | </literallayout> | ||
| 371 | </para></listitem> | ||
| 372 | <listitem><para> | ||
| 373 | <emphasis>Create the Copy of the Bare Clone:</emphasis> | ||
| 374 | In the following command, the copy of the bare clone | ||
| 375 | is named <filename>my-linux-yocto-4.4-work</filename>: | ||
| 376 | <literallayout class='monospaced'> | ||
| 377 | $ git clone linux-yocto-4.4.git my-linux-yocto-4.4-work | ||
| 378 | Cloning into 'my-linux-yocto-4.4-work'... | ||
| 379 | done. | ||
| 380 | Checking out files: 100% (52221/52221), done. | ||
| 381 | </literallayout> | ||
| 382 | </para></listitem> | ||
| 383 | <listitem><para> | ||
| 384 | <emphasis>Cloning the <filename>meta-yocto-kernel-extras</filename> Repository:</emphasis> | ||
| 385 | The <filename>meta-yocto-kernel-extras</filename> Git | ||
| 386 | repository contains Metadata needed only if you are | ||
| 387 | modifying and building the kernel image. | ||
| 388 | In particular, it contains the kernel BitBake append | ||
| 389 | (<filename>.bbappend</filename>) files that you edit to | ||
| 390 | point to your locally modified kernel source files and | ||
| 391 | to build the kernel image. | ||
| 392 | Pointing to these local files is much more efficient | ||
| 393 | than requiring a download of the kernel's source files | ||
| 394 | from upstream each time you make changes to the kernel. | ||
| 395 | </para> | ||
| 396 | |||
| 397 | <para>You can find the | ||
| 398 | <filename>meta-yocto-kernel-extras</filename> Git | ||
| 399 | Repository in the "Yocto Metadata Layers" area of the | ||
| 400 | Yocto Project Source Repositories at | ||
| 401 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink>. | ||
| 402 | It is good practice to create this Git repository | ||
| 403 | inside the Source Directory.</para> | ||
| 404 | |||
| 405 | <para>Following is an example that creates the | ||
| 406 | <filename>meta-yocto-kernel-extras</filename> Git | ||
| 407 | repository inside the Source Directory, which is named | ||
| 408 | <filename>poky</filename>, in this case: | ||
| 409 | <literallayout class='monospaced'> | ||
| 410 | $ cd ~/poky | ||
| 411 | $ git clone git://git.yoctoproject.org/meta-yocto-kernel-extras meta-yocto-kernel-extras | ||
| 412 | Cloning into 'meta-yocto-kernel-extras'... | ||
| 413 | remote: Counting objects: 727, done. | ||
| 414 | remote: Compressing objects: 100% (452/452), done. | ||
| 415 | remote: Total 727 (delta 260), reused 719 (delta 252) | ||
| 416 | Receiving objects: 100% (727/727), 536.36 KiB | 0 bytes/s, done. | ||
| 417 | Resolving deltas: 100% (260/260), done. | ||
| 418 | Checking connectivity... done. | ||
| 419 | </literallayout> | ||
| 420 | </para></listitem> | ||
| 421 | </orderedlist> | ||
| 422 | </para> | 346 | </para> |
| 423 | </section> | 347 | </section> |
| 424 | </section> | 348 | </section> |
