[eewiki] I Think I am in the Right Place for this Question

Hello,

Are there build tools for the kernel like rootstock but for Debian based distros, i.e. not Ubuntu? I bring this up now b/c I have a kernel that I built. I think this is the right place to ask since it is dedicated to the BBB/BBGW.

I was listening to some documents on the ARM website and trying to not get too influenced by their way of building, e.g. as the instruction set for building for Debian/Ubuntu for the BBB has these instructions so far: Debian: Getting Started with the BeagleBone Black - Linux Guides - Engineering and Component Solution Forum - TechForum │ Digi-Key .

So, what I am after is this:

  1. Without using Buildroot, what tool comes close to a one liner tool for building on a Debian Host for the BBB target?
  2. Since I am partial to listening to the link above for building from a host (Debian Bullseye) to the target (Debian BBB/BBGW), is their anyway to incorporate these commands for a self-made kernel? Please see below for the commands in question…

Copy Root File System
Debian; Root File System: user@localhost:~$
sudo tar xfvp ./debian-*-*-armhf-*/armhf-rootfs-*.tar -C /media/rootfs/
sync

The above command is okay, I think.


Set uname_r in /boot/uEnv.txt
user@localhost:~$
sudo sh -c "echo 'uname_r=${kernel_version}' >> /media/rootfs/boot/uEnv.txt"

The above command gives concern b/c of the fact that I am already using a built kernel to add to the process of this instance, i.e. {kernel_version} which is used b/c of exporting w/ this command: export kernel_version=5.X.Y-Z .


Copy Kernel Image
Kernel Image:

user@localhost:~$
sudo cp -v ./bb-kernel/deploy/${kernel_version}.zImage /media/rootfs/boot/vmlinuz-${kernel_version}


The above command does not work, i.e. as expected b/c I am not defining the {kernel_version} w/ export nor do I have the ./bb-kernel/deploy/ command as of now. So, this above command needs altering but this is as far as I can make in my build w/ the zImage binary.


Copy Kernel Device Tree Binaries

user@localhost:~$
sudo mkdir -p /media/rootfs/boot/dtbs/${kernel_version}/
sudo tar xfv ./bb-kernel/deploy/${kernel_version}-dtbs.tar.gz -C /media/rootfs/boot/dtbs/${kernel_version}/


Again, I cannot make it this far, i.e. w/ the updated uboot and toolchain b/c of the fact that I did not download the Mainline kernel from this location:

git clone https://github.com/RobertCNelson/bb-kernel


Copy Kernel Modules

user@localhost:~$
sudo tar xfv ./bb-kernel/deploy/${kernel_version}-modules.tar.gz -C /media/rootfs/


Again, I am not this far in building b/c of using my own kernel.


File Systems Table (/etc/fstab)

user@localhost:~/$
sudo sh -c "echo '/dev/mmcblk0p1  /  auto  errors=remount-ro  0  1' >> /media/rootfs/etc/fstab"

Not this far either.

But…if you are interested in what I am describing, please look here on the ARM website and at RootStock tools for Ubuntu: Documentation – Arm Developer .

They use uImage but I built the kernel w/ zImage instead.

Seth

P.S. I know this is asking way too much too soon, esp. w/ life in general. So, if it is you that can build w/ some specific tool outside of Buildroot for a Debian Distro for a BBB, please refer me to the location. I will keep searching and testing.

Most user can figure out if they cloned bb-kernel or ti-linux-kernel-dev and thus need to adjust accordingly…

if you want i can adjust the “git clone” to always use the same directory, but i’d imagine that would confuse user who clone both…

if you cloned bb-kernel use:

sudo cp -v ./bb-kernel/deploy/${kernel_version}.zImage /media/rootfs/boot/vmlinuz-${kernel_version}

if you cloned ti-linux-kernel-dev use:

sudo cp -v ./ti-linux-kernel-dev/deploy/${kernel_version}.zImage /media/rootfs/boot/vmlinuz-${kernel_version}

Regards,

@silver2row how about now?

Regards,

1 Like

Hello @RobertCNelson ,

Yes sir…I understand what you are saying. Things already work. I get this fact and now they work even better than before this small post.

What I was trying to do was make a build of the Linux kernel for ARM arch. and port it to the am335x. I know this has been done, e.g. esp. by you and others in the field.

I was trying from a different perspective w/ updated u-boot ideas and different toolchains along w/ separated kernels.

Porting to the am335x seems a bit of a concern for me now.

I have done it w/ Buildroot and TI’s ideas too w/ their Arago project thingy. Anyway, if I am not making enough sense here, it is only b/c the port to the am335x or any processor the beagleboard.org persons make is not easy. I found it trying w/out the current offerings online at DigiKey TechForum, TI, beagleboard.org, and Buildroot builds with the instructions coming from Bootlin.

Seth

P.S. Thank you for everything you do currently. I appreciate the builds, images, and kernels available from you and beagleboard.org.

1 Like