<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>BootProcess on Embedded Linux Blog</title><link>https://embeddedlinux.blog/en/tags/bootprocess/</link><description>Recent content in BootProcess on Embedded Linux Blog</description><generator>Hugo</generator><language>en</language><lastBuildDate>Mon, 13 Apr 2026 10:09:13 +0700</lastBuildDate><atom:link href="https://embeddedlinux.blog/en/tags/bootprocess/index.xml" rel="self" type="application/rss+xml"/><item><title>[Kernel-QEMU] 1. KGDB debugging from start_kernel with a VS Code interface</title><link>https://embeddedlinux.blog/en/2026/05/02/kernel-qemu-1-kgdb-debug-tu-start_kernel-voi-giao-dien-tren-vs-code/</link><pubDate>Sat, 02 May 2026 06:27:00 +0700</pubDate><guid>https://embeddedlinux.blog/en/2026/05/02/kernel-qemu-1-kgdb-debug-tu-start_kernel-voi-giao-dien-tren-vs-code/</guid><description>&lt;p&gt;As I said in the Kernel-BBB 2 post, without JTAG on the BBB we probably cannot debug the kernel from the very first line. So I am turning to QEMU to have full control over the code.&lt;/p&gt;&#10;&lt;p&gt;Oh, in this post I clone the sources and build the related components, no Yocto this time (If yocto is my strength, what am i without Yocto :vv Haha)&lt;/p&gt;</description></item><item><title>[Boot-BBB] 5. Create a Beaglebone Black image with Buildroot</title><link>https://embeddedlinux.blog/en/2025/11/21/boot-bbb-5-tao-beaglebone-black-image-voi-buildroot/</link><pubDate>Fri, 21 Nov 2025 08:58:00 +0700</pubDate><guid>https://embeddedlinux.blog/en/2025/11/21/boot-bbb-5-tao-beaglebone-black-image-voi-buildroot/</guid><description>&lt;p&gt;In this post I show you how to use Buildroot to create a Beaglebone Black image. Simply put, Buildroot is similar to the Yocto Project but leaner, with less configuration. The end goal is to build a custom embedded linux image&lt;/p&gt;</description></item><item><title>[Boot-BBB] 4. Create a root filesystem by hand with busybox</title><link>https://embeddedlinux.blog/en/2025/11/15/boot-bbb-4-tao-root-filesystem-thu-cong-voi-busybox/</link><pubDate>Sat, 15 Nov 2025 06:30:00 +0700</pubDate><guid>https://embeddedlinux.blog/en/2025/11/15/boot-bbb-4-tao-root-filesystem-thu-cong-voi-busybox/</guid><description>&lt;p&gt;Okay, in today's post I continue by showing you how to create a root filesystem by hand, with utilities from busybox (utilities here means the binaries behind commands such as &amp;quot;ls&amp;quot;, &amp;quot;cat&amp;quot;, ...)&lt;/p&gt;&#10;&lt;p&gt;Even a basic root filesystem (rfs) needs around 50 commands.&lt;/p&gt;</description></item><item><title>[Boot-BBB] 3. Compile the Linux Kernel and configure u-boot automatically</title><link>https://embeddedlinux.blog/en/2025/11/08/boot-bbb-3-comiple-linux-kernel-va-cau-hinh-uboot-env/</link><pubDate>Sat, 08 Nov 2025 07:16:00 +0700</pubDate><guid>https://embeddedlinux.blog/en/2025/11/08/boot-bbb-3-comiple-linux-kernel-va-cau-hinh-uboot-env/</guid><description>&lt;p&gt;In the previous post we stopped at the missing u-boot configuration. In this post we compile the kernel and add a uboot.env configuration file so the bootloader runs properly.&lt;/p&gt;&#10;&lt;h2 id="1-fetch-the-kernel-code-and-compile"&gt;1. Fetch the kernel code and compile&lt;/h2&gt;&#10;&lt;h3 id="11-clone-the-source-code"&gt;1.1 Clone the source code&lt;/h3&gt;&#10;&lt;div class="code-block is-term" translate="no" data-lang="bash" data-pagefind-weight="0.4"&gt;&#10; &lt;div class="code-head" data-pagefind-ignore&gt;&lt;span class="lang"&gt;bash&lt;/span&gt;&lt;button type="button" class="copy-btn" aria-label="Copy" data-copied="Copied"&gt;&lt;svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;&lt;rect x="9" y="9" width="11" height="11" rx="2"/&gt;&lt;path d="M5 15V5a2 2 0 012-2h10"/&gt;&lt;/svg&gt;&lt;span&gt;Copy&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;pre class="term"&gt;&lt;code&gt;&lt;span class="line"&gt;&lt;span class="t-c"&gt;git&lt;/span&gt; clone &lt;a class="t-u" href="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux" target="_blank" rel="noopener"&gt;https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux&lt;/a&gt;&lt;/span&gt;&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#10;&lt;p&gt;It takes quite a while, so grab a snack, drink some coffee, chill, and come back to check later. When I cloned it, it was 5.1 Gb&lt;/p&gt;</description></item><item><title>[Boot-BBB] 2. Compile U-boot and test MLO, u-boot.img</title><link>https://embeddedlinux.blog/en/2025/11/01/boot-bbb-2-u-boot-1-build-va-chay-test-mlo-u-boot-img/</link><pubDate>Sat, 01 Nov 2025 09:18:00 +0700</pubDate><guid>https://embeddedlinux.blog/en/2025/11/01/boot-bbb-2-u-boot-1-build-va-chay-test-mlo-u-boot-img/</guid><description>&lt;p&gt;In this post I will show you how to compile &lt;code&gt;u-boot&lt;/code&gt; from source and configure it for the &lt;strong&gt;Beaglebone Black&lt;/strong&gt; board. For what u-boot is, you can read more at &lt;a href="https://embeddedlinux.blog/en/2025/05/10/bbb-linux-3-beaglebone-black-boot-process-u-boot/"&gt;[BBB-Linux] 3. Beaglebone Black Boot Process - U-boot&lt;/a&gt;&#10;&lt;/p&gt;&#10;&lt;h2 id="1-clone-configure-and-compile-u-boot"&gt;1. Clone, configure and compile u-boot&lt;/h2&gt;&#10;&lt;h3 id="11-clone-and-checkout"&gt;1.1 Clone and checkout&lt;/h3&gt;&#10;&lt;div class="code-block is-term" translate="no" data-lang="bash" data-pagefind-weight="0.4"&gt;&#10; &lt;div class="code-head" data-pagefind-ignore&gt;&lt;span class="lang"&gt;bash&lt;/span&gt;&lt;button type="button" class="copy-btn" aria-label="Copy" data-copied="Copied"&gt;&lt;svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;&lt;rect x="9" y="9" width="11" height="11" rx="2"/&gt;&lt;path d="M5 15V5a2 2 0 012-2h10"/&gt;&lt;/svg&gt;&lt;span&gt;Copy&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;pre class="term"&gt;&lt;code&gt;&lt;span class="line"&gt;&lt;span class="t-c"&gt;git&lt;/span&gt; clone &lt;a class="t-u" href="https://source.denx.de/u-boot/u-boot.git" target="_blank" rel="noopener"&gt;https://source.denx.de/u-boot/u-boot.git&lt;/a&gt;&lt;/span&gt;&#10;&lt;span class="line"&gt;&lt;span class="t-c"&gt;cd&lt;/span&gt; u-boot&lt;/span&gt;&#10;&lt;span class="line"&gt;&lt;span class="t-c"&gt;git&lt;/span&gt; checkout v2023.01&lt;/span&gt;&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#10;&lt;p&gt;I &lt;code&gt;checkout&lt;/code&gt; v2023.01 because that is the version used in the &lt;strong&gt;worklabs bootlin&lt;/strong&gt;, which is highly compatible with the &lt;code&gt;busybox&lt;/code&gt; and &lt;code&gt;buildroot&lt;/code&gt; used in the same series&lt;/p&gt;</description></item><item><title>[Boot-BBB] 1. Build a cross compiler toolchain with crosstool-ng</title><link>https://embeddedlinux.blog/en/2025/10/25/boot-bbb-1-build-cross-compiler-tool/</link><pubDate>Sat, 25 Oct 2025 08:03:00 +0700</pubDate><guid>https://embeddedlinux.blog/en/2025/10/25/boot-bbb-1-build-cross-compiler-tool/</guid><description>&lt;p&gt;Hi everyone, today I am starting a new series called Boot-BBB. This series is independent of the Yocto-BBB series. Here I will not use yocto; instead I will build crosstool-ng, u-boot, buildroot and busybox from source.&lt;/p&gt;&#10;&lt;h2 id="1-why-we-start-with-the-cross-compiler-toolchain"&gt;1. Why we start with the cross compiler toolchain&lt;/h2&gt;&#10;&lt;p&gt;Embedded Linux consists of 4 main components&lt;/p&gt;</description></item></channel></rss>