aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp/x-load
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:14:24 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:29:45 +0100
commit29d6678fd546377459ef75cf54abeef5b969b5cf (patch)
tree8edd65790e37a00d01c3f203f773fe4b5012db18 /meta/recipes-bsp/x-load
parentda49de6885ee1bc424e70bc02f21f6ab920efb55 (diff)
downloadopenembedded-core-contrib-29d6678fd546377459ef75cf54abeef5b969b5cf.tar.gz
Major layout change to the packages directory
Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/recipes-bsp/x-load')
-rw-r--r--meta/recipes-bsp/x-load/files/signGP.c73
-rw-r--r--meta/recipes-bsp/x-load/signgp-native.bb14
-rw-r--r--meta/recipes-bsp/x-load/x-load-git/beagleboard/armv7-a.patch11
-rw-r--r--meta/recipes-bsp/x-load/x-load-git/beagleboard/name.patch14
-rw-r--r--meta/recipes-bsp/x-load/x-load-git/omap3evm/armv7-a.patch11
-rw-r--r--meta/recipes-bsp/x-load/x-load-git/overo/armv7-a.patch11
-rw-r--r--meta/recipes-bsp/x-load/x-load.inc42
-rw-r--r--meta/recipes-bsp/x-load/x-load_git.bb29
8 files changed, 205 insertions, 0 deletions
diff --git a/meta/recipes-bsp/x-load/files/signGP.c b/meta/recipes-bsp/x-load/files/signGP.c
new file mode 100644
index 0000000000..0e8ed07f52
--- /dev/null
+++ b/meta/recipes-bsp/x-load/files/signGP.c
@@ -0,0 +1,73 @@
+//
+// signGP.c
+// Read the x-load.bin file and write out the x-load.bin.ift file.
+// The signed image is the original pre-pended with the size of the image
+// and the load address. If not entered on command line, file name is
+// assumed to be x-load.bin in current directory and load address is
+// 0x40200800.
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+#include <string.h>
+#include <malloc.h>
+
+
+main(int argc, char *argv[])
+{
+ int i;
+ char ifname[FILENAME_MAX], ofname[FILENAME_MAX], ch;
+ FILE *ifile, *ofile;
+ unsigned long loadaddr, len;
+ struct stat sinfo;
+
+
+ // Default to x-load.bin and 0x40200800.
+ strcpy(ifname, "x-load.bin");
+ loadaddr = 0x40200800;
+
+ if ((argc == 2) || (argc == 3))
+ strcpy(ifname, argv[1]);
+
+ if (argc == 3)
+ loadaddr = strtol(argv[2], NULL, 16);
+
+ // Form the output file name.
+ strcpy(ofname, ifname);
+ strcat(ofname, ".ift");
+
+ // Open the input file.
+ ifile = fopen(ifname, "rb");
+ if (ifile == NULL) {
+ printf("Cannot open %s\n", ifname);
+ exit(0);
+ }
+
+ // Get file length.
+ stat(ifname, &sinfo);
+ len = sinfo.st_size;
+
+ // Open the output file and write it.
+ ofile = fopen(ofname, "wb");
+ if (ofile == NULL) {
+ printf("Cannot open %s\n", ofname);
+ fclose(ifile);
+ exit(0);
+ }
+
+ // Pad 1 sector of zeroes.
+ //ch = 0x00;
+ //for (i=0; i<0x200; i++)
+ // fwrite(&ch, 1, 1, ofile);
+
+ fwrite(&len, 1, 4, ofile);
+ fwrite(&loadaddr, 1, 4, ofile);
+ for (i=0; i<len; i++) {
+ fread(&ch, 1, 1, ifile);
+ fwrite(&ch, 1, 1, ofile);
+ }
+
+ fclose(ifile);
+ fclose(ofile);
+}
diff --git a/meta/recipes-bsp/x-load/signgp-native.bb b/meta/recipes-bsp/x-load/signgp-native.bb
new file mode 100644
index 0000000000..7eabb07bce
--- /dev/null
+++ b/meta/recipes-bsp/x-load/signgp-native.bb
@@ -0,0 +1,14 @@
+LICENSE = "unknown"
+DESCRIPTION = "Tool to sign omap3 x-loader images"
+
+inherit native
+SRC_URI = "file://signGP.c"
+
+do_compile() {
+ ${CC} ${WORKDIR}/signGP.c -o signGP
+}
+
+do_install() {
+ install -d ${D}${bindir}/
+ install -m 0755 signGP ${D}${bindir}/
+}
diff --git a/meta/recipes-bsp/x-load/x-load-git/beagleboard/armv7-a.patch b/meta/recipes-bsp/x-load/x-load-git/beagleboard/armv7-a.patch
new file mode 100644
index 0000000000..3131cda6bb
--- /dev/null
+++ b/meta/recipes-bsp/x-load/x-load-git/beagleboard/armv7-a.patch
@@ -0,0 +1,11 @@
+--- git/cpu/omap3/config.mk-orig 2008-05-27 16:46:45.000000000 -0700
++++ git/cpu/omap3/config.mk 2008-05-29 12:50:49.000000000 -0700
+@@ -23,7 +23,7 @@
+ PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -ffixed-r8 \
+ -msoft-float
+
+-PLATFORM_CPPFLAGS += -march=armv7a
++PLATFORM_CPPFLAGS += -march=armv7-a
+ # =========================================================================
+ #
+ # Supply options according to compiler version
diff --git a/meta/recipes-bsp/x-load/x-load-git/beagleboard/name.patch b/meta/recipes-bsp/x-load/x-load-git/beagleboard/name.patch
new file mode 100644
index 0000000000..98dcbae497
--- /dev/null
+++ b/meta/recipes-bsp/x-load/x-load-git/beagleboard/name.patch
@@ -0,0 +1,14 @@
+--- git/Makefile-orig 2008-07-29 22:31:03.000000000 -0700
++++ git/Makefile 2008-07-29 22:34:36.000000000 -0700
+@@ -152,9 +152,9 @@ omap3evm_config : unconfig
+ overo_config : unconfig
+ @./mkconfig $(@:_config=) arm omap3 overo
+
+-omap3530beagle_config : unconfig
++beagleboard_config : unconfig
+
+- @./mkconfig $(@:_config=) arm omap3 omap3530beagle
++ @./mkconfig omap3530beagle arm omap3 omap3530beagle
+
+ #########################################################################
+
diff --git a/meta/recipes-bsp/x-load/x-load-git/omap3evm/armv7-a.patch b/meta/recipes-bsp/x-load/x-load-git/omap3evm/armv7-a.patch
new file mode 100644
index 0000000000..3131cda6bb
--- /dev/null
+++ b/meta/recipes-bsp/x-load/x-load-git/omap3evm/armv7-a.patch
@@ -0,0 +1,11 @@
+--- git/cpu/omap3/config.mk-orig 2008-05-27 16:46:45.000000000 -0700
++++ git/cpu/omap3/config.mk 2008-05-29 12:50:49.000000000 -0700
+@@ -23,7 +23,7 @@
+ PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -ffixed-r8 \
+ -msoft-float
+
+-PLATFORM_CPPFLAGS += -march=armv7a
++PLATFORM_CPPFLAGS += -march=armv7-a
+ # =========================================================================
+ #
+ # Supply options according to compiler version
diff --git a/meta/recipes-bsp/x-load/x-load-git/overo/armv7-a.patch b/meta/recipes-bsp/x-load/x-load-git/overo/armv7-a.patch
new file mode 100644
index 0000000000..3131cda6bb
--- /dev/null
+++ b/meta/recipes-bsp/x-load/x-load-git/overo/armv7-a.patch
@@ -0,0 +1,11 @@
+--- git/cpu/omap3/config.mk-orig 2008-05-27 16:46:45.000000000 -0700
++++ git/cpu/omap3/config.mk 2008-05-29 12:50:49.000000000 -0700
+@@ -23,7 +23,7 @@
+ PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -ffixed-r8 \
+ -msoft-float
+
+-PLATFORM_CPPFLAGS += -march=armv7a
++PLATFORM_CPPFLAGS += -march=armv7-a
+ # =========================================================================
+ #
+ # Supply options according to compiler version
diff --git a/meta/recipes-bsp/x-load/x-load.inc b/meta/recipes-bsp/x-load/x-load.inc
new file mode 100644
index 0000000000..7073b13fe7
--- /dev/null
+++ b/meta/recipes-bsp/x-load/x-load.inc
@@ -0,0 +1,42 @@
+DESCRIPTION = "x-load bootloader loader"
+SECTION = "bootloaders"
+PRIORITY = "optional"
+LICENSE = "GPL"
+
+inherit deploy
+
+DEPENDS = "signgp-native"
+
+PARALLEL_MAKE=""
+
+EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}"
+
+XLOAD_MACHINE ?= "${MACHINE}_config"
+
+XLOAD_IMAGE ?= "x-load-${MACHINE}-${PV}-${PR}.bin.ift"
+XLOAD_SYMLINK ?= "x-load-${MACHINE}.bin.ift"
+MLO_IMAGE ?= "MLO-${MACHINE}-${PV}-${PR}"
+MLO_SYMLINK ?= "MLO-${MACHINE}"
+
+do_compile () {
+ unset LDFLAGS
+ unset CFLAGS
+ unset CPPFLAGS
+ oe_runmake distclean
+ oe_runmake ${XLOAD_MACHINE}
+ oe_runmake
+}
+
+do_deploy () {
+ signGP ${S}/x-load.bin
+ install ${S}/x-load.bin.ift ${DEPLOYDIR}/${XLOAD_IMAGE}
+ install ${S}/x-load.bin.ift ${DEPLOYDIR}/${MLO_IMAGE}
+
+ cd ${DEPLOYDIR}
+ rm -f ${XLOAD_SYMLINK}
+ ln -sf ${XLOAD_IMAGE} ${XLOAD_SYMLINK}
+ rm -f ${MLO_SYMLINK}
+ ln -sf ${MLO_IMAGE} ${MLO_SYMLINK}
+}
+addtask deploy before do_build after do_compile
+
diff --git a/meta/recipes-bsp/x-load/x-load_git.bb b/meta/recipes-bsp/x-load/x-load_git.bb
new file mode 100644
index 0000000000..1c1ce128ae
--- /dev/null
+++ b/meta/recipes-bsp/x-load/x-load_git.bb
@@ -0,0 +1,29 @@
+require x-load.inc
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/x-load-git/${MACHINE}"
+
+SRCREV = "65ed00323f3807197a83abc75d62ed2a8d3f60de"
+
+PV = "1.42+${PR}+git${SRCREV}"
+PR="r12"
+
+SRC_URI = "git://www.sakoman.net/git/x-load-omap3.git;branch=master;protocol=git"
+
+SRC_URI_append_beagleboard = " \
+ file://name.patch;patch=1 \
+ file://armv7-a.patch;patch=1 \
+ "
+
+SRC_URI_append_omap3evm = " \
+ file://armv7-a.patch;patch=1 \
+ "
+
+SRC_URI_append_overo = " \
+ file://armv7-a.patch;patch=1 \
+ "
+
+S = "${WORKDIR}/git"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+COMPATIBLE_MACHINE = "(beagleboard|omap3evm|overo)"