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 18:33]
florin.stancu
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 188: 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.1754408021.txt.gz · Last modified: 2025/08/05 18:33 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