Apply a patch to 3.8.13-bone47 and recompile kernel

Hi,

I’m running Robert Nelson’s Linux arm 3.8.13-bone47 on a beagle bone black and would like to apply a patch to “/sound/soc/davinci/davinci-evm.c”. I guess I need to recompile the kernel. Can someone tell me what I need to download from where and the steps I should follow to achieve this?

Robert, are you out there? :wink:

Thanks,

Tris

There =>

git clone https://github.com/RobertCNelson/bb-kernel.git
cd bb-kernel/
git checkout origin/am33x-v3.8 -b tmp
./build_kernel.sh

edit the files that you want
then =>

tools/rebuild.sh

Micka,

Thanks :slight_smile:

Is this specific to 3.8.13-bone47 and the beagle bone black?

With this command :

git checkout origin/am33x-v3.8 -b tmp

you will get the last kernel version of the branch 3.8 , which is today; beaglebone 3.8.13-bone55

Micka,

Thank you very much :slight_smile:

I guess I need to do this on a linux pc, not the BBB?

What do I do after doing all that to flash the new kernel onto a BBB?

yes on a linux pc.

( it will kill you to compile the kernel on the bbb … it already takes time on the PC … )

look at this command provided by Robert Nelson => ./tools/install_kernel.sh ( something like that ).

Micka,

Thank you very much for all your help. I’ll crack on with that and come back if I have more questions if thats OK?

Thanks again,

Tris

We are here for that :wink:

Hello

I am a beginner and I was able to follow this page for Cross Compile. Becareful if you are using Firefox because not all the text is rendered.

http://eewiki.net/display/linuxonarm/BeagleBone+Black

I made a copy with all the text if that helps…
http://dumb-looks-free.blogspot.fr/2014/05/beaglebone-black-bbb-cross-compile_28.html

good luck

Thanks! :slight_smile:

So… I have done all that, and the build is complete. Ideally I would like to just replace the kernel on a working bbb with my patched one, rather than blat the box completely and have to manually install. is that possible?

Is it this:

Extract 3.8.13-bone55.2-dtbs.tar.gz to /boot/uboot/dtbs/
Extract 3.8.13-bone55.2-firmware.tar.gz to /lib/firmware/
Extract 3.8.13-bone55.2-modules.tar.gz to /lib/modules
End mv 3.8.13-bone55.2.zImage to /boot/uboot/zImage

That accounts for all files in deploy…

?

No need to do it manually thx to Robert => ./tools/installkernel.sh (something like that)

Great :slight_smile: Sorry for being a muppet, but I’m running the BBB off the internal flash. I have done the build on a linux box. Would I copy the resultant build folder to the BBB and run the /tools/installkernel.sh on the BBB?

Sorry, I feel like a right idiot!

There's so simple way, other then coping the built files from your pc
and extracting them on the bbb while running from eMMC..

Regards,

Cheers Robert :slight_smile:

If I wanted to maybe mod a “flasher” SD card with the new kernel, and then reflash, would that be easier?

Yeap, and for a hint. Take the current "non-flashing" debian image

http://beagleboard.org/latest-images

flash it to a microSD card, install your kernel, test that it works then..

sudo touch /boot/uboot/flash-eMMC.txt
sync
(sudo halt)

on the next boot/reboot/etc... It'll flash the eMMC..

Regards,

Nice one :slight_smile:

"Yeap, and for a hint. Take the current “non-flashing” debian image " - OK with Ubuntu too?

“install your kernel” - by running tools/installkernel.sh on the pc with the SD card plugged in?

Feel like I’m getting closer :slight_smile: Thanks!

Nice one :slight_smile:

"Yeap, and for a hint. Take the current "non-flashing" debian image " - OK
with Ubuntu too?

With this one: (it's the exact same rsync based script as in debian)

http://elinux.org/BeagleBoardUbuntu#BeagleBone.2FBeagleBone_Black

"install your kernel" - by running tools/installkernel.sh on the pc with the
SD card plugged in?

yeap, or if you get stuck, look at:
http://eewiki.net/display/linuxonarm/BeagleBone+Black#BeagleBoneBlack-CopyKernelFiles

for hints.

Regards,