Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ass:labs-2025:02:tasks:01 [2025/08/05 11:18]
florin.stancu created
ass:labs-2025:02:tasks:01 [2026/07/14 15:48] (current)
florin.stancu
Line 13: Line 13:
 === Task 1.1. Compile the Linux kernel === === Task 1.1. Compile the Linux kernel ===
  
-Clone the kernel from the [[https://​github.com/​torvalds/​linux/​|official GitHub repo]], using the ''​v6.12''​ tag.+Clone the kernel from the [[https://​github.com/​torvalds/​linux/​|official GitHub repo]], using the ''​v7.1''​ tag.
 We recommend you to use [[https://​stackoverflow.com/​questions/​1778088/​how-do-i-clone-a-single-branch-in-git|this git cloning technique]] to avoid fetching the entire git history (requiring several GBs of disk space!). We recommend you to use [[https://​stackoverflow.com/​questions/​1778088/​how-do-i-clone-a-single-branch-in-git|this git cloning technique]] to avoid fetching the entire git history (requiring several GBs of disk space!).
  
Line 67: Line 67:
 == Download Buildroot == == Download Buildroot ==
  
-Clone the official [[https://​github.com/​buildroot/​buildroot.git|Buildroot repo]]. We used the latest release, ''​2025.05.x'',​ so make sure to fetch that branch (master should also work, but it is in continuous development and may break at any time! use the versioned branch if you want a hassle-free experience).+Clone the official [[https://​github.com/​buildroot/​buildroot.git|Buildroot repo]]. We used the latest release, ''​2026.05.x'',​ so make sure to fetch that branch (master should also work, but it is in continuous development and may break at any time! use the versioned branch if you want a hassle-free experience).
  
 == Create the configuration == == Create the configuration ==
Line 77: Line 77:
 What we want from Buildroot is a minimal root filesystem and nothing more. So we'll start from a basic ''​defconfig''​ (that'​s it!), then proceed with ''​menuconfig''​ and make the following changes: What we want from Buildroot is a minimal root filesystem and nothing more. So we'll start from a basic ''​defconfig''​ (that'​s it!), then proceed with ''​menuconfig''​ and make the following changes:
  
 +  * Target Options -> //Aarch64 Little Endian//;
 +    * To optimize: Model -> Corted-A55;
   * Enter System Configuration menu.   * Enter System Configuration menu.
     * You can change the //System Banner// to your own liking;     * You can change the //System Banner// to your own liking;
Line 186: Line 188:
       * Notice how it has pre-defined attributes for ''​kernel'',​ ''​fdt'',​ ''​ramdisk''​. These are not simple binary blobs; instead, they each have a role to play in the boot sequence. E.g., U-Boot will know to take the ''​load''​ address of the ''​fdt''​ image and pass it via a certain register (decided by convention) to the ''​kernel'',​ informing it where in memory to look for the FDT.       * Notice how it has pre-defined attributes for ''​kernel'',​ ''​fdt'',​ ''​ramdisk''​. These are not simple binary blobs; instead, they each have a role to play in the boot sequence. E.g., U-Boot will know to take the ''​load''​ address of the ''​fdt''​ image and pass it via a certain register (decided by convention) to the ''​kernel'',​ informing it where in memory to look for the FDT.
  
-Note how we replaced the ''​load''​ and ''​entry''​ addresses with placeholders such as //XXX//. Replace these with whatever addresses you want such as the binaries do not overlap once U-Boot starts loading them.+Note how we replaced the ''​load''​ and ''​entry''​ addresses with placeholders such as //XXX//. Replace these with whatever addresses you want such as the binaries do not overlap once U-Boot starts loading them (e.g.: you can start from ''​0x81000000''​ -- 64MB offset in DRAM, then add the size of the artifact rounded to 1-64MB for the next address and so on).
  
 <note tip> <note tip>
ass/labs-2025/02/tasks/01.1754381895.txt.gz · Last modified: 2025/08/05 11:18 by florin.stancu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0