[yocto] Machine conf for Tegra?

Evade Flow evadeflow at gmail.com
Thu Oct 18 10:24:46 PDT 2012


I need to make a root filesystem for a Tegra2 T20-based system, and
would like to build it with some more aggressive optimizations than
qemuarm provides. I've read through the BSP Developer's Guide, but I'm
not sure how to 'translate' it for my situation, since I don't need to
build a kernel. I just want the cross toolchain and root fs.

I began by creating a folder hierarchy that looks like this:

poky% tree -L 3 meta-tegra
meta-tegra
└── conf
    └── machine
        └── t20-sku13.conf

where I simply copied the contents of qemuarm.conf into t20-sku13.conf:


#@TYPE: Machine
#@NAME: arm_versatile_926ejs
#@DESCRIPTION: arm_versatile_926ejs

require conf/machine/include/qemu.inc
require conf/machine/include/tune-arm926ejs.inc
#require conf/machine/include/tune-arm1136jf-s.inc

KERNEL_IMAGETYPE = "zImage"

SERIAL_CONSOLE = "115200 ttyAMA0"

I could use some help understanding how to tune this for my system. It
seems I probably ought not to include qemu.inc, but should do this
instead(?):

DEFAULTTUNE = "cortexa9"
require conf/machine/include/tune-cortexa9.inc


But I'm not sure whether this is optimal. Here are some details on the
target system:

~ # uname -a
Linux localhost 2.6.36.2-WR3.0.2ax_standard #1 SMP PREEMPT Wed Oct 19 21:58:54
EEST 2011 armv7l armv7l armv7l GNU/Linux ODBP D1.0.1 (10.11.2011)

~ # cat /proc/cpuinfo
Processor       : ARMv7 Processor rev 0 (v7l)
processor       : 0
BogoMIPS        : 1795.68

Features        : swp half thumb fastmult vfp edsp vfpv3 vfpv3d16
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc09
CPU revision    : 0

Hardware        : Tegra P852 SKU13
Revision        : 0000

Googling around, it seems that, ideally, I'd want to get
'-mfpu=vfpv3-d16' in my build options:

  - http://wiki.debian.org/ArmHardFloatPort/VfpComparison#FPU
  - http://www.mail-archive.com/openembedded-core@lists.openembedded.org/msg09497.html

Any advice on how to make this happen, or other suggestions for how to
best support building a root fs for a Tegra2 T20? (Maybe implementing a
'half-baked' layer is overkill for my needs?)



More information about the yocto mailing list