The LeMaker wiki has them:|
Now, these instructions assume you will be doing this on a different machine than your Banana Pi. It is possbile to do that on Banana Pi, too, but it would take much, much longer (people here on the forum reported it takes over 2 hours, iirc). So, it's recommended to compile on a desktop computer or laptop. If you don't have another system in place that runs Linux, you could still do that by installing Linux for that purpose in a virtual machine (like Virtualbox) or run a live linux CD. If, in any case, you wish to do this on the Banana Pi itself, search the forum on how to compile the Kernel on the Banana Pi directly.
Before you follow the instructions on "Building" the kernel, you should install a compiler (see "Get a Toolchain" on the same page). Then, instead of using LeMaker's kernel source, I would use the Bananian kernel source for best compatibilty (even though the differences are minor). To do that, just replace the line git clone... with this:
Then change to the directory of the downloaded kernel source (it's downloaded to a subfolder). Copy the Code
- git clone https://github.com/Bananian/linux-bananapi.git
Then edit the file arch/arm/configs/sun7i_defconfig and replace the line
with this: Copy the Code
- # CONFIG_BLK_DEV_THROTTLING is not set
Then you can follow the rest of the steps and you will have a Kernel with your desired feature enabled. Copy the Code
Then you just need to replace the uImage file on the /boot/ partition with the file found in arch/arm/boot/uImage and copy the modules found in output/lib/modules/ (grab the whole folder named 3.4.xxx) to you Bananapi installation to /lib/modules/.
(At this point, I'd personally prefer to move the old files to a backup - like mv uImage uImage.old - rather than just overwrite them. In this case you could revert the changes if you find something went wrong.)