Hi
I have just bought an old Xilinx ML507 and I am trying to build yocto,
but I find some problems building the minimal image
I am a yocto newbie ... thus I wonder if I am missing something important.
My setup: Linux Fedora 18 64 bits
I hope I am following the correct procedure:
git clone git://git.yoctoproject.org/poky
cd poky
git clone git://git.yoctoproject.org/meta-xilinx -b
master-xilinx-ml507-gcc-4.7 meta-xilinx
git clone git://git.openembedded.org/meta-openembedded
. oe-init-build-env
My bblayers contains
BBLAYERS ?= " \
/home/andrea/src/FPGA/poky/meta \
/home/andrea/src/FPGA/poky/meta-yocto \
/home/andrea/src/FPGA/poky/meta-yocto-bsp \
/home/andrea/src/FPGA/poky/meta-openembedded/toolchain-layer \
/home/andrea/src/FPGA/poky/meta-openembedded-contrib/toolchain-layer \
/home/andrea/src/FPGA/poky/meta-xilinx \
/home/andrea/src/FPGA/poky/meta-angstrom \
"
My local.conf contains
BB_NUMBER_THREADS = "4"
PARALLEL_MAKE = "-j 4"
XILINX_LOC ?= "/opt/Xilinx/13.3/ISE_DS"
MACHINE ?= "virtex-5-ml507-powerpc-440"
XILINX_BSP_PATH ?= "/home/andrea/src/FPGA/poky-ml507/xilinx-ml507-updated"
XILINX_BOARD ?= "ml507"
INHERIT += "rm_work"
PREFERRED_VERSION_libffi = "3.0.13"
PREFERRED_VERSION_libffi-native = "3.0.13"
MACHINE ??= "qemux86"
DISTRO ?= "poky"
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K"
CONF_VERSION = "1"
The problems I have found (and someway fixed) are:
1) when I do "bitbake meta-toolchain" I get an error complaining that
the compiler is not able to build for powerpc with FPU
Fix: I have changed the ml507 rules to include just the soft FPU
diff --git a/conf/machine/virtex-5-ml507-powerpc-440.conf
b/conf/machine/virtex-5-ml507-powerpc-440.conf
index d44fc87..d268919 100644
--- a/conf/machine/virtex-5-ml507-powerpc-440.conf
+++ b/conf/machine/virtex-5-ml507-powerpc-440.conf
@@ -5,7 +5,8 @@
#@DESCRIPTION: Machine configuration for the Xilinx ML507 FPGA
development platform with a Virtex-5 PowerPC 440 processor (with APU FPU).
include conf/machine/include/virtex-5/virtex-5-base.inc
-include conf/machine/include/tune-ppc440e.inc
+#AS include conf/machine/include/tune-ppc440e.inc
+include conf/machine/include/tune-ppc440.inc
# Specify linux kernel devicetree
KERNEL_DEVICETREE = "${S}/arch/powerpc/boot/dts/virtex440-ml507.dts"
2) the libffi library version "3.0.12" has a small bug (a misplaced
#ifndef), which is fixed in version "3.0.13"
Fix: I have added to my local.conf
PREFERRED_VERSION_libffi = "3.0.13"
PREFERRED_VERSION_libffi-native = "3.0.13"
This way the toolchain compiles properly
When I try "bitbake core-image-minimal" I get 2 problems:
1) the Xilinx git repository has moved from git.xilinx.com to
github.com/Xilinx
Fix: I have changed the links in u-boot and linux-xilinx
--- a/recipes-bsp/u-boot/u-boot-xilinx_2012.10.bb
+++ b/recipes-bsp/u-boot/u-boot-xilinx_2012.10.bb
@@ -12,7 +12,7 @@ PR = "r01"
# U-Boot source location
KBRANCH = "master"
-SRC_URI =
"git://git.xilinx.com/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
+SRC_URI =
"git://github.com/Xilinx/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/linux/linux-xilinx_3.3.bb
b/recipes-kernel/linux/linux-xilinx_3.3.bb
index d803676..76c1edd 100644
--- a/recipes-kernel/linux/linux-xilinx_3.3.bb
+++ b/recipes-kernel/linux/linux-xilinx_3.3.bb
@@ -18,7 +18,7 @@ SRCREV = "1e92da8e3a66b051766b1be57be67e2bff11e19d"
PR = "r02"
KBRANCH = "master"
-SRC_URI =
"git://git.xilinx.com/linux-xlnx.git;protocol=git;branch=${KBRANCH} \
+SRC_URI =
"git://github.com/Xilinx/linux-xlnx.git;protocol=git;branch=${KBRANCH} \
file://0001-Xilinx-Update-IP-Core-support-for-Xilinx-ISE-14.1.patch \
file://0002-virtex440-ml507.dts-Update-device-tree-file-using-Xi.patch \
file://0003-xilinxfb-Fix-regression-in-call-to-XPS-TFT-controlle.patch \
diff --git a/recipes-kernel/linux/linux-xilinx_3.6.bb
b/recipes-kernel/linux/linux-xilinx_3.6.bb
index 5d529a6..b7d2904 100644
--- a/recipes-kernel/linux/linux-xilinx_3.6.bb
+++ b/recipes-kernel/linux/linux-xilinx_3.6.bb
@@ -17,7 +17,7 @@ SRCREV = "04d9378881401e71f83b8b4fea0abd71d33b4052"
PR = "r02"
KBRANCH = "master"
-SRC_URI =
"git://git.xilinx.com/linux-xlnx.git;protocol=git;branch=${KBRANCH} \
+SRC_URI =
"git://github.com/Xilinx/linux-xlnx.git;protocol=git;branch=${KBRANCH} \
file://defconfig \
"
# Apply machine specific patches.
diff --git a/recipes-kernel/linux/linux-xilinx_git.bb
b/recipes-kernel/linux/linux-xilinx_git.bb
index 1800183..32351f7 100644
--- a/recipes-kernel/linux/linux-xilinx_git.bb
+++ b/recipes-kernel/linux/linux-xilinx_git.bb
@@ -18,7 +18,7 @@ PV = "${LINUX_VERSION}+git-${SRCREV}"
PR = "r18"
KBRANCH = "master-next"
-SRC_URI =
"git://git.xilinx.com/linux-xlnx.git;protocol=git;branch=${KBRANCH} \
+SRC_URI =
"git://github.com/Xilinx/linux-xlnx.git;protocol=git;branch=${KBRANCH} \
file://defconfig"
FILESPATH = "${@base_set_filespath([
'${FILE_DIRNAME}/${PN}/${SOC_FAMILY}' ], d)}"
2) bitbake complains about the license missing from the u-boot recipe
3) I have troubles also with the git.denx.de repository, which I can
easily clone by hand but not by bitbake
Fix: I have added the required variables at the end (and fixed the git
links)
diff --git a/recipes-bsp/u-boot/u-boot-xilinx_git.bb
b/recipes-bsp/u-boot/u-boot-xilinx_git.bb
index 2ae1ec3..7a4a394 100644
--- a/recipes-bsp/u-boot/u-boot-xilinx_git.bb
+++ b/recipes-bsp/u-boot/u-boot-xilinx_git.bb
@@ -4,6 +4,7 @@ require recipes-bsp/u-boot/u-boot.inc
DEFAULT_PREFERENCE = "-1"
PR = "r17"
+
PV_virtex-5 = "v2012.04.01"
PV_microblaze = "v2012.10"
PV_zynq-7 = "v2012.10"
@@ -16,19 +17,27 @@ FILESPATH = "${@base_set_filespath([
'${FILE_DIRNAME}/${PN}/${SOC_FAMILY}' ], d)
# Virtex-5 src location
KBRANCH_virtex-5 = "master"
-SRC_URI_virtex-5 =
"git://git.denx.de/u-boot.git;branch=${KBRANCH};protocol=git"
-SRCREV_virtex-5 = "415d386877df49eb051b85ef74fa59a16dc17c7d"
+#SRC_URI_virtex-5 =
"git://git.denx.de/u-boot.git;branch=${KBRANCH};protocol=git"
+#SRCREV_virtex-5 = "415d386877df49eb051b85ef74fa59a16dc17c7d"
+SRC_URI_virtex-5 =
"git://github.com/Xilinx/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
+SRCREV_virtex-5 = "26786228acfdc0a02190a8d9ca9fcca51a5dcf28"
# Spartan-6 src location
KBRANCH_spartan-6 = "master"
-SRC_URI_spartan-6 =
"git://git.xilinx.com/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
+SRC_URI_spartan-6 =
"git://github.com/Xilinx/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
SRCREV_spartan-6 = "26786228acfdc0a02190a8d9ca9fcca51a5dcf28"
# Zynq-7 src location
KBRANCH_zynq-7 = "master"
-SRC_URI_zynq-7 =
"git://git.xilinx.com/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
+SRC_URI_zynq-7 =
"git://github.com/Xilinx/u-boot-xlnx.git;branch=${KBRANCH};protocol=git"
SRCREV_zynq-7 = "26786228acfdc0a02190a8d9ca9fcca51a5dcf28"
+PV = "${PV_${SOC_FAMILY}}"
+LIC_FILES_CHKSUM = "${LIC_FILES_CHKSUM_${SOC_FAMILY}}"
+KBRANCH = "${KBRANCH_${SOC_FAMILY}}"
+SRC_URI = "${SRC_URI_${SOC_FAMILY}}"
+SRCREV = "${SRCREV_${SOC_FAMILY}}"
+
XILINX_BOARD ?= "${@find_board(bb.data.getVar('XILINX_BSP_PATH', d,
1), d)}"
S = "${WORKDIR}/git"
There still some problems which stop my build ...
I will get them to you in a following email
All the best
AndreaS
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto