[yocto] Building linux-yocto kernel for BeagleBone

Rudolf Streif rudolf.streif at linux.com
Tue May 29 09:11:11 PDT 2012


Thank you Sanyaade. That's what I tried and I probably should have added
some more detail to my first e-mail.

Here it is:

I create at beaglebone.conf machine configuration with this content:

#@TYPE: Machine
#@NAME: BeagleBone machine
#@DESCRIPTION: Machine configuration for the http://beagleboard.org/boneboard

PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER = "xserver-xorg \
           xf86-input-evdev \
           xf86-video-fbdev"

# Only has DVI connector for external screen
GUI_MACHINE_CLASS = "bigscreen"

# Ship all kernel modules by default
MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"

# Allow for MMC booting (required by the NAND-less Beagleboard XM)
EXTRA_IMAGEDEPENDS += "u-boot x-load"

# Uncomment the following line to enable the hard floating point abi. Note
that
# this breaks some binary libraries and 3D (neither of which ship with
# meta-yocto). For maximum compatibility, leave this disabled.
#DEFAULTTUNE ?= "cortexa8hf-neon"

SOC_FAMILY = "ti33x"
require conf/machine/include/soc-family.inc

require conf/machine/include/tune-cortexa8.inc

IMAGE_FSTYPES += "tar.bz2 jffs2"
EXTRA_IMAGECMD_jffs2 = "-lnp "

# 2.6.37 and later kernels use OMAP_SERIAL, ttyO0
SERIAL_CONSOLE = "115200 ttyO0"

PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "3.0%"

KERNEL_IMAGETYPE = "uImage"

UBOOT_MACHINE = "am335x_evm_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"

MACHINE_FEATURES = "apm usbgadget usbhost vfat alsa"

I created a linux-yocto_3.0.bbappend with this content:

KMACHINE_beaglebone = "yocto/standard/beagleboard"
SRCREV_machine_beaglebone ?= "8fd5a8eb4067c7032389e82d54f0e54e1e27f78c"
COMPATIBLE_MACHINE_beaglebone = "beaglebone"

Then I am trying to boot the BeagleBone with the kernel:

reading uImage



3016584 bytes read

## Booting kernel from Legacy Image at 82000000 ...

   Image Name:   Linux-3.0.24-yocto-standard

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    3016520 Bytes = 2.9 MiB

   Load Address: 80008000

   Entry Point:  80008000

   Verifying Checksum ... OK

   Loading Kernel Image ... OK

OK



Starting kernel ...


And this is where the boot process hangs.


One suggestion here is that machine id of uBoot and the kernel to not
match. I am using MLO and u-boot.img from the SD that shipped with the
BBone. And I set UBOOT_MACHINE = "am335x_evm_config" in beaglebone.conf
which is what uBoot should be using.

I also tried a plain BeagleBoard kernel and MLO and u-boot.img created by
Yocto and it did not work.

Any suggestions would be appreciated.

Rudi


On Sun, May 27, 2012 at 12:34 PM, Sanyaade Adekoya <sanyaade at gmail.com>wrote:

> Hi,
> According to Ti, BeagleBone is just a small BeagleBoard in a small factor
> so a common base like a bare build for BeagleBoard should run
> on BeagleBone. I think the is same for OMAP family.
>
> God blesses!!!
>
> Best regards,
> Sanyaade
>
>
> On 25 May 2012 23:52, Rudolf Streif <rudolf.streif at linux.com> wrote:
>
>> Has anyone tried to build a linux-yocto kernel for the BeagleBone? I
>> understand that there is the meta-ti layer to build an image for the BBone
>> but the recipes are not utilizing the Yocto Project kernels.
>>
>> I know that the OMAP3 CPU of the BBoard is different form the AM355x CPU
>> on the BBone. However, can the yocto/standard/beagleboard branch be
>> leveraged to start off?
>>
>> Thanks,
>> Rudi
>>
>> _______________________________________________
>> yocto mailing list
>> yocto at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/yocto
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20120529/1bbaebcf/attachment.html>


More information about the yocto mailing list