[MinnowBoard] Recompiling the kernel of the "core-image-sato-sdk" image.

Vasanthi, Jagatha jagatha.vasanthi at intel.com
Mon Jul 6 17:34:54 UTC 2015

Hi Darren
You're right. I was copying the bzImage to the wrong directory and that's why it didn't make a difference. Once I mounted the /dev/sda1 and followed your instructions, everything worked!

Thanks for your help!

-----Original Message-----
From: Darren Hart [mailto:dvhart at linux.intel.com] 
Sent: Wednesday, July 01, 2015 5:34 PM
To: MinnowBoard Development and Community Discussion
Cc: Vasanthi, Jagatha
Subject: Re: [MinnowBoard] Recompiling the kernel of the "core-image-sato-sdk" image.

On 7/1/15 4:50 PM, Vasanthi, Jagatha wrote:
>  Hello
> I'm downloaded the "core-image-sato-sdk" image on the Minnowboard MAX and have had no issues with it so far. But now, I have a need to change some configurations and recompile the kernel. The steps  seem to be working but when I reboot it keeps booting to the old kernel image. I'd like to understand how Minnowboard chooses the kernel image to boot. I looked for a grub config file but could not find it. I would appreciate any leads on this.
> These are the steps I followed:
> 1. cd /usr/src/kernel
> 2. make menuconfig
> 3. made changes and saved them to the .config file 4. Changed 
> EXTRAVERSION in Makefile to unique name 5. ran "make"
> 6. ran "make  modules"
> 7. ran  "make modules_install"
> 8. I tried to run "make install" at this point but it complained that 
> it could not find LILO. So I tried the below steps

Interesting... haven't run into that. But I rarely build on target, especially not entire kernels.

> 9. cp System.map /boot/System.map-PERFORMANCE 10. ln -sf 
> /boot/System.map-PERFORMANCE /boot/System.map 11. cp 
> arch/x86_64/boot/bzImage /boot/

How are you booting? Which exact image and how did you copy it to your boot media?

I suspect copying it to /boot has no effect because that is not the kernel being booted by the boot loader. The hddimg is a fat image with an EFI/BOOT directory for the bootx64.efi payload. The kernel is in the top level directory of the hddimg, but this is NOT /boot. To copy something there from the target itself, you need to mount it. If it's a USB drive:

mount /dev/sda /some/path
cp bzImage /some/path/vmlinuz

I suggest calling it something else, like vmlinuz-test and modifying the boot loader to add a target for -test, then if you mess it up, your image will still boot.

> 12.  Rebooted but new changes did not take effect. I also tried 'uname -r' and did not see the EXTRAVERSION change that I made.
> When I reboot, I always get into the EFI shell , so I have to run "fs0:" and "bootx64". Is bootx64 a file that I can access and read?

bootx64 is in EFI/BOOT/bootx64.efi, you can make this your default boot target by configuring the boot order in the UEFI firmware.

Darren Hart
Intel Open Source Technology Center

More information about the elinux-MinnowBoard mailing list