Welcome! Log In Create A New Profile


Why do we need custom kernel?

Posted by jevgienij 
Why do we need custom kernel?
December 29, 2018 06:55AM
It's my second day playing with this thing and I'm wondering, why do we need to use a custom kernel from this forums? I found that there is a linux-image-kirkwood_4.9+80+deb9u6_armel.deb package in the official repository. Can't I use that on my NSA310?
Re: Why do we need custom kernel?
December 31, 2018 11:45AM
Someone who's actually worked with that device can probably give you better info, but I did a quick search and found a few things.

The device is running an SoC that works with that kernel and the kernel package includes a dtb for the device but I didn't find anyone claiming to have actually tried to use that kernel with this device anywhere

I've been successful getting that kind of setup working on a few devices but have often run into difficult to troubleshoot issues that need to be worked around.

If you have a suitable rootfs setup for the device already you can try installing that kernel along with flash-kernel and try to get it running. You can also try packaging a uimage with the devices dtb appended and try booting it with the debian installer initrd, all those files are provided here:


If you can get the installer to boot it's a pretty good sign you can get the device working with the stock kernel though you may have to do some manual steps to make sure it boots successfully.

I've described the manual steps I use when setting up the armada-370 based Buffalo NAS devices on my GitHub page, some of those may also apply to your device.
Re: Why do we need custom kernel?
January 01, 2019 05:51AM

It is entirely possible to run Debian mainline kernel on this box. However, there are several disadvantages in doing so.

1. Mainline kernel is a bare minimum build. So it does not have enough kernel modules (sounds, wifi,...) configured in to be useful. One would have to know how to compile modules, and spending enough time doing so, to get a full system to one's liking. In addition, my custom kernel has some patches that add more capabilities to a vanilla kernel.

2. You also need to be aware of whether the mainline kernel has the DTB file embedded inside kernel uImage file. This is because stock u-boot does not understand Flatten Device Tree (FDT) kernel. So people usually have lot of problem get it working. This type of problem was what 1000001101000 has touched upon above.

With my custom u-boot, that problem was solved mostly. But still, some knowledge about embedded Linux device booting process is needed to use the mainline kernel.

3. You don't have dedicated supports in trouble shooting problems that typically occur in embedded Linux device such as this box. Users who installed my released custom kernel and uboot will be able to get helps here.

All that said, if you are an experienced embedded Linux users, you can manage to run mainline kernel with some efforts.

Forum Wiki
bodhi's corner
Re: Why do we need custom kernel?
January 05, 2019 04:03PM
I was just curious. Thank you!

Your Email:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.