summaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-bsp')
-rw-r--r--meta/recipes-bsp/acpid/acpid.inc33
-rwxr-xr-xmeta/recipes-bsp/acpid/acpid/init31
-rw-r--r--meta/recipes-bsp/acpid/acpid/set_socket_noblock.patch10
-rw-r--r--meta/recipes-bsp/acpid/acpid_1.0.10.bb8
-rw-r--r--meta/recipes-bsp/alsa-state/alsa-state.bb58
-rwxr-xr-xmeta/recipes-bsp/alsa-state/alsa-state/alsa-state-init39
-rw-r--r--meta/recipes-bsp/alsa-state/alsa-state/asound.conf1
-rw-r--r--meta/recipes-bsp/alsa-state/alsa-state/asound.state1
-rw-r--r--meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd.service7
-rw-r--r--meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy91
-rw-r--r--meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf16
-rw-r--r--meta/recipes-bsp/apmd/apmd-3.2.2-14/default8
-rwxr-xr-xmeta/recipes-bsp/apmd/apmd-3.2.2-14/init51
-rw-r--r--meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch33
-rw-r--r--meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch25
-rw-r--r--meta/recipes-bsp/apmd/apmd_3.2.2-14.bb82
-rw-r--r--meta/recipes-bsp/eee-acpi-scripts/eee-acpi-scripts_git.bb39
-rw-r--r--meta/recipes-bsp/eee-acpi-scripts/files/policy-funcs8
-rw-r--r--meta/recipes-bsp/eee-acpi-scripts/files/powerbtn.patch22
-rw-r--r--meta/recipes-bsp/eee-acpi-scripts/files/remove-doc-check.patch60
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/config50
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/machconfig0
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemuarm/machconfig10
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemuarmv6/machconfig10
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemuarmv7/machconfig10
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemumips/machconfig10
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemuppc/machconfig10
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemux86-64/machconfig10
-rwxr-xr-xmeta/recipes-bsp/formfactor/files/qemux86/machconfig10
-rw-r--r--meta/recipes-bsp/formfactor/formfactor_0.0.bb21
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch48
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch22
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi_3.0u.bb33
-rw-r--r--meta/recipes-bsp/grub/files/cfg2
-rw-r--r--meta/recipes-bsp/grub/files/check-if-liblzma-is-disabled.patch33
-rw-r--r--meta/recipes-bsp/grub/files/fix-issue-with-flex-2.5.37.patch21
-rw-r--r--meta/recipes-bsp/grub/files/grub-2.00-add-oe-kernel.patch53
-rw-r--r--meta/recipes-bsp/grub/files/grub-2.00-fix-enable_execute_stack-check.patch27
-rw-r--r--meta/recipes-bsp/grub/files/grub-2.00-fpmath-sse-387-fix.patch24
-rw-r--r--meta/recipes-bsp/grub/files/grub-2.00-ignore-gnulib-gets-stupidity.patch28
-rw-r--r--meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch131
-rw-r--r--meta/recipes-bsp/grub/files/grub-no-unused-result.patch19
-rw-r--r--meta/recipes-bsp/grub/grub-0.97/autohell.patch21
-rw-r--r--meta/recipes-bsp/grub/grub-0.97/grub-support-256byte-inode.patch101
-rw-r--r--meta/recipes-bsp/grub/grub-0.97/grub_fix_for_automake-1.12.patch74
-rw-r--r--meta/recipes-bsp/grub/grub-0.97/no-reorder-functions.patch31
-rw-r--r--meta/recipes-bsp/grub/grub-0.97/objcopy-absolute.patch40
-rw-r--r--meta/recipes-bsp/grub/grub-2.00/grub-install.in.patch20
-rw-r--r--meta/recipes-bsp/grub/grub-2.00/remove-gets.patch20
-rw-r--r--meta/recipes-bsp/grub/grub-efi_2.00.bb91
-rwxr-xr-xmeta/recipes-bsp/grub/grub/40_custom9
-rw-r--r--meta/recipes-bsp/grub/grub/autogen.sh-exclude-pc.patch34
-rw-r--r--meta/recipes-bsp/grub/grub_0.97.bb35
-rw-r--r--meta/recipes-bsp/grub/grub_2.00.bb52
-rw-r--r--meta/recipes-bsp/grub/grub_git.bb62
-rw-r--r--meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch39
-rw-r--r--meta/recipes-bsp/gummiboot/gummiboot_git.bb34
-rw-r--r--meta/recipes-bsp/hostap/files/COPYING.patch346
-rw-r--r--meta/recipes-bsp/hostap/files/hostap-fw-load.patch22
-rw-r--r--meta/recipes-bsp/hostap/files/hostap_cs.conf193
-rw-r--r--meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream191
-rw-r--r--meta/recipes-bsp/hostap/files/hostap_cs.modalias28
-rw-r--r--meta/recipes-bsp/hostap/hostap-conf_1.0.bb21
-rw-r--r--meta/recipes-bsp/hostap/hostap-utils.inc26
-rw-r--r--meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb4
-rw-r--r--meta/recipes-bsp/keymaps/files/GPLv2.patch347
-rwxr-xr-xmeta/recipes-bsp/keymaps/files/keymap.sh16
-rw-r--r--meta/recipes-bsp/keymaps/keymaps_1.0.bb28
-rw-r--r--meta/recipes-bsp/libacpi/files/ldflags.patch41
-rw-r--r--meta/recipes-bsp/libacpi/files/libacpi_fix_for_x32.patch47
-rw-r--r--meta/recipes-bsp/libacpi/files/makefile-fix.patch47
-rw-r--r--meta/recipes-bsp/libacpi/files/use_correct_strip_in_cross_environment.patch23
-rw-r--r--meta/recipes-bsp/libacpi/libacpi_0.2.bb30
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz-0.12.20/autotools.patch39
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz-0.12.20/gettext.patch21884
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz-0.12.20/lrzsz-check-locale.h.patch32
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz-0.12.20/lrzsz_fix_for_automake-1.12.patch49
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz-0.12.20/makefile.patch22
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb45
-rw-r--r--meta/recipes-bsp/pciutils/pciutils/configure.patch104
-rw-r--r--meta/recipes-bsp/pciutils/pciutils/guess-fix.patch37
-rw-r--r--meta/recipes-bsp/pciutils/pciutils/lib-build-fix.patch92
-rw-r--r--meta/recipes-bsp/pciutils/pciutils/makefile.patch26
-rw-r--r--meta/recipes-bsp/pciutils/pciutils_3.2.1.bb62
-rw-r--r--meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch101
-rw-r--r--meta/recipes-bsp/pcmciautils/pcmciautils.inc33
-rw-r--r--meta/recipes-bsp/pcmciautils/pcmciautils_018.bb11
-rw-r--r--meta/recipes-bsp/pm-utils/pm-utils_1.4.1.bb26
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/COPYING2
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/pointercal0
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemuarm/pointercal1
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemuarmv6/pointercal1
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemuarmv7/pointercal1
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemumips/pointercal1
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemuppc/pointercalbin0 -> 36 bytes
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemux86-64/pointercal1
-rw-r--r--meta/recipes-bsp/pointercal/pointercal/qemux86/pointercal1
-rw-r--r--meta/recipes-bsp/pointercal/pointercal_0.0.bb22
-rw-r--r--meta/recipes-bsp/setserial/setserial/add_stdlib.patch18
-rw-r--r--meta/recipes-bsp/setserial/setserial_2.17.bb26
-rw-r--r--meta/recipes-bsp/u-boot/files/0001-am335x_evm.h-Add-use-DEFAULT_LINUX_BOOT_ENV-environm.patch74
-rw-r--r--meta/recipes-bsp/u-boot/u-boot-fw-utils-cross_2013.07.bb38
-rw-r--r--meta/recipes-bsp/u-boot/u-boot-fw-utils_2013.07.bb33
-rw-r--r--meta/recipes-bsp/u-boot/u-boot-mkimage_2013.07.bb29
-rw-r--r--meta/recipes-bsp/u-boot/u-boot.inc88
-rw-r--r--meta/recipes-bsp/u-boot/u-boot_2013.07.bb25
-rw-r--r--meta/recipes-bsp/usbinit/usbinit.bb21
-rw-r--r--meta/recipes-bsp/usbinit/usbinit/COPYING.GPL339
-rwxr-xr-xmeta/recipes-bsp/usbinit/usbinit/usb-gether23
-rw-r--r--meta/recipes-bsp/usbutils/usbutils/Fix-NULL-pointer-crash.patch28
-rw-r--r--meta/recipes-bsp/usbutils/usbutils/iconv.patch40
-rw-r--r--meta/recipes-bsp/usbutils/usbutils/usb-devices-avoid-dependency-on-bash.patch30
-rw-r--r--meta/recipes-bsp/usbutils/usbutils_007.bb31
-rw-r--r--meta/recipes-bsp/v86d/v86d/ar-from-env.patch33
-rwxr-xr-xmeta/recipes-bsp/v86d/v86d/fbsetup3
-rw-r--r--meta/recipes-bsp/v86d/v86d_0.1.10.bb41
-rw-r--r--meta/recipes-bsp/x-load/x-load-git/beagleboard/name.patch18
-rw-r--r--meta/recipes-bsp/x-load/x-load.inc40
-rw-r--r--meta/recipes-bsp/x-load/x-load_git.bb21
119 files changed, 26870 insertions, 0 deletions
diff --git a/meta/recipes-bsp/acpid/acpid.inc b/meta/recipes-bsp/acpid/acpid.inc
new file mode 100644
index 0000000..89cb73f
--- /dev/null
+++ b/meta/recipes-bsp/acpid/acpid.inc
@@ -0,0 +1,33 @@
1SUMMARY = "A daemon for delivering ACPI events"
2HOMEPAGE = "http://sourceforge.net/projects/acpid/"
3BUGTRACKER = "http://sourceforge.net/tracker/?group_id=33140&atid=407341"
4SECTION = "base"
5LICENSE = "GPLv2+"
6
7SRC_URI = "${SOURCEFORGE_MIRROR}/acpid/acpid-${PV}.tar.gz \
8 file://init \
9 file://set_socket_noblock.patch "
10
11inherit update-rc.d
12
13INITSCRIPT_NAME = "acpid"
14INITSCRIPT_PARAMS = "defaults"
15
16# Makefile ignores our CFLAGS, so override it.
17#
18EXTRA_OEMAKE = "CFLAGS='-W -Wall -Werror -Wundef -Wshadow ${CFLAGS} $(DEFS)'"
19
20do_compile () {
21 oe_runmake 'CC=${CC} -D_GNU_SOURCE' 'CROSS=${HOST_PREFIX}'
22}
23
24do_install () {
25 install -d ${D}${bindir}
26 oe_runmake 'INSTPREFIX=${D}' install
27 install -d ${D}${sysconfdir}/init.d
28 cat ${WORKDIR}/init | sed -e's,/usr/sbin,${sbindir},g' > ${D}${sysconfdir}/init.d/acpid
29 chmod 755 ${D}${sysconfdir}/init.d/acpid
30
31 install -d ${D}${sysconfdir}/acpi
32 install -d ${D}${sysconfdir}/acpi/events
33}
diff --git a/meta/recipes-bsp/acpid/acpid/init b/meta/recipes-bsp/acpid/acpid/init
new file mode 100755
index 0000000..40ff385
--- /dev/null
+++ b/meta/recipes-bsp/acpid/acpid/init
@@ -0,0 +1,31 @@
1#! /bin/sh -e
2
3test -x /usr/sbin/acpid || exit 0
4test -d /proc/acpi || exit 0
5mkdir -p /etc/acpi/events
6
7case "$1" in
8 start)
9 echo -n "Starting Advanced Configuration and Power Interface daemon: "
10 if [ ! -d /etc/acpi/events ]; then
11 echo "There is not any rule configuration file."
12 else
13 start-stop-daemon -o -S -x /usr/sbin/acpid -- -c /etc/acpi/events
14 echo "acpid."
15 fi
16 ;;
17 stop)
18 echo -n "Stopping Advanced Configuration and Power Interface daemon: "
19 start-stop-daemon -o -K -x /usr/sbin/acpid
20 echo "acpid."
21 ;;
22 restart|force-reload)
23 $0 stop
24 $0 start
25 ;;
26 *)
27 echo "Usage: /etc/init.d/acpid {start|stop|restart|force-reload}"
28 exit 1
29esac
30
31exit 0
diff --git a/meta/recipes-bsp/acpid/acpid/set_socket_noblock.patch b/meta/recipes-bsp/acpid/acpid/set_socket_noblock.patch
new file mode 100644
index 0000000..54d6435
--- /dev/null
+++ b/meta/recipes-bsp/acpid/acpid/set_socket_noblock.patch
@@ -0,0 +1,10 @@
1--- a/acpid.c
2+++ b/acpid.c
3@@ -307,6 +307,7 @@ main(int argc, char **argv)
4 non_root_clients++;
5 }
6 fcntl(cli_fd, F_SETFD, FD_CLOEXEC);
7+ fcntl(cli_fd, F_SETFL, O_NONBLOCK);
8 snprintf(buf, sizeof(buf)-1, "%d[%d:%d]",
9 creds.pid, creds.uid, creds.gid);
10 acpid_add_client(cli_fd, buf);
diff --git a/meta/recipes-bsp/acpid/acpid_1.0.10.bb b/meta/recipes-bsp/acpid/acpid_1.0.10.bb
new file mode 100644
index 0000000..df55bad
--- /dev/null
+++ b/meta/recipes-bsp/acpid/acpid_1.0.10.bb
@@ -0,0 +1,8 @@
1require acpid.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \
4 file://acpid.h;endline=24;md5=324a9cf225ae69ddaad1bf9d942115b5"
5
6
7SRC_URI[md5sum] = "61156ef32015c56dc0f2e3317f4ae09e"
8SRC_URI[sha256sum] = "22703ce0dd7305aca01bc9ac741659c32b1593f1d6fde492df7f01067a534760"
diff --git a/meta/recipes-bsp/alsa-state/alsa-state.bb b/meta/recipes-bsp/alsa-state/alsa-state.bb
new file mode 100644
index 0000000..5ab1b13
--- /dev/null
+++ b/meta/recipes-bsp/alsa-state/alsa-state.bb
@@ -0,0 +1,58 @@
1# Copyright Matthias Hentges <devel@hentges.net> (c) 2007
2# License: MIT (see http://www.opensource.org/licenses/mit-license.php
3# for a copy of the license)
4#
5# Filename: alsa-state.bb
6
7SUMMARY = "Alsa scenario files to enable alsa state restoration"
8DESCRIPTION = "Alsa Scenario Files - an init script and state files to restore \
9sound state at system boot and save it at system shut down."
10LICENSE = "MIT"
11LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
12PV = "0.2.0"
13PR = "r4"
14
15SRC_URI = "\
16 file://asound.conf \
17 file://asound.state \
18 file://alsa-state-init \
19"
20
21inherit update-rc.d
22
23INITSCRIPT_NAME = "alsa-state"
24INITSCRIPT_PARAMS = "start 39 S . stop 31 0 6 ."
25
26do_install() {
27 sed -i -e "s:#STATEDIR#:${localstatedir}/lib/alsa:g" ${WORKDIR}/alsa-state-init
28 install -d ${D}${sysconfdir}/init.d
29 install -m 0755 ${WORKDIR}/alsa-state-init ${D}${sysconfdir}/init.d/alsa-state
30
31 install -d ${D}/${localstatedir}/lib/alsa
32 install -m 0644 ${WORKDIR}/asound.conf ${D}${sysconfdir}
33 install -m 0644 ${WORKDIR}/*.state ${D}${localstatedir}/lib/alsa
34}
35
36PACKAGES += "alsa-states"
37
38RRECOMMENDS_alsa-state = "alsa-states"
39
40RDEPENDS_${PN} = "alsa-utils-alsactl"
41FILES_${PN} = "${sysconfdir}/init.d ${sysconfdir}/asound.conf"
42CONFFILES_${PN} = "${sysconfdir}/asound.conf"
43
44FILES_alsa-states = "${localstatedir}/lib/alsa/*.state"
45
46pkg_postinst_${PN}() {
47 if test -z "$D"
48 then
49 if test -x ${sbindir}/alsactl
50 then
51 ${sbindir}/alsactl -f ${localstatedir}/lib/alsa/asound.state restore
52 fi
53 # INITSCRIPT_PARAMS changed, so remove the old and
54 # install the new setting.
55 update-rc.d -f ${INITSCRIPT_NAME} remove
56 update-rc.d ${INITSCRIPT_NAME} ${INITSCRIPT_PARAMS}
57 fi
58}
diff --git a/meta/recipes-bsp/alsa-state/alsa-state/alsa-state-init b/meta/recipes-bsp/alsa-state/alsa-state/alsa-state-init
new file mode 100755
index 0000000..eee59cb
--- /dev/null
+++ b/meta/recipes-bsp/alsa-state/alsa-state/alsa-state-init
@@ -0,0 +1,39 @@
1#! /bin/sh
2#
3# Copyright Matthias Hentges <devel@hentges.net> (c) 2007
4# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license)
5#
6# Filename: alsa-state
7# Date: 20070308 (YMD)
8
9# source function library
10. /etc/init.d/functions
11
12asound_restore(){
13 echo "ALSA: Restoring mixer settings..."
14 if test -x /usr/sbin/alsactl -a -e #STATEDIR#/asound.state
15 then
16 /usr/sbin/alsactl -f #STATEDIR#/asound.state restore &
17 fi
18}
19
20asound_store(){
21 echo "ALSA: Storing mixer settings..."
22 if test -x /usr/sbin/alsactl
23 then
24 /usr/sbin/alsactl -f #STATEDIR#/asound.state store
25 fi
26}
27
28case "$1" in
29start) asound_restore ;;
30stop) asound_store ;;
31 status)
32 status /usr/sbin/alsactl;
33 exit $?
34 ;;
35 *)
36 echo "Usage: /etc/init.d/alsa-state {start|stop|status}"
37 exit 1
38 ;;
39esac
diff --git a/meta/recipes-bsp/alsa-state/alsa-state/asound.conf b/meta/recipes-bsp/alsa-state/alsa-state/asound.conf
new file mode 100644
index 0000000..03653cf
--- /dev/null
+++ b/meta/recipes-bsp/alsa-state/alsa-state/asound.conf
@@ -0,0 +1 @@
# Global alsa-lib configuration
diff --git a/meta/recipes-bsp/alsa-state/alsa-state/asound.state b/meta/recipes-bsp/alsa-state/alsa-state/asound.state
new file mode 100644
index 0000000..ddd1cce
--- /dev/null
+++ b/meta/recipes-bsp/alsa-state/alsa-state/asound.state
@@ -0,0 +1 @@
# Dummy file, do not delete
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd.service b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd.service
new file mode 100644
index 0000000..ffab823
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd.service
@@ -0,0 +1,7 @@
1[Unit]
2Description=Advanced Power Management daemon
3After=remote-fs.target
4
5[Service]
6EnvironmentFile=-@SYSCONFDIR@/default/apmd
7ExecStart=@SBINDIR@/apmd -P @SYSCONFDIR@/apm/apmd_proxy $APMD
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy
new file mode 100644
index 0000000..c48ee4e
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy
@@ -0,0 +1,91 @@
1#!/bin/sh
2#
3# apmd_proxy - program dispatcher for APM daemon
4#
5# Written by Craig Markwardt (craigm@lheamail.gsfc.nasa.gov) 21 May 1999
6# Modified for Debian by Avery Pennarun
7#
8# This shell script is called by the APM daemon (apmd) when a power
9# management event occurs. Its first and second arguments describe the
10# event. For example, apmd will call "apmd_proxy suspend system" just
11# before the system is suspended.
12#
13# Here are the possible arguments:
14#
15# start - APM daemon has started
16# stop - APM daemon is shutting down
17# suspend critical - APM system indicates critical suspend (++)
18# suspend system - APM system has requested suspend mode
19# suspend user - User has requested suspend mode
20# standby system - APM system has requested standby mode
21# standby user - User has requested standby mode
22# resume suspend - System has resumed from suspend mode
23# resume standby - System has resumed from standby mode
24# resume critical - System has resumed from critical suspend
25# change battery - APM system reported low battery
26# change power - APM system reported AC/battery change
27# change time - APM system reported time change (*)
28# change capability - APM system reported config. change (+)
29#
30# (*) - APM daemon may be configured to not call these sequences
31# (+) - Available if APM kernel supports it.
32# (++) - "suspend critical" is never passed to apmd from the kernel,
33# so we will never see it here. Scripts that process "resume
34# critical" events need to take this into account.
35#
36# It is the proxy script's responsibility to examine the APM status
37# (via /proc/apm) or other status and to take appropriate actions.
38# For example, the script might unmount network drives before the
39# machine is suspended.
40#
41# In Debian, the usual way of adding functionality to the proxy is to
42# add a script to /etc/apm/event.d. This script will be called by
43# apmd_proxy (via run-parts) with the same arguments.
44#
45# If it is important that a certain set of script be run in a certain
46# order on suspend and in a different order on resume, then put all
47# the scripts in /etc/apm/scripts.d instead of /etc/apm/event.d and
48# symlink to these from /etc/apm/suspend.d, /etc/apm/resume.d and
49# /etc/apm/other.d using names whose lexicographical order is the same
50# as the desired order of execution.
51#
52# If the kernel's APM driver supports it, apmd_proxy can return a non-zero
53# exit status on suspend and standby events, indicating that the suspend
54# or standby event should be rejected.
55#
56# *******************************************************************
57
58set -e
59
60# The following doesn't yet work, because current kernels (up to at least
61# 2.4.20) do not support rejection of APM events. Supporting this would
62# require substantial modifications to the APM driver. We will re-enable
63# this feature if the driver is ever modified. -- cph@debian.org
64#
65#SUSPEND_ON_AC=false
66#[ -r /etc/apm/apmd_proxy.conf ] && . /etc/apm/apmd_proxy.conf
67#
68#if [ "${SUSPEND_ON_AC}" = "false" -a "${2}" = "system" ] \
69# && on_ac_power >/dev/null; then
70# # Reject system suspends and standbys if we are on AC power
71# exit 1 # Reject (NOTE kernel support must be enabled)
72#fi
73
74if [ "${1}" = "suspend" -o "${1}" = "standby" ]; then
75 run-parts -a "${1}" -a "${2}" /etc/apm/event.d
76 if [ -d /etc/apm/suspend.d ]; then
77 run-parts -a "${1}" -a "${2}" /etc/apm/suspend.d
78 fi
79elif [ "${1}" = "resume" ]; then
80 if [ -d /etc/apm/resume.d ]; then
81 run-parts -a "${1}" -a "${2}" /etc/apm/resume.d
82 fi
83 run-parts -a "${1}" -a "${2}" /etc/apm/event.d
84else
85 run-parts -a "${1}" -a "${2}" /etc/apm/event.d
86 if [ -d /etc/apm/other.d ]; then
87 run-parts -a "${1}" -a "${2}" /etc/apm/other.d
88 fi
89fi
90
91exit 0
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf
new file mode 100644
index 0000000..751145c
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf
@@ -0,0 +1,16 @@
1# /etc/apm/apmd_proxy.conf: configuration file for apmd.
2#
3# This file is managed by debconf when installing or reconfiguring the
4# package. It is generated by merging the answers gathered by debconf
5# into the template file "/usr/share/apmd/apmd_proxy.conf".
6
7# The following doesn't yet work, because current kernels (up to at least
8# 2.4.20) do not support rejection of APM events. Supporting this would
9# require substantial modifications to the APM driver. We will re-enable
10# this feature if the driver is ever modified. -- cph@debian.org
11#
12# Set the following to "false" if you want to reject system suspend or
13# system standby requests when the computer is running on AC power.
14# Otherwise set this to "true". Such requests are never rejected when
15# the computer is running on battery power.
16#SUSPEND_ON_AC=true
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/default b/meta/recipes-bsp/apmd/apmd-3.2.2-14/default
new file mode 100644
index 0000000..4b7965a
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/default
@@ -0,0 +1,8 @@
1#
2# Default for /etc/init.d/apmd
3#
4
5# As apmd can be called with arguments, we use the following variable
6# to store them, e.g., APMD="-w 5 -p 2".
7# See the manual page apmd(8) for details.
8APMD="--proxy-timeout 30"
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/init b/meta/recipes-bsp/apmd/apmd-3.2.2-14/init
new file mode 100755
index 0000000..c0b41aa
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/init
@@ -0,0 +1,51 @@
1#!/bin/sh
2### BEGIN INIT INFO
3# Provides: apmd
4# Required-Start: $remote_fs
5# Required-Stop: $remote_fs
6# Default-Start: 2 3 4 5
7# Default-Stop: 0 1 6
8# Short-Description: Advanced Power Management daemon
9### END INIT INFO
10
11# Source function library.
12. /etc/init.d/functions
13
14PATH=/bin:/usr/bin:/sbin:/usr/sbin
15
16[ -f /etc/default/rcS ] && . /etc/default/rcS
17[ -f /etc/default/apmd ] && . /etc/default/apmd
18
19case "$1" in
20 start)
21 echo -n "Starting advanced power management daemon: "
22 start-stop-daemon -S -x /usr/sbin/apmd -- \
23 -P /etc/apm/apmd_proxy $APMD
24 if [ $? = 0 ]; then
25 echo "apmd."
26 else
27 echo "(failed.)"
28 fi
29 ;;
30 stop)
31 echo -n "Stopping advanced power management daemon: "
32 start-stop-daemon -K \
33 -x /usr/sbin/apmd
34 echo "apmd."
35 ;;
36 status)
37 status /usr/sbin/apmd;
38 exit $?
39 ;;
40 restart|force-reload)
41 $0 stop
42 $0 start
43 exit
44 ;;
45 *)
46 echo "Usage: /etc/init.d/apmd {start|stop|status|restart|force-reload}"
47 exit 1
48 ;;
49esac
50
51exit 0
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch b/meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch
new file mode 100644
index 0000000..834ee08
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch
@@ -0,0 +1,33 @@
1Add by RP to address "unable to infer tagged configuration" error:
2 commit 35de05e61b88c0808a5e885bb0efdf420555d5ad
3 Author: Richard Purdie <rpurdie@rpsys.net>
4 Date: Sun Jun 1 16:13:38 2008 +0000
5
6 apmd: Use libtool --tag options to avoid problems with libtool 2.2.4 (from poky)
7
8However I didn't see same issue with current libtool-2.2.10. Also per my understanding,
9the default tag, if not specified, falls back to CC. So disable it from patching, but
10keep it here. If we encounter similar issue in the future, we could then push upstream
11
12Comment added by Kevin Tian <kevin.tian@intel.com>, 2010-07-16
13
14Upstream-Status: Pending
15
16Signed-off-by: Scott Garman <scott.a.garman@intel.com>
17
18Index: apmd-3.2.2.orig/Makefile
19===================================================================
20--- apmd-3.2.2.orig.orig/Makefile 2004-01-04 08:13:18.000000000 +0000
21+++ apmd-3.2.2.orig/Makefile 2008-04-21 17:10:03.000000000 +0100
22@@ -58,9 +57,8 @@
23 #CFLAGS=-O3 -m486 -fomit-frame-pointer
24 #LDFLAGS=-s
25
26-LIBTOOL=libtool --quiet
27-LT_COMPILE = $(LIBTOOL) --mode=compile $(CC)
28-LT_LINK = $(LIBTOOL) --mode=link $(CC)
29+LT_COMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC)
30+LT_LINK = $(LIBTOOL) --tag=CC --mode=link $(CC)
31 LT_INSTALL = $(LIBTOOL) --mode=install install
32 LT_CLEAN = $(LIBTOOL) --mode=clean rm
33
diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch b/meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch
new file mode 100644
index 0000000..ec8206c
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch
@@ -0,0 +1,25 @@
1copy OE commit message here:
2 commit 9456cdc1cf43e3ba9e6d88c63560c1b6fdee4359
3 Author: Michael Krelin <hacker@klever.net>
4 Date: Tue May 29 12:27:45 2007 +0000
5
6 apmd: prevent build from interferring with host kernel headers. Closes #1257
7
8comment added by Kevin Tian <kevin.tian@intel.com>, 2010-07-13
9
10Upstream-Status: Pending
11
12Signed-off-by: Scott Garman <scott.a.garman@intel.com>
13
14--- apmd-3.2.2.orig/Makefile
15+++ apmd-3.2.2/Makefile
16@@ -43,8 +43,7 @@
17
18 CC=gcc
19 CFLAGS=-O -g
20-XTRACFLAGS=-Wall -pipe -I. -I/usr/src/linux/include -I/usr/X11R6/include \
21- -I/usr/src/linux-2.2/include -I /usr/src/linux-2.0/include \
22+XTRACFLAGS=-Wall -pipe -I. \
23 -DVERSION=\"$(VERSION)\" \
24 -DDEFAULT_PROXY_NAME=\"$(PROXY_DIR)/apmd_proxy\"
25 LDFLAGS=
diff --git a/meta/recipes-bsp/apmd/apmd_3.2.2-14.bb b/meta/recipes-bsp/apmd/apmd_3.2.2-14.bb
new file mode 100644
index 0000000..8c4b75e
--- /dev/null
+++ b/meta/recipes-bsp/apmd/apmd_3.2.2-14.bb
@@ -0,0 +1,82 @@
1SUMMARY = "Utilities for Advanced Power Management"
2DESCRIPTION = "The Advanced Power Management (APM) support provides \
3access to battery status information and a set of tools for managing \
4notebook power consumption."
5HOMEPAGE = "http://apenwarr.ca/apmd/"
6SECTION = "base"
7LICENSE = "GPLv2+"
8LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
9 file://apm.h;beginline=6;endline=18;md5=7d4acc1250910a89f84ce3cc6557c4c2"
10DEPENDS = "libtool-cross"
11PR = "r2"
12
13SRC_URI = "${DEBIAN_MIRROR}/main/a/apmd/apmd_3.2.2.orig.tar.gz;name=tarball \
14 ${DEBIAN_MIRROR}/main/a/apmd/apmd_${PV}.diff.gz;name=patch \
15 file://libtool.patch \
16 file://unlinux.patch \
17 file://init \
18 file://default \
19 file://apmd_proxy \
20 file://apmd_proxy.conf \
21 file://apmd.service"
22
23SRC_URI[tarball.md5sum] = "b1e6309e8331e0f4e6efd311c2d97fa8"
24SRC_URI[tarball.sha256sum] = "7f7d9f60b7766b852881d40b8ff91d8e39fccb0d1d913102a5c75a2dbb52332d"
25
26SRC_URI[patch.md5sum] = "57e1b689264ea80f78353519eece0c92"
27SRC_URI[patch.sha256sum] = "7905ff96be93d725544d0040e425c42f9c05580db3c272f11cff75b9aa89d430"
28
29S = "${WORKDIR}/apmd-3.2.2.orig"
30
31inherit update-rc.d systemd
32
33INITSCRIPT_NAME = "apmd"
34INITSCRIPT_PARAMS = "defaults"
35
36SYSTEMD_SERVICE_${PN} = "apmd.service"
37SYSTEMD_AUTO_ENABLE = "disable"
38
39do_compile() {
40 # apmd doesn't use whole autotools. Just libtool for installation
41 oe_runmake "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" apm apmd
42}
43
44do_install() {
45 install -d ${D}${sysconfdir}
46 install -d ${D}${sysconfdir}/apm
47 install -d ${D}${sysconfdir}/apm/event.d
48 install -d ${D}${sysconfdir}/apm/other.d
49 install -d ${D}${sysconfdir}/apm/suspend.d
50 install -d ${D}${sysconfdir}/apm/resume.d
51 install -d ${D}${sysconfdir}/apm/scripts.d
52 install -d ${D}${sysconfdir}/default
53 install -d ${D}${sysconfdir}/init.d
54 install -d ${D}${sbindir}
55 install -d ${D}${bindir}
56 install -d ${D}${libdir}
57 install -d ${D}${datadir}/apmd
58 install -d ${D}${includedir}
59
60 install -m 4755 ${S}/.libs/apm ${D}${bindir}/apm
61 install -m 0755 ${S}/.libs/apmd ${D}${sbindir}/apmd
62 install -m 0755 ${WORKDIR}/apmd_proxy ${D}${sysconfdir}/apm/
63 install -m 0644 ${WORKDIR}/apmd_proxy.conf ${D}${datadir}/apmd/
64 install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/apmd
65 oe_libinstall -so libapm ${D}${libdir}
66 install -m 0644 apm.h ${D}${includedir}
67
68 cat ${WORKDIR}/init | sed -e 's,/usr/sbin,${sbindir},g; s,/etc,${sysconfdir},g;' > ${D}${sysconfdir}/init.d/apmd
69 chmod 755 ${D}${sysconfdir}/init.d/apmd
70
71 install -d ${D}${systemd_unitdir}/system
72 install -m 0644 ${WORKDIR}/apmd.service ${D}${systemd_unitdir}/system/
73 sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' \
74 -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/apmd.service
75}
76
77PACKAGES =+ "libapm libapm-dev libapm-staticdev apm"
78
79FILES_libapm = "${libdir}/libapm${SOLIBS}"
80FILES_libapm-dev = "${libdir}/libapm${SOLIBSDEV} ${includedir} ${libdir}/libapm.la"
81FILES_libapm-staticdev = "${libdir}/libapm.a"
82FILES_apm = "${bindir}/apm*"
diff --git a/meta/recipes-bsp/eee-acpi-scripts/eee-acpi-scripts_git.bb b/meta/recipes-bsp/eee-acpi-scripts/eee-acpi-scripts_git.bb
new file mode 100644
index 0000000..c2a02aa
--- /dev/null
+++ b/meta/recipes-bsp/eee-acpi-scripts/eee-acpi-scripts_git.bb
@@ -0,0 +1,39 @@
1SUMMARY = "eeePC specific ACPI scripts"
2HOMEPAGE = "http://alioth.debian.org/projects/debian-eeepc/"
3SECTION = "base"
4
5LICENSE = "GPLv2"
6LIC_FILES_CHKSUM = "file://debian/copyright;md5=77ef83ab5f4af938a93edb61f7b74f2c"
7
8SRCREV = "9d4cdedca25b396405f8587f9c4fbf8229e041c2"
9PV = "1.1.12+git${SRCPV}"
10
11SRC_URI = "git://git.debian.org/git/debian-eeepc/eeepc-acpi-scripts.git \
12 file://remove-doc-check.patch \
13 file://powerbtn.patch \
14 file://policy-funcs "
15
16S = "${WORKDIR}/git"
17
18FILES_${PN} = "${datadir}/acpi-support/ \
19 ${datadir}/eeepc-acpi-scripts \
20 ${sysconfdir}/default/ \
21 ${sysconfdir}/acpi/"
22
23do_install () {
24 install -d ${D}${sysconfdir}/default/
25 install -d ${D}${sysconfdir}/acpi/actions/
26 install -d ${D}${sysconfdir}/acpi/events/
27 install -d ${D}${sysconfdir}/acpi/lib/udev/rules.d
28 install -d ${D}${datadir}/eeepc-acpi-scripts/
29 install -d ${D}${datadir}/acpi-support/
30 install -m 644 ${S}/events/* ${D}${sysconfdir}/acpi/events/
31 install -m 644 ${S}/lib/udev/rules.d/* ${D}${sysconfdir}/acpi/lib/udev/rules.d/
32 install ${S}/actions/* ${D}${sysconfdir}/acpi/actions/
33 install -m 0644 ${S}/acpilib/functions.sh ${D}${datadir}/eeepc-acpi-scripts/
34 install -m 0644 ${WORKDIR}/policy-funcs ${D}${datadir}/acpi-support/
35 install -m 0644 ${S}/debian/eeepc-acpi-scripts.default* ${D}${sysconfdir}/default/
36}
37
38RDEPENDS_${PN} = "pm-utils"
39
diff --git a/meta/recipes-bsp/eee-acpi-scripts/files/policy-funcs b/meta/recipes-bsp/eee-acpi-scripts/files/policy-funcs
new file mode 100644
index 0000000..fd099df
--- /dev/null
+++ b/meta/recipes-bsp/eee-acpi-scripts/files/policy-funcs
@@ -0,0 +1,8 @@
1CheckPolicy() {
2 if pidof gnome-power-manager kpowersave > /dev/null ||
3 (pidof dcopserver > /dev/null && test -x /usr/bin/dcop && /usr/bin/dcop kded kded loadedModules | grep -q klaptopdaemon) ; then
4 echo 0;
5 else
6 echo 1;
7 fi
8}
diff --git a/meta/recipes-bsp/eee-acpi-scripts/files/powerbtn.patch b/meta/recipes-bsp/eee-acpi-scripts/files/powerbtn.patch
new file mode 100644
index 0000000..403e556
--- /dev/null
+++ b/meta/recipes-bsp/eee-acpi-scripts/files/powerbtn.patch
@@ -0,0 +1,22 @@
1---
2 actions/power.sh | 3 +++
3 events/powerbtn | 2 ++
4 2 files changed, 5 insertions(+)
5
6Upstream-Status: Inappropriate [enable feature]
7
8Index: git/events/powerbtn
9===================================================================
10--- /dev/null 1970-01-01 00:00:00.000000000 +0000
11+++ git/events/powerbtn 2008-10-08 17:43:35.000000000 +0200
12@@ -0,0 +1,2 @@
13+event=button/power PWRF
14+action=/etc/acpi/actions/power.sh
15Index: git/actions/power.sh
16===================================================================
17--- /dev/null 1970-01-01 00:00:00.000000000 +0000
18+++ git/actions/power.sh 2008-10-08 17:45:26.000000000 +0200
19@@ -0,0 +1,3 @@
20+#!/bin/sh
21+
22+/sbin/shutdown -h now "Power button pressed"
diff --git a/meta/recipes-bsp/eee-acpi-scripts/files/remove-doc-check.patch b/meta/recipes-bsp/eee-acpi-scripts/files/remove-doc-check.patch
new file mode 100644
index 0000000..efb3dca
--- /dev/null
+++ b/meta/recipes-bsp/eee-acpi-scripts/files/remove-doc-check.patch
@@ -0,0 +1,60 @@
1---
2 actions/hotkey.sh | 3 ---
3 actions/suspend.sh | 3 ---
4 actions/vga-toggle.sh | 3 ---
5 actions/volume.sh | 3 ---
6 4 files changed, 12 deletions(-)
7
8Upstream-Status: Inappropriate [configuration]
9
10Index: git/eeepc-acpi-scripts/volume.sh
11===================================================================
12--- git.orig/eeepc-acpi-scripts/volume.sh 2011-11-29 19:21:55.000000000 +0800
13+++ git/eeepc-acpi-scripts/volume.sh 2011-11-29 19:41:36.000000000 +0800
14@@ -3,12 +3,10 @@
15 [ -d /sys/devices/platform/eeepc ] || [ -d /sys/devices/platform/eeepc-wmi ] || exit 0
16 # Volume controls
17
18-# do nothing if package is removed
19 PKG=eeepc-acpi-scripts
20 PKG_DIR=/usr/share/acpi-support/$PKG
21 FUNC_LIB=$PKG_DIR/lib/functions.sh
22 DEFAULT=/etc/default/$PKG
23-[ -e "$FUNC_LIB" ] || exit 0
24
25 . $FUNC_LIB
26 . $PKG_DIR/lib/sound.sh
27Index: git/eeepc-acpi-scripts/hotkey.sh
28===================================================================
29--- git.orig/eeepc-acpi-scripts/hotkey.sh 2011-11-29 19:21:55.000000000 +0800
30+++ git/eeepc-acpi-scripts/hotkey.sh 2011-11-29 19:39:51.000000000 +0800
31@@ -1,12 +1,10 @@
32 #!/bin/sh
33
34 [ -d /sys/devices/platform/eeepc ] || [ -d /sys/devices/platform/eeepc-wmi ] || exit 0
35-# do nothing if package is removed
36 PKG=eeepc-acpi-scripts
37 PKG_DIR=/usr/share/acpi-support/$PKG
38 FUNC_LIB=$PKG_DIR/lib/functions.sh
39 DEFAULT=/etc/default/$PKG
40-[ -e "$FUNC_LIB" ] || exit 0
41
42 case $(runlevel) in
43 *0|*6)
44Index: git/eeepc-acpi-scripts/vga-toggle.sh
45===================================================================
46--- git.orig/eeepc-acpi-scripts/vga-toggle.sh 2011-11-29 19:21:55.000000000 +0800
47+++ git/eeepc-acpi-scripts/vga-toggle.sh 2011-11-29 19:40:24.000000000 +0800
48@@ -1,12 +1,10 @@
49 #!/bin/sh
50
51 [ -d /sys/devices/platform/eeepc ] || [ -d /sys/devices/platform/eeepc-wmi ] || exit 0
52-# do nothing if package is removed
53 PKG=eeepc-acpi-scripts
54 PKG_DIR=/usr/share/acpi-support/$PKG
55 FUNC_LIB=$PKG_DIR/lib/functions.sh
56 DEFAULT=/etc/default/$PKG
57-[ -e "$FUNC_LIB" ] || exit 0
58
59 if [ -e "$DEFAULT" ]; then . "$DEFAULT"; fi
60 . $FUNC_LIB
diff --git a/meta/recipes-bsp/formfactor/files/config b/meta/recipes-bsp/formfactor/files/config
new file mode 100755
index 0000000..41066de
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/config
@@ -0,0 +1,50 @@
1#!/bin/sh
2
3if [ -e /etc/formfactor/machconfig ]; then
4 . /etc/formfactor/machconfig
5fi
6
7if [ -z "$HAVE_TOUCHSCREEN" ]; then
8 HAVE_TOUCHSCREEN=0
9fi
10
11if [ -z "$HAVE_KEYBOARD" ]; then
12 HAVE_KEYBOARD=0
13fi
14
15if [ -z "$HAVE_KEYBOARD_PORTRAIT" ]; then
16 HAVE_KEYBOARD_PORTRAIT=0
17fi
18
19if [ -z "$HAVE_KEYBOARD_LANDSCAPE" ]; then
20 HAVE_KEYBOARD_LANDSCAPE=0
21fi
22
23if [ -z "$DISPLAY_CAN_ROTATE" ]; then
24 DISPLAY_CAN_ROTATE=0
25fi
26
27if [ -z "$DISPLAY_ORIENTATION" ]; then
28 DISPLAY_ORIENTATION=0
29fi
30
31if [ -e "/dev/fb" ]; then
32 if [ -z "$DISPLAY_WIDTH_PIXELS" ]; then
33 DISPLAY_WIDTH_PIXELS=`/usr/sbin/fbset | grep geometry | awk '{ print $2 }'`
34 fi
35
36 if [ -z "$DISPLAY_HEIGHT_PIXELS" ]; then
37 DISPLAY_HEIGHT_PIXELS=`/usr/sbin/fbset | grep geometry | awk '{ print $3 }'`
38 fi
39
40 if [ -z "$DISPLAY_BPP" ]; then
41 DISPLAY_BPP=`/usr/sbin/fbset | grep geometry | awk '{ print $6 }'`
42 fi
43fi
44
45#
46# No way to guess these or have any defaults
47#
48#DISPLAY_WIDTH_MM
49#DISPLAY_HEIGHT_MM
50#DISPLAY_SUBPIXEL_ORDER=
diff --git a/meta/recipes-bsp/formfactor/files/machconfig b/meta/recipes-bsp/formfactor/files/machconfig
new file mode 100755
index 0000000..e69de29
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/machconfig
diff --git a/meta/recipes-bsp/formfactor/files/qemuarm/machconfig b/meta/recipes-bsp/formfactor/files/qemuarm/machconfig
new file mode 100755
index 0000000..56a2ae2
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemuarm/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6#DISPLAY_WIDTH_PIXELS=640
7#DISPLAY_HEIGHT_PIXELS=480
8#DISPLAY_BPP=16
9DISPLAY_DPI=150
10DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/files/qemuarmv6/machconfig b/meta/recipes-bsp/formfactor/files/qemuarmv6/machconfig
new file mode 100755
index 0000000..56a2ae2
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemuarmv6/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6#DISPLAY_WIDTH_PIXELS=640
7#DISPLAY_HEIGHT_PIXELS=480
8#DISPLAY_BPP=16
9DISPLAY_DPI=150
10DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/files/qemuarmv7/machconfig b/meta/recipes-bsp/formfactor/files/qemuarmv7/machconfig
new file mode 100755
index 0000000..56a2ae2
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemuarmv7/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6#DISPLAY_WIDTH_PIXELS=640
7#DISPLAY_HEIGHT_PIXELS=480
8#DISPLAY_BPP=16
9DISPLAY_DPI=150
10DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/files/qemumips/machconfig b/meta/recipes-bsp/formfactor/files/qemumips/machconfig
new file mode 100755
index 0000000..56777b6
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemumips/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6DISPLAY_WIDTH_PIXELS=640
7DISPLAY_HEIGHT_PIXELS=480
8DISPLAY_BPP=16
9DISPLAY_DPI=150
10#DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/files/qemuppc/machconfig b/meta/recipes-bsp/formfactor/files/qemuppc/machconfig
new file mode 100755
index 0000000..5ea2270
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemuppc/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6DISPLAY_WIDTH_PIXELS=800
7DISPLAY_HEIGHT_PIXELS=600
8DISPLAY_BPP=16
9DISPLAY_DPI=150
10DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/files/qemux86-64/machconfig b/meta/recipes-bsp/formfactor/files/qemux86-64/machconfig
new file mode 100755
index 0000000..56a2ae2
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemux86-64/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6#DISPLAY_WIDTH_PIXELS=640
7#DISPLAY_HEIGHT_PIXELS=480
8#DISPLAY_BPP=16
9DISPLAY_DPI=150
10DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/files/qemux86/machconfig b/meta/recipes-bsp/formfactor/files/qemux86/machconfig
new file mode 100755
index 0000000..56a2ae2
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/files/qemux86/machconfig
@@ -0,0 +1,10 @@
1HAVE_TOUCHSCREEN=1
2HAVE_KEYBOARD=1
3
4DISPLAY_CAN_ROTATE=0
5DISPLAY_ORIENTATION=0
6#DISPLAY_WIDTH_PIXELS=640
7#DISPLAY_HEIGHT_PIXELS=480
8#DISPLAY_BPP=16
9DISPLAY_DPI=150
10DISPLAY_SUBPIXEL_ORDER=vrgb
diff --git a/meta/recipes-bsp/formfactor/formfactor_0.0.bb b/meta/recipes-bsp/formfactor/formfactor_0.0.bb
new file mode 100644
index 0000000..29d1435
--- /dev/null
+++ b/meta/recipes-bsp/formfactor/formfactor_0.0.bb
@@ -0,0 +1,21 @@
1SUMMARY = "Device formfactor information"
2SECTION = "base"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
5 file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
6PR = "r44"
7
8SRC_URI = "file://config file://machconfig"
9S = "${WORKDIR}"
10
11PACKAGE_ARCH = "${MACHINE_ARCH}"
12INHIBIT_DEFAULT_DEPS = "1"
13
14do_install() {
15 # Only install file if it has a contents
16 install -d ${D}${sysconfdir}/formfactor/
17 install -m 0644 ${S}/config ${D}${sysconfdir}/formfactor/
18 if [ -s "${S}/machconfig" ]; then
19 install -m 0644 ${S}/machconfig ${D}${sysconfdir}/formfactor/
20 fi
21}
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch
new file mode 100644
index 0000000..e5b47c1
--- /dev/null
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch
@@ -0,0 +1,48 @@
1Fix parallel make failure for archives
2
3Upstream-Status: Pending
4
5The lib and gnuefi makefiles were using the lib.a() form which compiles
6and ar's as a pair instead of compiling all and then ar'ing which can
7parallelize better. This was resulting in build failures on larger values
8of -j.
9
10See http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_toc.html#TOC105
11for details.
12
13Signed-off-by: Saul Wold <sgw@linux.intel.com>
14Signed-off-by: Darren Hart <dvhart@linux.intel.com>
15---
16---
17 gnuefi/Makefile | 3 ++-
18 lib/Makefile | 3 ++-
19 2 files changed, 4 insertions(+), 2 deletions(-)
20
21Index: gnu-efi-3.0/lib/Makefile
22===================================================================
23--- gnu-efi-3.0.orig/lib/Makefile
24+++ gnu-efi-3.0/lib/Makefile
25@@ -66,7 +66,8 @@ all: libsubdirs libefi.a
26 libsubdirs:
27 for sdir in $(SUBDIRS); do mkdir -p $$sdir; done
28
29-libefi.a: $(patsubst %,libefi.a(%),$(OBJS))
30+libefi.a: $(OBJS)
31+ $(AR) rv $@ $(OBJS)
32
33 clean:
34 rm -f libefi.a *~ $(OBJS) */*.o
35Index: gnu-efi-3.0/gnuefi/Makefile
36===================================================================
37--- gnu-efi-3.0.orig/gnuefi/Makefile
38+++ gnu-efi-3.0/gnuefi/Makefile
39@@ -51,7 +51,8 @@ TARGETS = crt0-efi-$(ARCH).o libgnuefi.a
40
41 all: $(TARGETS)
42
43-libgnuefi.a: $(patsubst %,libgnuefi.a(%),$(OBJS))
44+libgnuefi.a: $(OBJS)
45+ $(AR) rv $@ $(OBJS)
46
47 clean:
48 rm -f $(TARGETS) *~ *.o $(OBJS)
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch
new file mode 100644
index 0000000..27c94e8
--- /dev/null
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch
@@ -0,0 +1,22 @@
1Fix parallel make failure
2
3Upstream-Status: Submitted [Maintainer directly]
4
5Add a missing dependency which resulted in a race leading to failure
6on larger values of -j.
7
8Signed-off-by: Darren Hart <dvhart@linux.intel.com>
9
10Index: gnu-efi-3.0/Makefile
11===================================================================
12--- gnu-efi-3.0.orig/Makefile
13+++ gnu-efi-3.0/Makefile
14@@ -42,6 +42,8 @@ include $(SRCDIR)/Make.defaults
15
16 SUBDIRS = lib gnuefi inc apps
17
18+gnuefi: lib
19+
20 all: check_gcc $(SUBDIRS)
21
22 $(SUBDIRS):
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0u.bb b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0u.bb
new file mode 100644
index 0000000..dbf2a07
--- /dev/null
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0u.bb
@@ -0,0 +1,33 @@
1SUMMARY = "Libraries for producing EFI binaries"
2HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/"
3SECTION = "devel"
4LICENSE = "GPLv2+"
5LIC_FILES_CHKSUM = "file://debian/copyright;md5=5fb358a180f484b285b0d99acdc29666"
6
7SRC_URI = "http://downloads.sourceforge.net/gnu-efi/gnu-efi_3.0u.orig.tar.gz \
8 file://parallel-make.patch \
9 file://parallel-make-archives.patch \
10 "
11SRC_URI[md5sum] = "d15d3c700e79a1e2938544d73edc572d"
12SRC_URI[sha256sum] = "3c0d450d5829204ca05dcb3b2aae772e52c379b7c7e09146759c6315606f934e"
13
14COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"
15
16S = "${WORKDIR}/gnu-efi-3.0"
17
18def gnu_efi_arch(d):
19 import re
20 tarch = d.getVar("TARGET_ARCH", True)
21 if re.match("i[3456789]86", tarch):
22 return "ia32"
23 return tarch
24
25EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \
26 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \
27 "
28
29do_install() {
30 oe_runmake install INSTALLROOT="${D}"
31}
32
33FILES_${PN} += "${libdir}/*.lds"
diff --git a/meta/recipes-bsp/grub/files/cfg b/meta/recipes-bsp/grub/files/cfg
new file mode 100644
index 0000000..ffffe47
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/cfg
@@ -0,0 +1,2 @@
1search.file /EFI/BOOT/grub.cfg root
2set prefix=($root)/EFI/BOOT
diff --git a/meta/recipes-bsp/grub/files/check-if-liblzma-is-disabled.patch b/meta/recipes-bsp/grub/files/check-if-liblzma-is-disabled.patch
new file mode 100644
index 0000000..0eece08
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/check-if-liblzma-is-disabled.patch
@@ -0,0 +1,33 @@
1Disable liblzma if --enable-liblzma=no
2
3Upstream-Status: Inappropriate [configuration]
4
5Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
6
7--- a/configure.ac
8+++ b/configure.ac
9@@ -1029,10 +1029,20 @@ fi
10
11 AC_SUBST([LIBGEOM])
12
13-AC_CHECK_LIB([lzma], [lzma_code],
14- [LIBLZMA="-llzma"
15- AC_DEFINE([HAVE_LIBLZMA], [1],
16- [Define to 1 if you have the LZMA library.])],)
17+AC_ARG_ENABLE([liblzma],
18+ [AS_HELP_STRING([--enable-liblzma],
19+ [enable liblzma integration (default=guessed)])])
20+if test x"$enable_liblzma" = xno ; then
21+ liblzma_excuse="explicitly disabled"
22+fi
23+
24+if test x"$liblzma_excuse" = x ; then
25+ AC_CHECK_LIB([lzma], [lzma_code],
26+ [LIBLZMA="-llzma"
27+ AC_DEFINE([HAVE_LIBLZMA], [1],
28+ [Define to 1 if you have the LZMA library.])],)
29+fi
30+
31 AC_SUBST([LIBLZMA])
32
33 AC_ARG_ENABLE([libzfs],
diff --git a/meta/recipes-bsp/grub/files/fix-issue-with-flex-2.5.37.patch b/meta/recipes-bsp/grub/files/fix-issue-with-flex-2.5.37.patch
new file mode 100644
index 0000000..61ae2f5
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/fix-issue-with-flex-2.5.37.patch
@@ -0,0 +1,21 @@
1Upstream-Status: Backport
2
3This fixes compilation issues when using flex-2.5.37. It was taken from upstream.
4
5Original author is: Vladimir Serbinenko <phcoder@gmail.com>
6
7Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
8
9Index: grub-2.00/grub-core/script/yylex.l
10===================================================================
11--- grub-2.00.orig/grub-core/script/yylex.l 2012-06-08 23:24:15.000000000 +0300
12+++ grub-2.00/grub-core/script/yylex.l 2013-07-31 14:34:40.708100982 +0300
13@@ -29,6 +29,8 @@
14 #pragma GCC diagnostic ignored "-Wmissing-prototypes"
15 #pragma GCC diagnostic ignored "-Wmissing-declarations"
16 #pragma GCC diagnostic ignored "-Wunsafe-loop-optimizations"
17+#pragma GCC diagnostic ignored "-Wunused-function"
18+#pragma GCC diagnostic ignored "-Wsign-compare"
19
20 #define yyfree grub_lexer_yyfree
21 #define yyalloc grub_lexer_yyalloc
diff --git a/meta/recipes-bsp/grub/files/grub-2.00-add-oe-kernel.patch b/meta/recipes-bsp/grub/files/grub-2.00-add-oe-kernel.patch
new file mode 100644
index 0000000..eb8916c
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-2.00-add-oe-kernel.patch
@@ -0,0 +1,53 @@
1From 7ab576a7c61406b7e63739d1b11017ae336b9008 Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Mon, 3 Mar 2014 03:34:48 -0500
4Subject: [PATCH] grub.d/10_linux.in: add oe's kernel name
5
6Our kernel's name is bzImage, we need add it to grub.d/10_linux.in so
7that the grub-mkconfig and grub-install can work correctly.
8
9We only need add the bzImage to util/grub.d/10_linux.in, but also add it
10to util/grub.d/20_linux_xen.in to keep compatibility.
11
12Upstream-Status: Inappropriate [OE specific]
13
14Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
15---
16 util/grub.d/10_linux.in | 4 ++--
17 util/grub.d/20_linux_xen.in | 2 +-
18 2 files changed, 3 insertions(+), 3 deletions(-)
19
20diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
21index 14402e8..c58f417 100644
22--- a/util/grub.d/10_linux.in
23+++ b/util/grub.d/10_linux.in
24@@ -153,11 +153,11 @@ EOF
25 machine=`uname -m`
26 case "x$machine" in
27 xi?86 | xx86_64)
28- list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
29+ list=`for i in /boot/bzImage-* /bzImage-* /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
30 if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
31 done` ;;
32 *)
33- list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
34+ list=`for i in /boot/bzImage-* /boot/vmlinuz-* /boot/vmlinux-* /bzImage-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
35 if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
36 done` ;;
37 esac
38diff --git a/util/grub.d/20_linux_xen.in b/util/grub.d/20_linux_xen.in
39index 1d94502..b2decf3 100644
40--- a/util/grub.d/20_linux_xen.in
41+++ b/util/grub.d/20_linux_xen.in
42@@ -138,7 +138,7 @@ EOF
43 EOF
44 }
45
46-linux_list=`for i in /boot/vmlinu[xz]-* /vmlinu[xz]-* /boot/kernel-*; do
47+linux_list=`for i in /boot/bzImage[xz]-* /bzImage[xz]-* /boot/vmlinu[xz]-* /vmlinu[xz]-* /boot/kernel-*; do
48 if grub_file_is_not_garbage "$i"; then
49 basename=$(basename $i)
50 version=$(echo $basename | sed -e "s,^[^0-9]*-,,g")
51--
521.7.10.4
53
diff --git a/meta/recipes-bsp/grub/files/grub-2.00-fix-enable_execute_stack-check.patch b/meta/recipes-bsp/grub/files/grub-2.00-fix-enable_execute_stack-check.patch
new file mode 100644
index 0000000..09ef4db
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-2.00-fix-enable_execute_stack-check.patch
@@ -0,0 +1,27 @@
1Upstream-Status: Pending
2
3
4This patch avoids this configure failure
5
6configure:20306: checking whether `ccache i586-poky-linux-gcc -m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/builddisk/build/build0/tmp/sysroots/emenlow' generates calls to `__enable_execute_stack()'
7configure:20320: ccache i586-poky-linux-gcc -m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/builddisk/build/build0/tmp/sysroots/emenlow -O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -mfpmath=387 -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror -Wno-trampolines -falign-loops=1 -S conftest.c
8conftest.c:308:6: error: no previous prototype for 'g' [-Werror=missing-prototypes]
9cc1: all warnings being treated as errors
10configure:20323: $? = 1
11configure:20327: error: ccache i586-poky-linux-gcc -m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/builddisk/build/build0/tmp/sysroots/emenlow failed to produce assembly code
12
13Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
142012/04/13
15
16Index: grub-2.00/acinclude.m4
17===================================================================
18--- grub-2.00.orig/acinclude.m4
19+++ grub-2.00/acinclude.m4
20@@ -317,6 +317,7 @@ dnl Check if the C compiler generates ca
21 AC_DEFUN([grub_CHECK_ENABLE_EXECUTE_STACK],[
22 AC_MSG_CHECKING([whether `$CC' generates calls to `__enable_execute_stack()'])
23 AC_LANG_CONFTEST([AC_LANG_SOURCE([[
24+void g (int);
25 void f (int (*p) (void));
26 void g (int i)
27 {
diff --git a/meta/recipes-bsp/grub/files/grub-2.00-fpmath-sse-387-fix.patch b/meta/recipes-bsp/grub/files/grub-2.00-fpmath-sse-387-fix.patch
new file mode 100644
index 0000000..c557f13
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-2.00-fpmath-sse-387-fix.patch
@@ -0,0 +1,24 @@
1Upstream-Status: pending
2
3This patch fixes this configure issue for grub when -mfpmath=sse is in the gcc parameters.
4
5configure:20574: i586-poky-linux-gcc -m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/usr/local/dev/yocto/grubtest2/build/tmp/sysroots/emenlow -o conftest -O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror -nostdlib -Wl,--defsym,___main=0x8100 -Wall -W -I$(top_srcdir)/include -I$(top_builddir)/include -DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed conftest.c >&5
6conftest.c:1:0: error: SSE instruction set disabled, using 387 arithmetics [-Werror]
7cc1: all warnings being treated as errors
8
9Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
102012/04/13
11
12Index: grub-1.99/configure.ac
13===================================================================
14--- grub-1.99.orig/configure.ac
15+++ grub-1.99/configure.ac
16@@ -378,7 +378,7 @@ if test "x$target_cpu" = xi386; then
17
18 # Some toolchains enable these features by default, but they need
19 # registers that aren't set up properly in GRUB.
20- TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-3dnow"
21+ TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -mfpmath=387"
22 fi
23
24 # By default, GCC 4.4 generates .eh_frame sections containing unwind
diff --git a/meta/recipes-bsp/grub/files/grub-2.00-ignore-gnulib-gets-stupidity.patch b/meta/recipes-bsp/grub/files/grub-2.00-ignore-gnulib-gets-stupidity.patch
new file mode 100644
index 0000000..70f6001
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-2.00-ignore-gnulib-gets-stupidity.patch
@@ -0,0 +1,28 @@
1From f66d54b934710f54999debb72e8b7c620edece1d Mon Sep 17 00:00:00 2001
2From: Peter Jones <pjones@redhat.com>
3Date: Fri, 25 May 2012 15:28:19 -0400
4Subject: [PATCH] gnulib accused in build breaking shocker.
5
6Upstream-Status: pending [Fedora will push this]
7
8---
9 grub-core/gnulib/stdio.in.h | 2 ++
10 1 file changed, 2 insertions(+)
11
12diff --git a/grub-core/gnulib/stdio.in.h b/grub-core/gnulib/stdio.in.h
13index 80b9dbf..69932d9 100644
14--- a/grub-core/gnulib/stdio.in.h
15+++ b/grub-core/gnulib/stdio.in.h
16@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not always POSIX compliant - "
17 so any use of gets warrants an unconditional warning. Assume it is
18 always declared, since it is required by C89. */
19 #undef gets
20+#if 0
21 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
22+#endif
23
24 #if @GNULIB_FOPEN@
25 # if @REPLACE_FOPEN@
26--
271.7.10.1
28
diff --git a/meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch b/meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch
new file mode 100644
index 0000000..4588fca
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-efi-allow-a-compilation-without-mcmodel-large.patch
@@ -0,0 +1,131 @@
1Allow a compilation without -mcmodel=large
2
3It's provided by Vladimir Serbinenko, and he will commit
4it upstream so it should be backport patch.
5
6Upstream-Status: Backport
7
8Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
9
10--
11diff --git a/configure.ac b/configure.ac
12index 9f8fb8a..2c5e6ed 100644
13--- a/configure.ac
14+++ b/configure.ac
15@@ -723,9 +723,7 @@ if test "$target_cpu" = x86_64; then
16 [grub_cv_cc_mcmodel=yes],
17 [grub_cv_cc_mcmodel=no])
18 ])
19- if test "x$grub_cv_cc_mcmodel" = xno; then
20- AC_MSG_ERROR([-mcmodel=large not supported. Upgrade your gcc.])
21- else
22+ if test "x$grub_cv_cc_mcmodel" = xyes; then
23 TARGET_CFLAGS="$TARGET_CFLAGS -mcmodel=large"
24 fi
25 fi
26diff --git a/grub-core/kern/efi/mm.c b/grub-core/kern/efi/mm.c
27index 1409b5d..6e9dace 100644
28--- a/grub-core/kern/efi/mm.c
29+++ b/grub-core/kern/efi/mm.c
30@@ -32,6 +32,12 @@
31 #define BYTES_TO_PAGES(bytes) (((bytes) + 0xfff) >> 12)
32 #define PAGES_TO_BYTES(pages) ((pages) << 12)
33
34+#if defined (__code_model_large__) || !defined (__x86_64__)
35+#define MAX_USABLE_ADDRESS 0xffffffff
36+#else
37+#define MAX_USABLE_ADDRESS 0x7fffffff
38+#endif
39+
40 /* The size of a memory map obtained from the firmware. This must be
41 a multiplier of 4KB. */
42 #define MEMORY_MAP_SIZE 0x3000
43@@ -58,7 +64,7 @@ grub_efi_allocate_pages (grub_efi_physical_address_t address,
44
45 #if 1
46 /* Limit the memory access to less than 4GB for 32-bit platforms. */
47- if (address > 0xffffffff)
48+ if (address > MAX_USABLE_ADDRESS)
49 return 0;
50 #endif
51
52@@ -66,7 +72,7 @@ grub_efi_allocate_pages (grub_efi_physical_address_t address,
53 if (address == 0)
54 {
55 type = GRUB_EFI_ALLOCATE_MAX_ADDRESS;
56- address = 0xffffffff;
57+ address = MAX_USABLE_ADDRESS;
58 }
59 else
60 type = GRUB_EFI_ALLOCATE_ADDRESS;
61@@ -86,7 +92,7 @@ grub_efi_allocate_pages (grub_efi_physical_address_t address,
62 {
63 /* Uggh, the address 0 was allocated... This is too annoying,
64 so reallocate another one. */
65- address = 0xffffffff;
66+ address = MAX_USABLE_ADDRESS;
67 status = efi_call_4 (b->allocate_pages, type, GRUB_EFI_LOADER_DATA, pages, &address);
68 grub_efi_free_pages (0, pages);
69 if (status != GRUB_EFI_SUCCESS)
70@@ -319,7 +325,7 @@ filter_memory_map (grub_efi_memory_descriptor_t *memory_map,
71 {
72 if (desc->type == GRUB_EFI_CONVENTIONAL_MEMORY
73 #if 1
74- && desc->physical_start <= 0xffffffff
75+ && desc->physical_start <= MAX_USABLE_ADDRESS
76 #endif
77 && desc->physical_start + PAGES_TO_BYTES (desc->num_pages) > 0x100000
78 && desc->num_pages != 0)
79@@ -337,9 +343,9 @@ filter_memory_map (grub_efi_memory_descriptor_t *memory_map,
80 #if 1
81 if (BYTES_TO_PAGES (filtered_desc->physical_start)
82 + filtered_desc->num_pages
83- > BYTES_TO_PAGES (0x100000000LL))
84+ > BYTES_TO_PAGES (MAX_USABLE_ADDRESS+1LL))
85 filtered_desc->num_pages
86- = (BYTES_TO_PAGES (0x100000000LL)
87+ = (BYTES_TO_PAGES (MAX_USABLE_ADDRESS+1LL)
88 - BYTES_TO_PAGES (filtered_desc->physical_start));
89 #endif
90
91diff --git a/grub-core/kern/x86_64/dl.c b/grub-core/kern/x86_64/dl.c
92index 65f09ef..17c1215 100644
93--- a/grub-core/kern/x86_64/dl.c
94+++ b/grub-core/kern/x86_64/dl.c
95@@ -100,14 +100,32 @@ grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr)
96 break;
97
98 case R_X86_64_PC32:
99- *addr32 += rel->r_addend + sym->st_value -
100- (Elf64_Xword) seg->addr - rel->r_offset;
101+ {
102+ grub_int64_t value;
103+ value = ((grub_int32_t) *addr32) + rel->r_addend + sym->st_value -
104+ (Elf64_Xword) seg->addr - rel->r_offset;
105+ if (value != (grub_int32_t) value)
106+ return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range");
107+ *addr32 = value;
108+ }
109 break;
110
111 case R_X86_64_32:
112+ {
113+ grub_uint64_t value = *addr32 + rel->r_addend + sym->st_value;
114+ if (value != (grub_uint32_t) value)
115+ return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range");
116+ *addr32 = value;
117+ }
118+ break;
119 case R_X86_64_32S:
120- *addr32 += rel->r_addend + sym->st_value;
121- break;
122+ {
123+ grub_int64_t value = ((grub_int32_t) *addr32) + rel->r_addend + sym->st_value;
124+ if (value != (grub_int32_t) value)
125+ return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range");
126+ *addr32 = value;
127+ }
128+ break;
129
130 default:
131 return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
diff --git a/meta/recipes-bsp/grub/files/grub-no-unused-result.patch b/meta/recipes-bsp/grub/files/grub-no-unused-result.patch
new file mode 100644
index 0000000..4cbd083
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-no-unused-result.patch
@@ -0,0 +1,19 @@
1Signed-off-by: Radu Moisan <radu.moisan@intel.com>
2Upstream-Status: Pending
3
4I had an error because of an unused return value for read().
5I added -Wno-unused-result.
6
7Index: grub-2.00/configure.ac
8===================================================================
9--- grub-2.00.orig/configure.ac 2012-08-13 16:32:33.000000000 +0300
10+++ grub-2.00/configure.ac 2012-08-13 16:38:22.000000000 +0300
11@@ -394,7 +394,7 @@
12 LIBS=""
13
14 # debug flags.
15-WARN_FLAGS="-Wall -W -Wshadow -Wold-style-definition -Wpointer-arith -Wundef -Wextra -Waddress -Wattributes -Wcast-align -Wchar-subscripts -Wcomment -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wempty-body -Wendif-labels -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmain -Wmissing-braces -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-noreturn -Wmultichar -Wnonnull -Woverflow -Wparentheses -Wpointer-arith -Wpointer-to-int-cast -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wstrict-aliasing -Wswitch -Wtrigraphs -Wundef -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wvariadic-macros -Wvolatile-register-var -Wwrite-strings -Wnested-externs -Wstrict-prototypes -Wpointer-sign"
16+WARN_FLAGS="-Wall -W -Wshadow -Wold-style-definition -Wpointer-arith -Wundef -Wextra -Waddress -Wattributes -Wcast-align -Wchar-subscripts -Wcomment -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wempty-body -Wendif-labels -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmain -Wmissing-braces -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-noreturn -Wmultichar -Wnonnull -Woverflow -Wparentheses -Wpointer-arith -Wpointer-to-int-cast -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wstrict-aliasing -Wswitch -Wtrigraphs -Wundef -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wno-unused-result -Wvariadic-macros -Wvolatile-register-var -Wwrite-strings -Wnested-externs -Wstrict-prototypes -Wpointer-sign"
17 HOST_CFLAGS="$HOST_CFLAGS $WARN_FLAGS"
18 TARGET_CFLAGS="$TARGET_CFLAGS $WARN_FLAGS -g -Wredundant-decls -Wmissing-prototypes -Wmissing-declarations"
19 TARGET_CCASFLAGS="$TARGET_CCASFLAGS -g"
diff --git a/meta/recipes-bsp/grub/grub-0.97/autohell.patch b/meta/recipes-bsp/grub/grub-0.97/autohell.patch
new file mode 100644
index 0000000..d66207a
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-0.97/autohell.patch
@@ -0,0 +1,21 @@
1Upstream-Status: Inappropriate [configuration]
2
3---
4 configure.ac | 4 ++--
5 1 file changed, 2 insertions(+), 2 deletions(-)
6
7Index: grub-0.97/configure.ac
8===================================================================
9--- grub-0.97.orig/configure.ac 2008-09-12 17:39:52.000000000 +0200
10+++ grub-0.97/configure.ac 2008-09-12 17:40:21.000000000 +0200
11@@ -60,8 +60,8 @@ AC_PROG_CC
12 _AM_DEPENDENCIES(CC)
13
14 dnl Because recent automake complains about AS, set it here.
15-CCAS="$CC"
16-AC_SUBST(CCAS)
17+AM_PROG_AS
18+AC_SUBST(AS)
19
20 AC_ARG_WITH(binutils,
21 [ --with-binutils=DIR search the directory DIR to find binutils])
diff --git a/meta/recipes-bsp/grub/grub-0.97/grub-support-256byte-inode.patch b/meta/recipes-bsp/grub/grub-0.97/grub-support-256byte-inode.patch
new file mode 100644
index 0000000..d225d13
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-0.97/grub-support-256byte-inode.patch
@@ -0,0 +1,101 @@
1Upstream-Status: Inappropriate [No Longer Maintained]
2
3diff -Naur grub-0.97-800/stage2/fsys_ext2fs.c grub-0.97-810/stage2/fsys_ext2fs.c
4--- grub-0.97-800/stage2/fsys_ext2fs.c 2008-07-21 00:40:21.668879475 -0600
5+++ grub-0.97-810/stage2/fsys_ext2fs.c 2008-07-21 01:01:11.063953773 -0600
6@@ -79,7 +79,52 @@
7 __u32 s_rev_level; /* Revision level */
8 __u16 s_def_resuid; /* Default uid for reserved blocks */
9 __u16 s_def_resgid; /* Default gid for reserved blocks */
10- __u32 s_reserved[235]; /* Padding to the end of the block */
11+ /*
12+ * These fields are for EXT2_DYNAMIC_REV superblocks only.
13+ *
14+ * Note: the difference between the compatible feature set and
15+ * the incompatible feature set is that if there is a bit set
16+ * in the incompatible feature set that the kernel doesn't
17+ * know about, it should refuse to mount the filesystem.
18+ *
19+ * e2fsck's requirements are more strict; if it doesn't know
20+ * about a feature in either the compatible or incompatible
21+ * feature set, it must abort and not try to meddle with
22+ * things it doesn't understand...
23+ */
24+ __u32 s_first_ino; /* First non-reserved inode */
25+ __u16 s_inode_size; /* size of inode structure */
26+ __u16 s_block_group_nr; /* block group # of this superblock */
27+ __u32 s_feature_compat; /* compatible feature set */
28+ __u32 s_feature_incompat; /* incompatible feature set */
29+ __u32 s_feature_ro_compat; /* readonly-compatible feature set */
30+ __u8 s_uuid[16]; /* 128-bit uuid for volume */
31+ char s_volume_name[16]; /* volume name */
32+ char s_last_mounted[64]; /* directory where last mounted */
33+ __u32 s_algorithm_usage_bitmap; /* For compression */
34+ /*
35+ * Performance hints. Directory preallocation should only
36+ * happen if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is on.
37+ */
38+ __u8 s_prealloc_blocks; /* Nr of blocks to try to preallocate*/
39+ __u8 s_prealloc_dir_blocks; /* Nr to preallocate for dirs */
40+ __u16 s_reserved_gdt_blocks;/* Per group table for online growth */
41+ /*
42+ * Journaling support valid if EXT2_FEATURE_COMPAT_HAS_JOURNAL set.
43+ */
44+ __u8 s_journal_uuid[16]; /* uuid of journal superblock */
45+ __u32 s_journal_inum; /* inode number of journal file */
46+ __u32 s_journal_dev; /* device number of journal file */
47+ __u32 s_last_orphan; /* start of list of inodes to delete */
48+ __u32 s_hash_seed[4]; /* HTREE hash seed */
49+ __u8 s_def_hash_version; /* Default hash version to use */
50+ __u8 s_jnl_backup_type; /* Default type of journal backup */
51+ __u16 s_reserved_word_pad;
52+ __u32 s_default_mount_opts;
53+ __u32 s_first_meta_bg; /* First metablock group */
54+ __u32 s_mkfs_time; /* When the filesystem was created */
55+ __u32 s_jnl_blocks[17]; /* Backup of the journal inode */
56+ __u32 s_reserved[172]; /* Padding to the end of the block */
57 };
58
59 struct ext2_group_desc
60@@ -218,6 +263,14 @@
61 #define EXT2_ADDR_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s) / sizeof (__u32))
62 #define EXT2_ADDR_PER_BLOCK_BITS(s) (log2(EXT2_ADDR_PER_BLOCK(s)))
63
64+#define EXT2_GOOD_OLD_REV 0 /* The good old (original) format */
65+#define EXT2_DYNAMIC_REV 1 /* V2 format w/ dynamic inode sizes */
66+#define EXT2_GOOD_OLD_INODE_SIZE 128
67+#define EXT2_INODE_SIZE(s) (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \
68+ EXT2_GOOD_OLD_INODE_SIZE : \
69+ (s)->s_inode_size)
70+#define EXT2_INODES_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s)/EXT2_INODE_SIZE(s))
71+
72 /* linux/ext2_fs.h */
73 #define EXT2_BLOCK_SIZE_BITS(s) ((s)->s_log_block_size + 10)
74 /* kind of from ext2/super.c */
75@@ -553,7 +606,7 @@
76 gdp = GROUP_DESC;
77 ino_blk = gdp[desc].bg_inode_table +
78 (((current_ino - 1) % (SUPERBLOCK->s_inodes_per_group))
79- >> log2 (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode)));
80+ >> log2 (EXT2_INODES_PER_BLOCK (SUPERBLOCK)));
81 #ifdef E2DEBUG
82 printf ("inode table fsblock=%d\n", ino_blk);
83 #endif /* E2DEBUG */
84@@ -565,13 +618,12 @@
85 /* reset indirect blocks! */
86 mapblock2 = mapblock1 = -1;
87
88- raw_inode = INODE +
89- ((current_ino - 1)
90- & (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode) - 1));
91+ raw_inode = (struct ext2_inode *)((char *)INODE +
92+ ((current_ino - 1) & (EXT2_INODES_PER_BLOCK (SUPERBLOCK) - 1)) *
93+ EXT2_INODE_SIZE (SUPERBLOCK));
94 #ifdef E2DEBUG
95 printf ("ipb=%d, sizeof(inode)=%d\n",
96- (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode)),
97- sizeof (struct ext2_inode));
98+ EXT2_INODES_PER_BLOCK (SUPERBLOCK), EXT2_INODE_SIZE (SUPERBLOCK));
99 printf ("inode=%x, raw_inode=%x\n", INODE, raw_inode);
100 printf ("offset into inode table block=%d\n", (int) raw_inode - (int) INODE);
101 for (i = (unsigned char *) INODE; i <= (unsigned char *) raw_inode;
diff --git a/meta/recipes-bsp/grub/grub-0.97/grub_fix_for_automake-1.12.patch b/meta/recipes-bsp/grub/grub-0.97/grub_fix_for_automake-1.12.patch
new file mode 100644
index 0000000..0cf7dc9
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-0.97/grub_fix_for_automake-1.12.patch
@@ -0,0 +1,74 @@
1Upstream-Status: Inappropriate
2
3Subject: [PATCH] grub: fix for automake-1.12
4
5automake 1.12 has depricated automatic de-ANSI-fication support
6
7this patch avoids these kinds of errors:
8
9| stage1/Makefile.am:2: error: 'pkglibdir' is not a legitimate directory for 'DATA'
10| stage2/Makefile.am:35: error: 'pkglibdir' is not a legitimate directory for 'DATA'
11| stage2/Makefile.am:46: error: 'pkglibdir' is not a legitimate directory for 'DATA'
12| autoreconf: automake failed with exit status: 1
13| ERROR: autoreconf execution failed.
14
15The upstream status is marked as 'Inappropriate' because this problem is not uncommon,
16it has been there for a long time and no change in upstream.
17
18Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
19
20Index: grub-0.97/stage1/Makefile.am
21===================================================================
22--- a/stage1/Makefile.am
23+++ b/stage1/Makefile.am
24@@ -1,7 +1,7 @@
25-pkglibdir = $(libdir)/$(PACKAGE)/$(host_cpu)-$(host_vendor)
26-nodist_pkglib_DATA = stage1
27+pkgdatadir = $(libdir)/$(PACKAGE)/$(host_cpu)-$(host_vendor)
28+nodist_pkgdata_DATA = stage1
29
30-CLEANFILES = $(nodist_pkglib_DATA)
31+CLEANFILES = $(nodist_pkgdata_DATA)
32
33 # We can't use builtins or standard includes.
34 AM_CCASFLAGS = $(STAGE1_CFLAGS) -fno-builtin -nostdinc
35Index: grub-0.97/stage2/Makefile.am
36===================================================================
37--- a/stage2/Makefile.am
38+++ b/stage2/Makefile.am
39@@ -27,12 +27,12 @@ libgrub_a_CFLAGS = $(GRUB_CFLAGS) -I$(top_srcdir)/lib \
40 -DUSE_MD5_PASSWORDS=1 -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1
41
42 # Stage 2 and Stage 1.5's.
43-pkglibdir = $(libdir)/$(PACKAGE)/$(host_cpu)-$(host_vendor)
44+pkgdatadir = $(libdir)/$(PACKAGE)/$(host_cpu)-$(host_vendor)
45
46 EXTRA_PROGRAMS = nbloader.exec pxeloader.exec diskless.exec
47
48 if DISKLESS_SUPPORT
49-pkglib_DATA = stage2 stage2_eltorito e2fs_stage1_5 fat_stage1_5 \
50+pkgdata_DATA = stage2 stage2_eltorito e2fs_stage1_5 fat_stage1_5 \
51 ffs_stage1_5 iso9660_stage1_5 jfs_stage1_5 minix_stage1_5 \
52 reiserfs_stage1_5 ufs2_stage1_5 vstafs_stage1_5 xfs_stage1_5 \
53 nbgrub pxegrub
54@@ -43,7 +43,7 @@ noinst_PROGRAMS = pre_stage2.exec start.exec start_eltorito.exec \
55 reiserfs_stage1_5.exec ufs2_stage1_5.exec vstafs_stage1_5.exec \
56 xfs_stage1_5.exec nbloader.exec pxeloader.exec diskless.exec
57 else
58-pkglib_DATA = stage2 stage2_eltorito e2fs_stage1_5 fat_stage1_5 \
59+pkgdata_DATA = stage2 stage2_eltorito e2fs_stage1_5 fat_stage1_5 \
60 ffs_stage1_5 iso9660_stage1_5 jfs_stage1_5 minix_stage1_5 \
61 reiserfs_stage1_5 ufs2_stage1_5 vstafs_stage1_5 xfs_stage1_5
62 noinst_DATA = pre_stage2 start start_eltorito
63@@ -105,7 +105,7 @@ else
64 BUILT_SOURCES = stage2_size.h
65 endif
66
67-CLEANFILES = $(pkglib_DATA) $(noinst_DATA) $(BUILT_SOURCES)
68+CLEANFILES = $(pkgdata_DATA) $(noinst_DATA) $(BUILT_SOURCES)
69
70 stage2_size.h: pre_stage2
71 -rm -f stage2_size.h
72--
731.7.9.5
74
diff --git a/meta/recipes-bsp/grub/grub-0.97/no-reorder-functions.patch b/meta/recipes-bsp/grub/grub-0.97/no-reorder-functions.patch
new file mode 100644
index 0000000..70037e4
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-0.97/no-reorder-functions.patch
@@ -0,0 +1,31 @@
1Upstream-Status: Inappropriate [disable feature]
2
3After the commit "tcmode-default: switch to gcc 4.6.0 for x86, x86-64 & arm",
4we got bug 1099 (http://bugzilla.yoctoproject.org/show_bug.cgi?id=1099):
5
6Running "install --stage2=/ssd/boot/grub/stage2 /boot/grub/stage1(hd0)
7 /boot/grub/stage2 p /boot/grub/menu list" failed
8Error 6: Mismatched or corrupt version of stage1/stage2
9
10This turned out to be a gcc's bug. See
11https://bugs.gentoo.org/show_bug.cgi?id=360513
12http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39333
13
14Upstream gcc seems uninterested in the bug, so at present we can disable the
15option as a workaround. Thanks Ryan Hill for the investigation and the
16workaround patch.
17
18Dexuan Cui <dexuan.cui@intel.com>
19Wed Jun 29 20:21:39 CST 2011
20
21--- grub-0.97/stage2/Makefile.am.orig
22+++ grub-0.97/stage2/Makefile.am
23@@ -79,7 +79,7 @@
24 HERCULES_FLAGS =
25 endif
26
27-STAGE2_COMPILE = $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
28+STAGE2_COMPILE = $(STAGE2_CFLAGS) -fno-reorder-functions -fno-builtin -nostdinc \
29 $(NETBOOT_FLAGS) $(SERIAL_FLAGS) $(HERCULES_FLAGS)
30
31 STAGE1_5_LINK = -nostdlib -Wl,-N -Wl,-Ttext -Wl,2000
diff --git a/meta/recipes-bsp/grub/grub-0.97/objcopy-absolute.patch b/meta/recipes-bsp/grub/grub-0.97/objcopy-absolute.patch
new file mode 100644
index 0000000..bd8e0a8
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-0.97/objcopy-absolute.patch
@@ -0,0 +1,40 @@
1
2This patch is from ubuntu:
3 * objcopy-absolute.diff (update): Remove .note, .comment, and
4 .note.gnu.build-id sections from images (LP: #444703).
5
6Upstream-Status: Inappropriate [no longer maintained]
7
8Index: b/acinclude.m4
9===================================================================
10--- a/acinclude.m4
11+++ b/acinclude.m4
12@@ -61,7 +61,7 @@
13 else
14 AC_MSG_ERROR([${CC-cc} cannot link at address $link_addr])
15 fi
16- if AC_TRY_COMMAND([${OBJCOPY-objcopy} -O binary conftest.exec conftest]); then :
17+ if AC_TRY_COMMAND([${OBJCOPY-objcopy} --only-section=.text -O binary conftest.exec conftest]); then :
18 else
19 AC_MSG_ERROR([${OBJCOPY-objcopy} cannot create binary files])
20 fi
21Index: b/stage1/Makefile.am
22===================================================================
23--- a/stage1/Makefile.am
24+++ b/stage1/Makefile.am
25@@ -12,4 +12,4 @@
26
27 SUFFIXES = .exec
28 .exec:
29- $(OBJCOPY) -O binary $< $@
30+ $(OBJCOPY) -O binary -R .note -R .comment -R .note.gnu.build-id $< $@
31Index: b/stage2/Makefile.am
32===================================================================
33--- a/stage2/Makefile.am
34+++ b/stage2/Makefile.am
35@@ -293,4 +293,4 @@
36 # General rule for making a raw binary.
37 SUFFIXES = .exec
38 .exec:
39- $(OBJCOPY) -O binary $< $@
40+ $(OBJCOPY) -O binary -R .note -R .comment -R .note.gnu.build-id $< $@
diff --git a/meta/recipes-bsp/grub/grub-2.00/grub-install.in.patch b/meta/recipes-bsp/grub/grub-2.00/grub-install.in.patch
new file mode 100644
index 0000000..326951d
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-2.00/grub-install.in.patch
@@ -0,0 +1,20 @@
1Upstream-Status: Inappropriate [embedded specific]
2
3Our use of grub-install doesn't require the -x option, so we should be
4be able make use of grep versions that don't support it.
5
6Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
7
8Index: grub-1.99/util/grub-install.in
9===================================================================
10--- grub-1.99.orig/util/grub-install.in 2011-09-09 22:37:20.093906679 -0500
11+++ grub-1.99/util/grub-install.in 2011-09-09 22:37:30.854737882 -0500
12@@ -510,7 +510,7 @@
13
14 if [ "x${devabstraction_module}" = "x" ] ; then
15 if [ x"${install_device}" != x ]; then
16- if echo "${install_device}" | grep -qx "(.*)" ; then
17+ if echo "${install_device}" | grep -q "(.*)" ; then
18 install_drive="${install_device}"
19 else
20 install_drive="`"$grub_probe" --device-map="${device_map}" --target=drive --device "${install_device}"`" || exit 1
diff --git a/meta/recipes-bsp/grub/grub-2.00/remove-gets.patch b/meta/recipes-bsp/grub/grub-2.00/remove-gets.patch
new file mode 100644
index 0000000..463f784
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-2.00/remove-gets.patch
@@ -0,0 +1,20 @@
1ISO C11 removes the specification of gets() from the C language, eglibc 2.16+ removed it
2
3Signed-off-by: Khem Raj <raj.khem@gmail.com>
4
5Upstream-Status: Pending
6Index: grub-1.99/grub-core/gnulib/stdio.in.h
7===================================================================
8--- grub-1.99.orig/grub-core/gnulib/stdio.in.h 2010-12-01 06:45:43.000000000 -0800
9+++ grub-1.99/grub-core/gnulib/stdio.in.h 2012-07-04 12:25:02.057099107 -0700
10@@ -140,8 +140,10 @@
11 /* It is very rare that the developer ever has full control of stdin,
12 so any use of gets warrants an unconditional warning. Assume it is
13 always declared, since it is required by C89. */
14+#if defined gets
15 #undef gets
16 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
17+#endif
18
19 #if @GNULIB_FOPEN@
20 # if @REPLACE_FOPEN@
diff --git a/meta/recipes-bsp/grub/grub-efi_2.00.bb b/meta/recipes-bsp/grub/grub-efi_2.00.bb
new file mode 100644
index 0000000..6944cb2
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub-efi_2.00.bb
@@ -0,0 +1,91 @@
1SUMMARY = "GRUB2 is the next-generation GRand Unified Bootloader"
2
3DESCRIPTION = "GRUB2 is the next generaion of a GPLed bootloader \
4intended to unify bootloading across x86 operating systems. In \
5addition to loading the Linux kernel, it implements the Multiboot \
6standard, which allows for flexible loading of multiple boot images. \
7This recipe builds an EFI binary for the target. It does not install \
8or package anything, it only deploys a target-arch GRUB EFI image."
9
10HOMEPAGE = "http://www.gnu.org/software/grub/"
11SECTION = "bootloaders"
12
13LICENSE = "GPLv3"
14LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
15
16# FIXME: We should be able to optionally drop freetype as a dependency
17DEPENDS = "autogen-native flex-native bison-native"
18DEPENDS_class-target = "grub-efi-native"
19PR = "r2"
20
21SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
22 file://cfg \
23 file://grub-2.00-fpmath-sse-387-fix.patch \
24 file://grub-2.00-fix-enable_execute_stack-check.patch \
25 file://check-if-liblzma-is-disabled.patch \
26 file://grub-no-unused-result.patch \
27 file://grub-2.00-ignore-gnulib-gets-stupidity.patch \
28 file://fix-issue-with-flex-2.5.37.patch \
29 file://grub-efi-allow-a-compilation-without-mcmodel-large.patch \
30 file://grub-2.00-add-oe-kernel.patch \
31 "
32SRC_URI[md5sum] = "e927540b6eda8b024fb0391eeaa4091c"
33SRC_URI[sha256sum] = "65b39a0558f8c802209c574f4d02ca263a804e8a564bc6caf1cd0fd3b3cc11e3"
34
35COMPATIBLE_HOST = '(x86_64.*|i.86.*)-(linux|freebsd.*)'
36
37S = "${WORKDIR}/grub-${PV}"
38
39# Determine the target arch for the grub modules
40python __anonymous () {
41 import re
42 target = d.getVar('TARGET_ARCH', True)
43 if target == "x86_64":
44 grubtarget = 'x86_64'
45 grubimage = "bootx64.efi"
46 elif re.match('i.86', target):
47 grubtarget = 'i386'
48 grubimage = "bootia32.efi"
49 else:
50 raise bb.parse.SkipPackage("grub-efi is incompatible with target %s" % target)
51 d.setVar("GRUB_TARGET", grubtarget)
52 d.setVar("GRUB_IMAGE", grubimage)
53}
54
55inherit autotools-brokensep
56inherit gettext
57inherit deploy
58
59CACHED_CONFIGUREVARS += "ac_cv_path_HELP2MAN="
60EXTRA_OECONF = "--with-platform=efi --disable-grub-mkfont \
61 --enable-efiemu=no --program-prefix='' \
62 --enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
63
64do_install_class-target() {
65 :
66}
67
68do_install_class-native() {
69 install -d ${D}${bindir}
70 install -m 755 grub-mkimage ${D}${bindir}
71}
72
73do_deploy() {
74 # Search for the grub.cfg on the local boot media by using the
75 # built in cfg file provided via this recipe
76 grub-mkimage -c ../cfg -p /EFI/BOOT -d ./grub-core/ \
77 -O ${GRUB_TARGET}-efi -o ./${GRUB_IMAGE} \
78 boot linux ext2 fat serial part_msdos part_gpt normal efi_gop iso9660 search
79 install -m 644 ${B}/${GRUB_IMAGE} ${DEPLOYDIR}
80}
81
82do_deploy_class-native() {
83 :
84}
85
86addtask deploy after do_install before do_build
87
88FILES_${PN}-dbg += "${libdir}/${BPN}/${GRUB_TARGET}-efi/.debug"
89
90BBCLASSEXTEND = "native"
91ALLOW_EMPTY_${PN} = "1"
diff --git a/meta/recipes-bsp/grub/grub/40_custom b/meta/recipes-bsp/grub/grub/40_custom
new file mode 100755
index 0000000..f891b02
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub/40_custom
@@ -0,0 +1,9 @@
1#!/bin/sh
2exec tail -n +3 $0
3# This file provides an easy way to add custom menu entries. Simply type the
4# menu entries you want to add after this comment. Be careful not to change
5# the 'exec tail' line above.
6menuentry "Linux" {
7 set root=(hd0,1)
8 linux /vmlinuz root=__ROOTFS__ rw __CONSOLE__ __VIDEO_MODE__ __VGA_MODE__ quiet
9}
diff --git a/meta/recipes-bsp/grub/grub/autogen.sh-exclude-pc.patch b/meta/recipes-bsp/grub/grub/autogen.sh-exclude-pc.patch
new file mode 100644
index 0000000..fc5aa4e
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub/autogen.sh-exclude-pc.patch
@@ -0,0 +1,34 @@
1From ff8f68cc48fd3c30d55e1d570d51f2e0952c968e Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Sat, 25 Jan 2014 23:49:44 -0500
4Subject: [PATCH] autogen.sh: exclude .pc from po/POTFILES.in
5
6Exclude the .pc from po/POTFILES.in since quilt uses "patch --backup",
7which will create the backup file under .pc, this may cause unexpected
8errors, for example, on CentOS 5.x, if the backup file is null
9(newfile), it's mode will be 000, then we will get errors when xgettext
10try to read it.
11
12Upstream-Status: Inappropriate [OE specific]
13
14Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
15---
16 autogen.sh | 2 +-
17 1 file changed, 1 insertion(+), 1 deletion(-)
18
19diff --git a/autogen.sh b/autogen.sh
20index 7424428..843619e 100755
21--- a/autogen.sh
22+++ b/autogen.sh
23@@ -5,7 +5,7 @@ set -e
24 export LC_COLLATE=C
25 unset LC_ALL
26
27-find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' |sort > po/POTFILES.in
28+find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' ! -path './.pc/*' | sort > po/POTFILES.in
29 find util -iname '*.in' ! -name Makefile.in |sort > po/POTFILES-shell.in
30
31 echo "Importing unicode..."
32--
331.7.10.4
34
diff --git a/meta/recipes-bsp/grub/grub_0.97.bb b/meta/recipes-bsp/grub/grub_0.97.bb
new file mode 100644
index 0000000..376244e
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub_0.97.bb
@@ -0,0 +1,35 @@
1SUMMARY = "GRUB is the GRand Unified Bootloader"
2DESCRIPTION = "GRUB is a GPLed bootloader intended to unify bootloading across x86 \
3operating systems. In addition to loading the Linux kernel, it implements the Multiboot \
4standard, which allows for flexible loading of multiple boot images."
5HOMEPAGE = "http://www.gnu.org/software/grub/"
6SECTION = "bootloaders"
7
8LICENSE = "GPLv2+"
9LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b \
10 file://grub/main.c;beginline=3;endline=9;md5=22a5f28d2130fff9f2a17ed54be90ed6"
11
12RDEPENDS_${PN} = "diffutils"
13PR = "r6"
14
15SRC_URI = "ftp://alpha.gnu.org/gnu/grub/grub-${PV}.tar.gz; \
16 file://no-reorder-functions.patch \
17 file://autohell.patch \
18 file://grub_fix_for_automake-1.12.patch \
19 file://objcopy-absolute.patch \
20 file://grub-support-256byte-inode.patch \
21"
22
23SRC_URI[md5sum] = "cd3f3eb54446be6003156158d51f4884"
24SRC_URI[sha256sum] = "4e1d15d12dbd3e9208111d6b806ad5a9857ca8850c47877d36575b904559260b"
25
26inherit autotools
27
28COMPATIBLE_HOST = "i.86.*-linux"
29
30EXTRA_OECONF = "--without-curses"
31
32do_install_append_vmware() {
33 mkdir -p ${D}/boot/
34 ln -sf ../usr/lib/grub/{$TARGET_ARCH}{$TARGET_VENDOR}/ ${D}/boot/grub
35}
diff --git a/meta/recipes-bsp/grub/grub_2.00.bb b/meta/recipes-bsp/grub/grub_2.00.bb
new file mode 100644
index 0000000..c21031b
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub_2.00.bb
@@ -0,0 +1,52 @@
1SUMMARY = "GRUB2 is the next-generation GRand Unified Bootloader"
2
3DESCRIPTION = "GRUB2 is the next generaion of a GPLed bootloader \
4intended to unify bootloading across x86 operating systems. In \
5addition to loading the Linux kernel, it implements the Multiboot \
6standard, which allows for flexible loading of multiple boot images."
7
8HOMEPAGE = "http://www.gnu.org/software/grub/"
9SECTION = "bootloaders"
10
11LICENSE = "GPLv3"
12LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
13
14DEPENDS = "autogen-native flex-native bison-native xz"
15RDEPENDS_${PN} = "diffutils freetype"
16PR = "r1"
17
18SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
19 file://grub-install.in.patch \
20 file://grub-2.00-fpmath-sse-387-fix.patch \
21 file://remove-gets.patch \
22 file://check-if-liblzma-is-disabled.patch \
23 file://40_custom \
24 file://fix-issue-with-flex-2.5.37.patch \
25 file://grub-2.00-add-oe-kernel.patch \
26 "
27
28SRC_URI[md5sum] = "e927540b6eda8b024fb0391eeaa4091c"
29SRC_URI[sha256sum] = "65b39a0558f8c802209c574f4d02ca263a804e8a564bc6caf1cd0fd3b3cc11e3"
30
31COMPATIBLE_HOST = '(x86_64.*|i.86.*)-(linux|freebsd.*)'
32
33FILES_${PN}-dbg += "${libdir}/${BPN}/i386-pc/.debug"
34
35
36inherit autotools
37inherit gettext
38
39PACKAGECONFIG ??= ""
40PACKAGECONFIG[grub-mount] = "--enable-grub-mount,--disable-grub-mount,fuse"
41PACKAGECONFIG[device-mapper] = "--enable-device-mapper,--disable-device-mapper,lvm2"
42
43EXTRA_OECONF = "--with-platform=pc --disable-grub-mkfont --program-prefix="" \
44 --enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
45
46do_install_append () {
47 install -d ${D}${sysconfdir}/grub.d
48 install -m 0755 ${WORKDIR}/40_custom ${D}${sysconfdir}/grub.d/40_custom
49}
50
51INSANE_SKIP_${PN} = "arch"
52INSANE_SKIP_${PN}-dbg = "arch"
diff --git a/meta/recipes-bsp/grub/grub_git.bb b/meta/recipes-bsp/grub/grub_git.bb
new file mode 100644
index 0000000..9b5d9bb
--- /dev/null
+++ b/meta/recipes-bsp/grub/grub_git.bb
@@ -0,0 +1,62 @@
1SUMMARY = "GRUB2 is the next-generation GRand Unified Bootloader"
2
3DESCRIPTION = "GRUB2 is the next generaion of a GPLed bootloader \
4intended to unify bootloading across x86 operating systems. In \
5addition to loading the Linux kernel, it implements the Multiboot \
6standard, which allows for flexible loading of multiple boot images."
7
8HOMEPAGE = "http://www.gnu.org/software/grub/"
9SECTION = "bootloaders"
10
11LICENSE = "GPLv3"
12LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
13
14DEPENDS = "autogen-native flex-native bison-native xz freetype"
15
16DEFAULT_PREFERENCE = "-1"
17DEFAULT_PREFERENCE_arm = "1"
18
19PV = "2.00+${SRCPV}"
20SRCREV = "0776112c5311196889a15058a3b1be4c81ba5e05"
21SRC_URI = "git://git.savannah.gnu.org/grub.git \
22 file://40_custom \
23 file://autogen.sh-exclude-pc.patch \
24 file://grub-2.00-add-oe-kernel.patch \
25 "
26
27S = "${WORKDIR}/git"
28
29COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*)-(linux.*|freebsd.*)'
30
31inherit autotools
32inherit gettext
33
34PACKAGECONFIG ??= ""
35PACKAGECONFIG[grub-mount] = "--enable-grub-mount,--disable-grub-mount,fuse"
36PACKAGECONFIG[device-mapper] = "--enable-device-mapper,--disable-device-mapper,lvm2"
37
38# configure.ac has code to set this automagically from the target tuple
39# but the OE freeform one (core2-foo-bar-linux) don't work with that.
40
41GRUBPLATFORM_arm = "uboot"
42GRUBPLATFORM_aarch64 = "efi"
43GRUBPLATFORM ??= "pc"
44
45EXTRA_OECONF = "--with-platform=${GRUBPLATFORM} --disable-grub-mkfont --program-prefix="" \
46 --enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
47
48do_configure_prepend() {
49 ( cd ${S}
50 ${S}/autogen.sh )
51}
52
53do_install_append () {
54 install -d ${D}${sysconfdir}/grub.d
55 install -m 0755 ${WORKDIR}/40_custom ${D}${sysconfdir}/grub.d/40_custom
56}
57
58RDEPENDS_${PN} = "diffutils freetype"
59FILES_${PN}-dbg += "${libdir}/${BPN}/*/.debug"
60
61INSANE_SKIP_${PN} = "arch"
62INSANE_SKIP_${PN}-dbg = "arch"
diff --git a/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch b/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch
new file mode 100644
index 0000000..2683f83
--- /dev/null
+++ b/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch
@@ -0,0 +1,39 @@
1From 0f7f9e3bb1d0e1b93f3ad8a1d5d7bdd3fbf27494 Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Thu, 27 Mar 2014 07:20:33 +0000
4Subject: [PATCH] Makefile.am: use objcopy from the env
5
6It uses the "objcopy" directly, which is not suitable for cross compile.
7
8Upstream-Status: Pending
9
10Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
11---
12 Makefile.am | 4 +++-
13 1 file changed, 3 insertions(+), 1 deletion(-)
14
15diff --git a/Makefile.am b/Makefile.am
16index d224418..dcd95b0 100644
17--- a/Makefile.am
18+++ b/Makefile.am
19@@ -19,6 +19,8 @@
20 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
21 AM_MAKEFLAGS = --no-print-directory
22
23+OBJCOPY ?= objcopy
24+
25 gummibootlibdir = $(prefix)/lib/gummiboot
26
27 AM_CPPFLAGS = -include config.h
28@@ -143,7 +145,7 @@ $(efi_solib): $(efi_objects)
29 .DELETE_ON_ERROR: $(efi_solib)
30
31 $(efi_loadername): $(efi_solib)
32- $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \
33+ $(AM_V_GEN) $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic \
34 -j .dynsym -j .rel -j .rela -j .reloc -j .eh_frame \
35 --target=efi-app-$(ARCH) $< $@
36
37--
381.8.3.4
39
diff --git a/meta/recipes-bsp/gummiboot/gummiboot_git.bb b/meta/recipes-bsp/gummiboot/gummiboot_git.bb
new file mode 100644
index 0000000..80df2b6
--- /dev/null
+++ b/meta/recipes-bsp/gummiboot/gummiboot_git.bb
@@ -0,0 +1,34 @@
1SUMMARY = "Gummiboot is a simple UEFI boot manager which executes configured EFI images."
2HOMEPAGE = "http://freedesktop.org/wiki/Software/gummiboot"
3
4LICENSE = "LGPLv2.1"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=4fbd65380cdd255951079008b364516c"
6
7DEPENDS = "gnu-efi util-linux"
8
9inherit autotools
10inherit deploy
11
12PV = "43+git${SRCPV}"
13SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d"
14SRC_URI = "git://anongit.freedesktop.org/gummiboot \
15 file://fix-objcopy.patch \
16 "
17
18# Note: Add COMPATIBLE_HOST here is only because it depends on gnu-efi
19# which has set the COMPATIBLE_HOST, the gummiboot itself may work on
20# more hosts.
21COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"
22
23S = "${WORKDIR}/git"
24
25EXTRA_OECONF = "--disable-manpages --with-efi-includedir=${STAGING_INCDIR} \
26 --with-efi-ldsdir=${STAGING_LIBDIR} \
27 --with-efi-libdir=${STAGING_LIBDIR}"
28
29EXTRA_OEMAKE += "gummibootlibdir=${libdir}/gummiboot"
30
31do_deploy () {
32 install ${B}/gummiboot*.efi ${DEPLOYDIR}
33}
34addtask deploy before do_build after do_compile
diff --git a/meta/recipes-bsp/hostap/files/COPYING.patch b/meta/recipes-bsp/hostap/files/COPYING.patch
new file mode 100644
index 0000000..05c70c9
--- /dev/null
+++ b/meta/recipes-bsp/hostap/files/COPYING.patch
@@ -0,0 +1,346 @@
1Upstream-Status: Inappropriate [other]
2
3diff -ruN hostap-conf-1.0-orig/COPYING hostap-conf-1.0/COPYING
4--- hostap-conf-1.0-orig/COPYING 1970-01-01 08:00:00.000000000 +0800
5+++ hostap-conf-1.0/COPYING 2010-12-09 16:36:48.000000000 +0800
6@@ -0,0 +1,340 @@
7+ GNU GENERAL PUBLIC LICENSE
8+ Version 2, June 1991
9+
10+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
11+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
12+ Everyone is permitted to copy and distribute verbatim copies
13+ of this license document, but changing it is not allowed.
14+
15+ Preamble
16+
17+ The licenses for most software are designed to take away your
18+freedom to share and change it. By contrast, the GNU General Public
19+License is intended to guarantee your freedom to share and change free
20+software--to make sure the software is free for all its users. This
21+General Public License applies to most of the Free Software
22+Foundation's software and to any other program whose authors commit to
23+using it. (Some other Free Software Foundation software is covered by
24+the GNU Library General Public License instead.) You can apply it to
25+your programs, too.
26+
27+ When we speak of free software, we are referring to freedom, not
28+price. Our General Public Licenses are designed to make sure that you
29+have the freedom to distribute copies of free software (and charge for
30+this service if you wish), that you receive source code or can get it
31+if you want it, that you can change the software or use pieces of it
32+in new free programs; and that you know you can do these things.
33+
34+ To protect your rights, we need to make restrictions that forbid
35+anyone to deny you these rights or to ask you to surrender the rights.
36+These restrictions translate to certain responsibilities for you if you
37+distribute copies of the software, or if you modify it.
38+
39+ For example, if you distribute copies of such a program, whether
40+gratis or for a fee, you must give the recipients all the rights that
41+you have. You must make sure that they, too, receive or can get the
42+source code. And you must show them these terms so they know their
43+rights.
44+
45+ We protect your rights with two steps: (1) copyright the software, and
46+(2) offer you this license which gives you legal permission to copy,
47+distribute and/or modify the software.
48+
49+ Also, for each author's protection and ours, we want to make certain
50+that everyone understands that there is no warranty for this free
51+software. If the software is modified by someone else and passed on, we
52+want its recipients to know that what they have is not the original, so
53+that any problems introduced by others will not reflect on the original
54+authors' reputations.
55+
56+ Finally, any free program is threatened constantly by software
57+patents. We wish to avoid the danger that redistributors of a free
58+program will individually obtain patent licenses, in effect making the
59+program proprietary. To prevent this, we have made it clear that any
60+patent must be licensed for everyone's free use or not licensed at all.
61+
62+ The precise terms and conditions for copying, distribution and
63+modification follow.
64+
65+ GNU GENERAL PUBLIC LICENSE
66+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
67+
68+ 0. This License applies to any program or other work which contains
69+a notice placed by the copyright holder saying it may be distributed
70+under the terms of this General Public License. The "Program", below,
71+refers to any such program or work, and a "work based on the Program"
72+means either the Program or any derivative work under copyright law:
73+that is to say, a work containing the Program or a portion of it,
74+either verbatim or with modifications and/or translated into another
75+language. (Hereinafter, translation is included without limitation in
76+the term "modification".) Each licensee is addressed as "you".
77+
78+Activities other than copying, distribution and modification are not
79+covered by this License; they are outside its scope. The act of
80+running the Program is not restricted, and the output from the Program
81+is covered only if its contents constitute a work based on the
82+Program (independent of having been made by running the Program).
83+Whether that is true depends on what the Program does.
84+
85+ 1. You may copy and distribute verbatim copies of the Program's
86+source code as you receive it, in any medium, provided that you
87+conspicuously and appropriately publish on each copy an appropriate
88+copyright notice and disclaimer of warranty; keep intact all the
89+notices that refer to this License and to the absence of any warranty;
90+and give any other recipients of the Program a copy of this License
91+along with the Program.
92+
93+You may charge a fee for the physical act of transferring a copy, and
94+you may at your option offer warranty protection in exchange for a fee.
95+
96+ 2. You may modify your copy or copies of the Program or any portion
97+of it, thus forming a work based on the Program, and copy and
98+distribute such modifications or work under the terms of Section 1
99+above, provided that you also meet all of these conditions:
100+
101+ a) You must cause the modified files to carry prominent notices
102+ stating that you changed the files and the date of any change.
103+
104+ b) You must cause any work that you distribute or publish, that in
105+ whole or in part contains or is derived from the Program or any
106+ part thereof, to be licensed as a whole at no charge to all third
107+ parties under the terms of this License.
108+
109+ c) If the modified program normally reads commands interactively
110+ when run, you must cause it, when started running for such
111+ interactive use in the most ordinary way, to print or display an
112+ announcement including an appropriate copyright notice and a
113+ notice that there is no warranty (or else, saying that you provide
114+ a warranty) and that users may redistribute the program under
115+ these conditions, and telling the user how to view a copy of this
116+ License. (Exception: if the Program itself is interactive but
117+ does not normally print such an announcement, your work based on
118+ the Program is not required to print an announcement.)
119+
120+These requirements apply to the modified work as a whole. If
121+identifiable sections of that work are not derived from the Program,
122+and can be reasonably considered independent and separate works in
123+themselves, then this License, and its terms, do not apply to those
124+sections when you distribute them as separate works. But when you
125+distribute the same sections as part of a whole which is a work based
126+on the Program, the distribution of the whole must be on the terms of
127+this License, whose permissions for other licensees extend to the
128+entire whole, and thus to each and every part regardless of who wrote it.
129+
130+Thus, it is not the intent of this section to claim rights or contest
131+your rights to work written entirely by you; rather, the intent is to
132+exercise the right to control the distribution of derivative or
133+collective works based on the Program.
134+
135+In addition, mere aggregation of another work not based on the Program
136+with the Program (or with a work based on the Program) on a volume of
137+a storage or distribution medium does not bring the other work under
138+the scope of this License.
139+
140+ 3. You may copy and distribute the Program (or a work based on it,
141+under Section 2) in object code or executable form under the terms of
142+Sections 1 and 2 above provided that you also do one of the following:
143+
144+ a) Accompany it with the complete corresponding machine-readable
145+ source code, which must be distributed under the terms of Sections
146+ 1 and 2 above on a medium customarily used for software interchange; or,
147+
148+ b) Accompany it with a written offer, valid for at least three
149+ years, to give any third party, for a charge no more than your
150+ cost of physically performing source distribution, a complete
151+ machine-readable copy of the corresponding source code, to be
152+ distributed under the terms of Sections 1 and 2 above on a medium
153+ customarily used for software interchange; or,
154+
155+ c) Accompany it with the information you received as to the offer
156+ to distribute corresponding source code. (This alternative is
157+ allowed only for noncommercial distribution and only if you
158+ received the program in object code or executable form with such
159+ an offer, in accord with Subsection b above.)
160+
161+The source code for a work means the preferred form of the work for
162+making modifications to it. For an executable work, complete source
163+code means all the source code for all modules it contains, plus any
164+associated interface definition files, plus the scripts used to
165+control compilation and installation of the executable. However, as a
166+special exception, the source code distributed need not include
167+anything that is normally distributed (in either source or binary
168+form) with the major components (compiler, kernel, and so on) of the
169+operating system on which the executable runs, unless that component
170+itself accompanies the executable.
171+
172+If distribution of executable or object code is made by offering
173+access to copy from a designated place, then offering equivalent
174+access to copy the source code from the same place counts as
175+distribution of the source code, even though third parties are not
176+compelled to copy the source along with the object code.
177+
178+ 4. You may not copy, modify, sublicense, or distribute the Program
179+except as expressly provided under this License. Any attempt
180+otherwise to copy, modify, sublicense or distribute the Program is
181+void, and will automatically terminate your rights under this License.
182+However, parties who have received copies, or rights, from you under
183+this License will not have their licenses terminated so long as such
184+parties remain in full compliance.
185+
186+ 5. You are not required to accept this License, since you have not
187+signed it. However, nothing else grants you permission to modify or
188+distribute the Program or its derivative works. These actions are
189+prohibited by law if you do not accept this License. Therefore, by
190+modifying or distributing the Program (or any work based on the
191+Program), you indicate your acceptance of this License to do so, and
192+all its terms and conditions for copying, distributing or modifying
193+the Program or works based on it.
194+
195+ 6. Each time you redistribute the Program (or any work based on the
196+Program), the recipient automatically receives a license from the
197+original licensor to copy, distribute or modify the Program subject to
198+these terms and conditions. You may not impose any further
199+restrictions on the recipients' exercise of the rights granted herein.
200+You are not responsible for enforcing compliance by third parties to
201+this License.
202+
203+ 7. If, as a consequence of a court judgment or allegation of patent
204+infringement or for any other reason (not limited to patent issues),
205+conditions are imposed on you (whether by court order, agreement or
206+otherwise) that contradict the conditions of this License, they do not
207+excuse you from the conditions of this License. If you cannot
208+distribute so as to satisfy simultaneously your obligations under this
209+License and any other pertinent obligations, then as a consequence you
210+may not distribute the Program at all. For example, if a patent
211+license would not permit royalty-free redistribution of the Program by
212+all those who receive copies directly or indirectly through you, then
213+the only way you could satisfy both it and this License would be to
214+refrain entirely from distribution of the Program.
215+
216+If any portion of this section is held invalid or unenforceable under
217+any particular circumstance, the balance of the section is intended to
218+apply and the section as a whole is intended to apply in other
219+circumstances.
220+
221+It is not the purpose of this section to induce you to infringe any
222+patents or other property right claims or to contest validity of any
223+such claims; this section has the sole purpose of protecting the
224+integrity of the free software distribution system, which is
225+implemented by public license practices. Many people have made
226+generous contributions to the wide range of software distributed
227+through that system in reliance on consistent application of that
228+system; it is up to the author/donor to decide if he or she is willing
229+to distribute software through any other system and a licensee cannot
230+impose that choice.
231+
232+This section is intended to make thoroughly clear what is believed to
233+be a consequence of the rest of this License.
234+
235+ 8. If the distribution and/or use of the Program is restricted in
236+certain countries either by patents or by copyrighted interfaces, the
237+original copyright holder who places the Program under this License
238+may add an explicit geographical distribution limitation excluding
239+those countries, so that distribution is permitted only in or among
240+countries not thus excluded. In such case, this License incorporates
241+the limitation as if written in the body of this License.
242+
243+ 9. The Free Software Foundation may publish revised and/or new versions
244+of the General Public License from time to time. Such new versions will
245+be similar in spirit to the present version, but may differ in detail to
246+address new problems or concerns.
247+
248+Each version is given a distinguishing version number. If the Program
249+specifies a version number of this License which applies to it and "any
250+later version", you have the option of following the terms and conditions
251+either of that version or of any later version published by the Free
252+Software Foundation. If the Program does not specify a version number of
253+this License, you may choose any version ever published by the Free Software
254+Foundation.
255+
256+ 10. If you wish to incorporate parts of the Program into other free
257+programs whose distribution conditions are different, write to the author
258+to ask for permission. For software which is copyrighted by the Free
259+Software Foundation, write to the Free Software Foundation; we sometimes
260+make exceptions for this. Our decision will be guided by the two goals
261+of preserving the free status of all derivatives of our free software and
262+of promoting the sharing and reuse of software generally.
263+
264+ NO WARRANTY
265+
266+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
267+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
268+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
269+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
270+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
271+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
272+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
273+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
274+REPAIR OR CORRECTION.
275+
276+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
277+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
278+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
279+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
280+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
281+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
282+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
283+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
284+POSSIBILITY OF SUCH DAMAGES.
285+
286+ END OF TERMS AND CONDITIONS
287+
288+ How to Apply These Terms to Your New Programs
289+
290+ If you develop a new program, and you want it to be of the greatest
291+possible use to the public, the best way to achieve this is to make it
292+free software which everyone can redistribute and change under these terms.
293+
294+ To do so, attach the following notices to the program. It is safest
295+to attach them to the start of each source file to most effectively
296+convey the exclusion of warranty; and each file should have at least
297+the "copyright" line and a pointer to where the full notice is found.
298+
299+ <one line to give the program's name and a brief idea of what it does.>
300+ Copyright (C) <year> <name of author>
301+
302+ This program is free software; you can redistribute it and/or modify
303+ it under the terms of the GNU General Public License as published by
304+ the Free Software Foundation; either version 2 of the License, or
305+ (at your option) any later version.
306+
307+ This program is distributed in the hope that it will be useful,
308+ but WITHOUT ANY WARRANTY; without even the implied warranty of
309+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
310+ GNU General Public License for more details.
311+
312+ You should have received a copy of the GNU General Public License
313+ along with this program; if not, write to the Free Software
314+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
315+
316+
317+Also add information on how to contact you by electronic and paper mail.
318+
319+If the program is interactive, make it output a short notice like this
320+when it starts in an interactive mode:
321+
322+ Gnomovision version 69, Copyright (C) year name of author
323+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
324+ This is free software, and you are welcome to redistribute it
325+ under certain conditions; type `show c' for details.
326+
327+The hypothetical commands `show w' and `show c' should show the appropriate
328+parts of the General Public License. Of course, the commands you use may
329+be called something other than `show w' and `show c'; they could even be
330+mouse-clicks or menu items--whatever suits your program.
331+
332+You should also get your employer (if you work as a programmer) or your
333+school, if any, to sign a "copyright disclaimer" for the program, if
334+necessary. Here is a sample; alter the names:
335+
336+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
337+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
338+
339+ <signature of Ty Coon>, 1 April 1989
340+ Ty Coon, President of Vice
341+
342+This General Public License does not permit incorporating your program into
343+proprietary programs. If your program is a subroutine library, you may
344+consider it more useful to permit linking proprietary applications with the
345+library. If this is what you want to do, use the GNU Library General
346+Public License instead of this License.
diff --git a/meta/recipes-bsp/hostap/files/hostap-fw-load.patch b/meta/recipes-bsp/hostap/files/hostap-fw-load.patch
new file mode 100644
index 0000000..050bdc1
--- /dev/null
+++ b/meta/recipes-bsp/hostap/files/hostap-fw-load.patch
@@ -0,0 +1,22 @@
1
2#
3# Patch managed by http://www.holgerschurig.de/patcher.html
4#
5
6Upstream-Status: Inappropriate [configuration]
7
8--- hostap-utils-0.2.4/hostap_fw_load~hostap-fw-load
9+++ hostap-utils-0.2.4/hostap_fw_load
10@@ -6,9 +6,9 @@
11 # Firmware images for the card
12 # TODO: could try to select correct firmware type automatically
13
14-PRI=/etc/pcmcia/PM010102.HEX
15-STA=/etc/pcmcia/RF010802.HEX
16-PRISM2_SREC=/usr/local/bin/prism2_srec
17+PRI=/etc/pcmcia/pm010102.hex
18+STA=/etc/pcmcia/rf010804.hex
19+PRISM2_SREC=/usr/sbin/prism2_srec
20
21 set -e
22
diff --git a/meta/recipes-bsp/hostap/files/hostap_cs.conf b/meta/recipes-bsp/hostap/files/hostap_cs.conf
new file mode 100644
index 0000000..8dda82a
--- /dev/null
+++ b/meta/recipes-bsp/hostap/files/hostap_cs.conf
@@ -0,0 +1,193 @@
1module "hostap_cs" opts "channel=3 iw_mode=2 essid=any ignore_cis_vcc=1"
2
3card "Actiontec 802CI2"
4 manfid 0x1668, 0x0101
5 bind "hostap_cs"
6
7card "AirWay 802.11 Adapter (PCMCIA)"
8 #version "AirWay", "802.11 Adapter (PCMCIA)"
9 manfid 0x0261, 0x0002
10 bind "hostap_cs"
11
12card "Asus SpaceLink WL110"
13 manfid 0x02aa,0x0002
14 bind "hostap_cs"
15
16## handhelds.org bug 964
17card "Belkin F5D6060 Ethernet"
18 #version "PCMCIA", "11M WLAN Card v2.5", "ISL37300P", "RevA"
19 manfid 0x0274, 0x1612
20 bind "hostap_cs"
21
22card "Compaq 11Mbps Wireless PC Card"
23 manfid 0x028a, 0x0002
24 bind "hostap_cs"
25
26card "Compaq WL100 11 Mbps Wireless Adapter"
27 manfid 0x0138, 0x0002
28 bind "hostap_cs"
29
30card "Compaq HNW-100 11 Mbps Wireless Adapter"
31 manfid 0x028a, 0x0002
32 bind "hostap_cs"
33
34card "D-Link DWL-650"
35 version "D", "Link DWL-650 11Mbps WLAN Card"
36 bind "hostap_cs"
37
38card "D-Link DRC-650"
39 version "D", "Link DRC-650 11Mbps WLAN Card"
40 bind "hostap_cs"
41
42card "D-Link DCF660"
43 manfid 0xd601, 0x0005
44 bind "hostap_cs"
45
46card "Farallon SkyLINE"
47 version "INTERSIL", "HFA384x/IEEE"
48 bind "hostap_cs"
49
50card "HyperLink Wireless PC Card 11Mbps"
51 version "HyperLink", "Wireless PC Card 11Mbps"
52 bind "hostap_cs"
53
54# card "Intersil PRISM2 11 Mbps Wireless Adapter"
55# manfid 0x0156, 0x0002
56# bind "hostap_cs"
57
58card "LA4111 Spectrum24 Wireless LAN PC Card"
59 version "Symbol Technologies"
60 bind "hostap_cs"
61
62card "Linksys WPC11 11Mbps 802.11b WLAN Card"
63 version "Instant Wireless ", " Network PC CARD", "Version 01.02"
64 bind "hostap_cs"
65
66card "Linksys WCF11 11Mbps 802.11b WLAN Card"
67 manfid 0x0274, 0x3301
68 bind "hostap_cs"
69
70## handhelds.org bug #790
71card "Linksys Wireless CompactFlash Card WCF12"
72 manfid 0x028a, 0x0673
73 bind "hostap_cs"
74
75card "Linksys WLAN CF Card"
76 manfid 0x0274, 0x3301
77 bind "hostap_cs"
78
79card "NETGEAR MA701 Wireless CF Card"
80 manfid 0xd601, 0x0002
81 bind "hostap_cs"
82
83card "Nortel Networks eMobility 802.11 Wireless Adapter"
84 manfid 0x01eb, 0x080a
85 bind "hostap_cs"
86
87card "PLANEX GeoWave GW-CF110"
88 version "PLANEX", "GeoWave/GW-CF110"
89 bind "hostap_cs"
90
91card "PROXIM LAN PC CARD HARMONY 80211B"
92 version "PROXIM", "LAN PC CARD HARMONY 80211B"
93 bind "hostap_cs"
94
95card "Proxim RangeLAN/DS"
96 version "PROXIM","RangeLAN-DS/LAN PC CARD"
97 manfid 0x0126, 0x8000
98 bind "hostap_cs"
99
100card "Safeway 802.11b Wireless Adapter"
101 manfid 0xd601, 0x0002
102 bind "hostap_cs"
103
104card "SAMSUNG 11Mbps WLAN Card"
105 version "SAMSUNG", "11Mbps WLAN Card"
106 bind "hostap_cs"
107
108# needs firmware upload via hostap_fw_load
109card "SanDisk ConnectPlus OEM (0MB)"
110 manfid 0xd601, 0x0010
111 bind "hostap_cs"
112
113# needs special activation (>=hostap 0.3.2 only) plus firmware upload
114card "SanDisk ConnectPlus w/ Memory"
115 version "SanDisk", "ConnectPlus"
116 manfid 0xd601, 0x0101
117 bind "hostap_cs" to 0
118# bind "ide-cs" to 1
119
120card "Senao/Origo 80211b WLAN Card"
121 manfid 0x000b,0x7100
122 bind "hostap_cs"
123
124card "Sitecom WL-007 WLAN CF Card"
125 manfid 0xd601, 0x0004
126 bind "hostap_cs"
127
128card "SMC2632 802.11 (prism2) Card"
129 version "SMC", "SMC2632W", "Version 01.02", ""
130 bind "hostap_cs"
131
132card "SpeedStream SS1021 Wireless Adapter"
133 #version "Siemens", "SpeedStream Wireless PCMCIA"
134 manfid 0x02ac, 0x0002
135 bind "hostap_cs"
136
137card "ZCOMAX AirRunner/XI-300"
138 #version "ZCOMAX", "AirRunner/XI-300"
139 manfid 0xd601, 0x0002
140 bind "hostap_cs"
141
142card "Zonet ZCF1100"
143 manfid 0x000b, 0x7100
144 bind "hostap_cs"
145
146card "Wireless LAN Adapter Version 01.02"
147 version "Wireless", "LAN Adapter", "Version 01.02"
148# manfid 0x0156, 0x0002
149 bind "hostap_cs"
150
151card "Ambicom WL1100C 11Mbs Card 802.11b"
152 version "AmbiCom", "WL1100C 802.11b CF-Card", "2.2"
153 manfid 0xd601,0x0002
154 bind "hostap_cs"
155
156card "Ambicom WL1100C 11Mbs Card 802.11b"
157 manfid 0xd601,0x0002
158 bind "hostap_cs"
159
160card "Sandisk Connect SDWCFB-000"
161 manfid 0xd601,0x0005
162 bind "hostap_cs"
163
164# Cards with Intersil firmware (Prism chipset)
165
166card "Linksys WPC11 11Mbps 802.11b WLAN Card"
167 version "The Linksys Group, Inc.", "Instant Wireless Network PC Card", "ISL37300P", "RevA"
168 bind "hostap_cs"
169
170card "Linksys CompactFlash Wireless Card"
171 version "Linksys", "Wireless CompactFlash Card"
172 bind "hostap_cs"
173
174card "ACTIONTEC PRISM Wireless LAN PC Card"
175 version "ACTIONTEC", "PRISM Wireless LAN PC Card"
176 bind "hostap_cs"
177
178card "Linksys WPC11 Version 3"
179 manfid 0x0274,0x1613
180 bind "hostap_cs"
181
182card "BENQ AWL100"
183 version "BENQ", "AWL100 PCMCIA ADAPTER"
184 bind "hostap_cs"
185
186card "Pretec WLAN"
187 version "Pretec", "CompactWLAN Card 802.11b", "2.5"
188 manfid 0x0156, 0x0002
189 bind "hostap_cs"
190
191card "TrendNet TEW PC16"
192 manfid 0x0274, 0x1601
193 bind "hostap_cs"
diff --git a/meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream b/meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream
new file mode 100644
index 0000000..5b7385a
--- /dev/null
+++ b/meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream
@@ -0,0 +1,191 @@
1device "hostap_cs"
2 class "network" module "hostap", "hostap_cs"
3
4card "Intersil PRISM2 Reference Design 11Mb/s WLAN Card"
5 version "INTERSIL", "HFA384x/IEEE"
6 bind "hostap_cs"
7
8card "Compaq WL100 11Mb/s WLAN Card"
9 manfid 0x0138, 0x0002
10 bind "hostap_cs"
11
12card "Compaq WL200"
13 version "Compaq", "WL200_11Mbps_Wireless_PCI_Card"
14 bind "hostap_cs"
15
16card "EMTAC A2424i 11Mbps WLAN Card"
17 manfid 0xc250, 0x0002
18# cis "cis/Emtac.dat"
19 bind "hostap_cs"
20
21card "Linksys WPC11 11Mbps WLAN Card"
22 version "Instant Wireless ", " Network PC CARD", "Version 01.02"
23 bind "hostap_cs"
24
25card "Linksys WPC11 Ver 2.5 11Mbps WLAN Card"
26 manfid 0x0274, 0x1612
27 bind "hostap_cs"
28
29card "Linksys WPC11 Ver 3 11Mbps WLAN Card"
30 manfid 0x0274, 0x1613
31 bind "hostap_cs"
32
33card "Linksys WCF12 Wireless CompactFlash Card"
34 version "Linksys", "Wireless CompactFlash Card"
35 bind "hostap_cs"
36
37card "D-Link DWL-650 11Mbps WLAN Card"
38 version "D", "Link DWL-650 11Mbps WLAN Card", "Version 01.02"
39 bind "hostap_cs"
40
41card "D-Link DRC-650 11Mbps WLAN Card"
42# version "D", "Link DRC-650 11Mbps WLAN Card", "Version 01.02"
43 manfid 0x028a, 0x0002
44 bind "hostap_cs"
45
46card "ZoomAir 4100 11Mb/s WLAN Card"
47 version "ZoomAir 11Mbps High", "Rate wireless Networking"
48 bind "hostap_cs"
49
50card "Addtron AWP-100 11Mbps WLAN Card"
51 version "Addtron", "AWP-100 Wireless PCMCIA", "Version 01.02"
52 bind "hostap_cs"
53
54card "Samsung SWL2000-N 11Mb/s WLAN Card"
55 manfid 0x0250, 0x0002
56 bind "hostap_cs"
57
58card "SMC 2632W 11Mbps WLAN Card"
59 version "SMC", "SMC2632W", "Version 01.02"
60 bind "hostap_cs"
61
62card "BroMax Freeport 11Mbps WLAN Card"
63 version "Intersil", "PRISM 2_5 PCMCIA ADAPTER", "ISL37300P", "Eval-RevA"
64 bind "hostap_cs"
65
66card "Z-Com XI300 11Mb/s WLAN Card"
67 manfid 0xd601, 0x0002
68 bind "hostap_cs"
69
70card "Zcomax XI-325H 200mW"
71# version " ", "IEEE 802.11 Wireless LAN/PC Card"
72 manfid 0xd601, 0x0005
73 bind "hostap_cs"
74
75card "3Com AirConnect PCI 777A"
76 manfid 0x0101, 0x0777
77 bind "hostap_cs"
78
79card "U.S. Robotics IEEE 802.11b PC-CARD"
80 version "U.S. Robotics", "IEEE 802.11b PC-CARD", "Version 01.02"
81# manfid 0x0156, 0x0002
82 bind "hostap_cs"
83
84card "Longshine LCR-8531 11Mbps WLAN PCMCIA CARD"
85 version "OEM", "PRISM2 IEEE 802.11 PC-Card", "Version 01.02"
86# manfid 0x0156, 0x0002
87 bind "hostap_cs"
88
89card "Philips 802.11b WLAN PCMCIA"
90 manfid 0x000b, 0x7300
91 bind "hostap_cs"
92
93card "Proxim RangeLAN"
94# version "PROXIM", "RangeLAN-DS/LAN PC CARD"
95 manfid 0x0126, 0x8000
96 bind "hostap_cs"
97
98card "Buffalo WLI-CF-S11G"
99 version "BUFFALO", "WLI-CF-S11G"
100# manfid 0x026f, 0x030b
101 bind "hostap_cs"
102
103card "Level-One WPC-0100"
104 version "Digital Data Communications", "WPC-0100", "Version 00.00"
105 manfid 0x0156, 0x0002
106 bind "hostap_cs"
107
108card "Belkin 802.11b WLAN PCMCIA"
109 version "Belkin", "11Mbps Wireless Notebook Network Adapter", "Version 01.02"
110 manfid 0x0156, 0x0002
111 bind "hostap_cs"
112
113card "Senao SL-2011CD/SL-2011CDPLUS"
114 version "INTERSIL", "HFA384x/IEEE", "Version 01.02"
115 manfid 0x0156, 0x0002
116 bind "hostap_cs"
117
118card "Fulbond Airbond XI-300B"
119 version " ", "IEEE 802.11 Wireless LAN/PC Card"
120 manfid 0xd601, 0x0002
121 bind "hostap_cs"
122
123card "Netgear MA401"
124 version "NETGEAR MA401 Wireless PC", "Card", "Version 01.00"
125# manfid 0x0156, 0x0002
126 bind "hostap_cs"
127
128card "D-Link DWL-650 Rev. P1"
129 version "D-Link", "DWL-650 Wireless PC Card RevP", "ISL37101P-10", "A3"
130# manfid 0x000b, 0x7110
131 bind "hostap_cs"
132
133card "SonicWALL Long Range Wireless Card"
134 version "SonicWALL", "Long Range Wireless Card", "ISL37100P", "1.0"
135 manfid 0x000b, 0x7100
136 bind "hostap_cs"
137
138card "Senao NL-2011CD PLUS Ext2 Mercury"
139 version "WLAN", "11Mbps_PC-Card_3.0", "ISL37100P", "Eval-RevA"
140 manfid 0x000b, 0x7100
141 bind "hostap_cs"
142
143card "Airvast WL100"
144 version "AIRVAST", "IEEE 802.11b Wireless PCMCIA Card", "HFA3863"
145 manfid 0x50c2, 0x0001
146 bind "hostap_cs"
147
148card "Microsoft Wireless Notebook Adapter MN-520 1.0.3"
149 version "Microsoft", "Wireless Notebook Adapter MN-520", "", "1.0.3"
150 manfid 0x02d2, 0x0001
151 bind "hostap_cs"
152
153card "NETGEAR MA401RA"
154 version "NETGEAR MA401RA Wireless PC", "Card", "ISL37300P", "Eval-RevA"
155 manfid 0x000b, 0x7300
156 bind "hostap_cs"
157
158card "Allied Telesyn AT-WCL452"
159 version "Allied Telesyn", "AT-WCL452 Wireless PCMCIA Radio", "Ver. 1.00"
160 manfid 0xc00f, 0x0000
161 bind "hostap_cs"
162
163card "corega WL PCCL-11"
164 version "corega", "WL PCCL-11", "ISL37300P", "RevA"
165 manfid 0xc00f, 0x0000
166 bind "hostap_cs"
167
168card "SanDisk ConnectPlus"
169 version "SanDisk", "ConnectPlus"
170 manfid 0xd601, 0x0101
171 bind "hostap_cs" to 0
172 bind "ide-cs" to 1
173
174card "ASUS WL-100 8011b WLAN PC Card"
175 version "ASUS", "802_11b_PC_CARD_25", "Version 01.00"
176 manfid 0x02aa, 0x0002
177 bind "hostap_cs"
178
179card "ZyXel Zyair B-101 802.11b WLAN card"
180 version " ", "IEEE 802.11 Wireless LAN/PC Card"
181 manfid 0xd601, 0x0010
182 bind "hostap_cs"
183
184card "WLAN PRISM PCMCIA CARD 37300P RevB6"
185 version "WLAN", "PRISM PCMCIA CARD", "37300P", "Revision B6"
186 manfid 0x50c2, 0x7300
187 bind "hostap_cs"
188
189
190# Optional configuration parameters for hostap_cs.o
191# module "hostap_cs" opts "channel=3 iw_mode=3 essid=test ignore_cis_vcc=0"
diff --git a/meta/recipes-bsp/hostap/files/hostap_cs.modalias b/meta/recipes-bsp/hostap/files/hostap_cs.modalias
new file mode 100644
index 0000000..2848351
--- /dev/null
+++ b/meta/recipes-bsp/hostap/files/hostap_cs.modalias
@@ -0,0 +1,28 @@
1# product info: "Pretec", "CompactWLAN Card 802.11b", "2.5"
2alias pcmcia:m0156c0002f06fn00pfn00pa1CADD3E5pbE697636Cpc7A5BFCF1pd00000000 hostap_cs
3
4# manufacturer ID which exist in orinoco_cs AND in hostap_cs
5alias pcmcia:m000Bc7100f06fn00pfn00pa*pb*pc*pd* hostap_cs
6alias pcmcia:m000Bc7300f06fn00pfn00pa*pb*pc*pd* hostap_cs
7alias pcmcia:m0126c8000f06fn00pfn00pa*pb*pc*pd* hostap_cs
8alias pcmcia:m0138c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs
9alias pcmcia:m0250c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs
10alias pcmcia:m0274c1612f06fn00pfn00pa*pb*pc*pd* hostap_cs
11alias pcmcia:m0274c1613f06fn00pfn00pa*pb*pc*pd* hostap_cs
12alias pcmcia:m028Ac0002f06fn00pfn00pa*pb*pc*pd* hostap_cs
13alias pcmcia:m02AAc0002f06fn00pfn00pa*pb*pc*pd* hostap_cs
14alias pcmcia:m50C2c7300f06fn00pfn00pa*pb*pc*pd* hostap_cs
15alias pcmcia:mD601c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs
16alias pcmcia:mD601c0005f06fn00pfn00pa*pb*pc*pd* hostap_cs
17
18# product info: "Linksys", "Wireless CompactFlash Card", "", ""
19alias pcmcia:m028Ac0673f06fn00pfn00pa0733CC81pb0C52F395pc00000000pd00000000 hostap_cs
20
21# product info:"PLANEX COMMUNICATION INC","PLANEX GW-CF11X Wireless CF Card", "", ""
22alias pcmcia:mD601c0010f06fn00pfn00pa4703CF68pbFAD7318Dpc00000000pd00000000 hostap_cs
23
24# 0x0156, 0x0002 and "Version 01.02" only appear for Prism based cards.
25alias pcmcia:m0156c0002f06fn00pfn00pa*pb*pc4B74BAA0pd00000000 hostap_cs
26
27# "BUFFALO", "WLI-CF-S11G", "", ""
28alias pcmcia:m026Fc030Bf06fn00pfn00pa2DECECE3pb82067C18pc00000000pd00000000 hostap_cs
diff --git a/meta/recipes-bsp/hostap/hostap-conf_1.0.bb b/meta/recipes-bsp/hostap/hostap-conf_1.0.bb
new file mode 100644
index 0000000..e2c7cc0
--- /dev/null
+++ b/meta/recipes-bsp/hostap/hostap-conf_1.0.bb
@@ -0,0 +1,21 @@
1SUMMARY = "Configuration files for HostAP (wifi) driver"
2DESCRIPTION = "PCMCIA-cs configuration files for wireless LAN cards based on Intersil's Prism2/2.5/3 chipset."
3SECTION = "kernel/modules"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
6PR = "r15"
7
8SRC_URI = "file://hostap_cs.modalias \
9 file://COPYING.patch"
10
11inherit allarch
12
13do_compile() {
14}
15
16do_install() {
17 install -d ${D}${sysconfdir}/modprobe.d
18
19 install -m 0644 ${WORKDIR}/hostap_cs.modalias ${D}${sysconfdir}/modprobe.d/hostap_cs.conf
20}
21
diff --git a/meta/recipes-bsp/hostap/hostap-utils.inc b/meta/recipes-bsp/hostap/hostap-utils.inc
new file mode 100644
index 0000000..89d977a
--- /dev/null
+++ b/meta/recipes-bsp/hostap/hostap-utils.inc
@@ -0,0 +1,26 @@
1SUMMARY = "User mode helpers for the hostap driver"
2DESCRIPTION = "The hostap driver supports Host AP mode, it allows for IEEE 802.11 \
3management functions on the host computer and allows the system to act as an access point."
4HOMEPAGE = "http://hostap.epitest.fi"
5BUGTRACKER = "http://hostap.epitest.fi/bugz/"
6LICENSE = "GPLv2"
7LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
8 file://util.c;beginline=1;endline=9;md5=d3b9280851302e5ba34e5fb717489b6d"
9SECTION = "kernel/userland"
10PR = "r4"
11
12SRC_URI = "http://hostap.epitest.fi/releases/hostap-utils-${PV}.tar.gz \
13 file://hostap-fw-load.patch"
14S = "${WORKDIR}/hostap-utils-${PV}"
15
16BINARIES = "hostap_crypt_conf hostap_diag hostap_fw_load hostap_io_debug \
17 hostap_rid prism2_param prism2_srec split_combined_hex"
18
19do_install() {
20 install -d ${D}${sbindir}/
21 for f in ${BINARIES}
22 do
23 install -m 0755 $f ${D}${sbindir}/
24 done
25}
26
diff --git a/meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb b/meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb
new file mode 100644
index 0000000..7b224a8
--- /dev/null
+++ b/meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb
@@ -0,0 +1,4 @@
1require hostap-utils.inc
2
3SRC_URI[md5sum] = "afe041581b8f01666e353bec20917c85"
4SRC_URI[sha256sum] = "c6f598d8e356c1620fa009eca0a700bf1105e16817eefd77d891994261009355"
diff --git a/meta/recipes-bsp/keymaps/files/GPLv2.patch b/meta/recipes-bsp/keymaps/files/GPLv2.patch
new file mode 100644
index 0000000..1ee8181
--- /dev/null
+++ b/meta/recipes-bsp/keymaps/files/GPLv2.patch
@@ -0,0 +1,347 @@
1Upstream-Status: Inappropriate [licensing]
2
3diff --git a/COPYING b/COPYING
4new file mode 100644
5index 0000000..d511905
6--- /dev/null
7+++ b/COPYING
8@@ -0,0 +1,339 @@
9+ GNU GENERAL PUBLIC LICENSE
10+ Version 2, June 1991
11+
12+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
13+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
14+ Everyone is permitted to copy and distribute verbatim copies
15+ of this license document, but changing it is not allowed.
16+
17+ Preamble
18+
19+ The licenses for most software are designed to take away your
20+freedom to share and change it. By contrast, the GNU General Public
21+License is intended to guarantee your freedom to share and change free
22+software--to make sure the software is free for all its users. This
23+General Public License applies to most of the Free Software
24+Foundation's software and to any other program whose authors commit to
25+using it. (Some other Free Software Foundation software is covered by
26+the GNU Lesser General Public License instead.) You can apply it to
27+your programs, too.
28+
29+ When we speak of free software, we are referring to freedom, not
30+price. Our General Public Licenses are designed to make sure that you
31+have the freedom to distribute copies of free software (and charge for
32+this service if you wish), that you receive source code or can get it
33+if you want it, that you can change the software or use pieces of it
34+in new free programs; and that you know you can do these things.
35+
36+ To protect your rights, we need to make restrictions that forbid
37+anyone to deny you these rights or to ask you to surrender the rights.
38+These restrictions translate to certain responsibilities for you if you
39+distribute copies of the software, or if you modify it.
40+
41+ For example, if you distribute copies of such a program, whether
42+gratis or for a fee, you must give the recipients all the rights that
43+you have. You must make sure that they, too, receive or can get the
44+source code. And you must show them these terms so they know their
45+rights.
46+
47+ We protect your rights with two steps: (1) copyright the software, and
48+(2) offer you this license which gives you legal permission to copy,
49+distribute and/or modify the software.
50+
51+ Also, for each author's protection and ours, we want to make certain
52+that everyone understands that there is no warranty for this free
53+software. If the software is modified by someone else and passed on, we
54+want its recipients to know that what they have is not the original, so
55+that any problems introduced by others will not reflect on the original
56+authors' reputations.
57+
58+ Finally, any free program is threatened constantly by software
59+patents. We wish to avoid the danger that redistributors of a free
60+program will individually obtain patent licenses, in effect making the
61+program proprietary. To prevent this, we have made it clear that any
62+patent must be licensed for everyone's free use or not licensed at all.
63+
64+ The precise terms and conditions for copying, distribution and
65+modification follow.
66+
67+ GNU GENERAL PUBLIC LICENSE
68+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
69+
70+ 0. This License applies to any program or other work which contains
71+a notice placed by the copyright holder saying it may be distributed
72+under the terms of this General Public License. The "Program", below,
73+refers to any such program or work, and a "work based on the Program"
74+means either the Program or any derivative work under copyright law:
75+that is to say, a work containing the Program or a portion of it,
76+either verbatim or with modifications and/or translated into another
77+language. (Hereinafter, translation is included without limitation in
78+the term "modification".) Each licensee is addressed as "you".
79+
80+Activities other than copying, distribution and modification are not
81+covered by this License; they are outside its scope. The act of
82+running the Program is not restricted, and the output from the Program
83+is covered only if its contents constitute a work based on the
84+Program (independent of having been made by running the Program).
85+Whether that is true depends on what the Program does.
86+
87+ 1. You may copy and distribute verbatim copies of the Program's
88+source code as you receive it, in any medium, provided that you
89+conspicuously and appropriately publish on each copy an appropriate
90+copyright notice and disclaimer of warranty; keep intact all the
91+notices that refer to this License and to the absence of any warranty;
92+and give any other recipients of the Program a copy of this License
93+along with the Program.
94+
95+You may charge a fee for the physical act of transferring a copy, and
96+you may at your option offer warranty protection in exchange for a fee.
97+
98+ 2. You may modify your copy or copies of the Program or any portion
99+of it, thus forming a work based on the Program, and copy and
100+distribute such modifications or work under the terms of Section 1
101+above, provided that you also meet all of these conditions:
102+
103+ a) You must cause the modified files to carry prominent notices
104+ stating that you changed the files and the date of any change.
105+
106+ b) You must cause any work that you distribute or publish, that in
107+ whole or in part contains or is derived from the Program or any
108+ part thereof, to be licensed as a whole at no charge to all third
109+ parties under the terms of this License.
110+
111+ c) If the modified program normally reads commands interactively
112+ when run, you must cause it, when started running for such
113+ interactive use in the most ordinary way, to print or display an
114+ announcement including an appropriate copyright notice and a
115+ notice that there is no warranty (or else, saying that you provide
116+ a warranty) and that users may redistribute the program under
117+ these conditions, and telling the user how to view a copy of this
118+ License. (Exception: if the Program itself is interactive but
119+ does not normally print such an announcement, your work based on
120+ the Program is not required to print an announcement.)
121+
122+These requirements apply to the modified work as a whole. If
123+identifiable sections of that work are not derived from the Program,
124+and can be reasonably considered independent and separate works in
125+themselves, then this License, and its terms, do not apply to those
126+sections when you distribute them as separate works. But when you
127+distribute the same sections as part of a whole which is a work based
128+on the Program, the distribution of the whole must be on the terms of
129+this License, whose permissions for other licensees extend to the
130+entire whole, and thus to each and every part regardless of who wrote it.
131+
132+Thus, it is not the intent of this section to claim rights or contest
133+your rights to work written entirely by you; rather, the intent is to
134+exercise the right to control the distribution of derivative or
135+collective works based on the Program.
136+
137+In addition, mere aggregation of another work not based on the Program
138+with the Program (or with a work based on the Program) on a volume of
139+a storage or distribution medium does not bring the other work under
140+the scope of this License.
141+
142+ 3. You may copy and distribute the Program (or a work based on it,
143+under Section 2) in object code or executable form under the terms of
144+Sections 1 and 2 above provided that you also do one of the following:
145+
146+ a) Accompany it with the complete corresponding machine-readable
147+ source code, which must be distributed under the terms of Sections
148+ 1 and 2 above on a medium customarily used for software interchange; or,
149+
150+ b) Accompany it with a written offer, valid for at least three
151+ years, to give any third party, for a charge no more than your
152+ cost of physically performing source distribution, a complete
153+ machine-readable copy of the corresponding source code, to be
154+ distributed under the terms of Sections 1 and 2 above on a medium
155+ customarily used for software interchange; or,
156+
157+ c) Accompany it with the information you received as to the offer
158+ to distribute corresponding source code. (This alternative is
159+ allowed only for noncommercial distribution and only if you
160+ received the program in object code or executable form with such
161+ an offer, in accord with Subsection b above.)
162+
163+The source code for a work means the preferred form of the work for
164+making modifications to it. For an executable work, complete source
165+code means all the source code for all modules it contains, plus any
166+associated interface definition files, plus the scripts used to
167+control compilation and installation of the executable. However, as a
168+special exception, the source code distributed need not include
169+anything that is normally distributed (in either source or binary
170+form) with the major components (compiler, kernel, and so on) of the
171+operating system on which the executable runs, unless that component
172+itself accompanies the executable.
173+
174+If distribution of executable or object code is made by offering
175+access to copy from a designated place, then offering equivalent
176+access to copy the source code from the same place counts as
177+distribution of the source code, even though third parties are not
178+compelled to copy the source along with the object code.
179+
180+ 4. You may not copy, modify, sublicense, or distribute the Program
181+except as expressly provided under this License. Any attempt
182+otherwise to copy, modify, sublicense or distribute the Program is
183+void, and will automatically terminate your rights under this License.
184+However, parties who have received copies, or rights, from you under
185+this License will not have their licenses terminated so long as such
186+parties remain in full compliance.
187+
188+ 5. You are not required to accept this License, since you have not
189+signed it. However, nothing else grants you permission to modify or
190+distribute the Program or its derivative works. These actions are
191+prohibited by law if you do not accept this License. Therefore, by
192+modifying or distributing the Program (or any work based on the
193+Program), you indicate your acceptance of this License to do so, and
194+all its terms and conditions for copying, distributing or modifying
195+the Program or works based on it.
196+
197+ 6. Each time you redistribute the Program (or any work based on the
198+Program), the recipient automatically receives a license from the
199+original licensor to copy, distribute or modify the Program subject to
200+these terms and conditions. You may not impose any further
201+restrictions on the recipients' exercise of the rights granted herein.
202+You are not responsible for enforcing compliance by third parties to
203+this License.
204+
205+ 7. If, as a consequence of a court judgment or allegation of patent
206+infringement or for any other reason (not limited to patent issues),
207+conditions are imposed on you (whether by court order, agreement or
208+otherwise) that contradict the conditions of this License, they do not
209+excuse you from the conditions of this License. If you cannot
210+distribute so as to satisfy simultaneously your obligations under this
211+License and any other pertinent obligations, then as a consequence you
212+may not distribute the Program at all. For example, if a patent
213+license would not permit royalty-free redistribution of the Program by
214+all those who receive copies directly or indirectly through you, then
215+the only way you could satisfy both it and this License would be to
216+refrain entirely from distribution of the Program.
217+
218+If any portion of this section is held invalid or unenforceable under
219+any particular circumstance, the balance of the section is intended to
220+apply and the section as a whole is intended to apply in other
221+circumstances.
222+
223+It is not the purpose of this section to induce you to infringe any
224+patents or other property right claims or to contest validity of any
225+such claims; this section has the sole purpose of protecting the
226+integrity of the free software distribution system, which is
227+implemented by public license practices. Many people have made
228+generous contributions to the wide range of software distributed
229+through that system in reliance on consistent application of that
230+system; it is up to the author/donor to decide if he or she is willing
231+to distribute software through any other system and a licensee cannot
232+impose that choice.
233+
234+This section is intended to make thoroughly clear what is believed to
235+be a consequence of the rest of this License.
236+
237+ 8. If the distribution and/or use of the Program is restricted in
238+certain countries either by patents or by copyrighted interfaces, the
239+original copyright holder who places the Program under this License
240+may add an explicit geographical distribution limitation excluding
241+those countries, so that distribution is permitted only in or among
242+countries not thus excluded. In such case, this License incorporates
243+the limitation as if written in the body of this License.
244+
245+ 9. The Free Software Foundation may publish revised and/or new versions
246+of the General Public License from time to time. Such new versions will
247+be similar in spirit to the present version, but may differ in detail to
248+address new problems or concerns.
249+
250+Each version is given a distinguishing version number. If the Program
251+specifies a version number of this License which applies to it and "any
252+later version", you have the option of following the terms and conditions
253+either of that version or of any later version published by the Free
254+Software Foundation. If the Program does not specify a version number of
255+this License, you may choose any version ever published by the Free Software
256+Foundation.
257+
258+ 10. If you wish to incorporate parts of the Program into other free
259+programs whose distribution conditions are different, write to the author
260+to ask for permission. For software which is copyrighted by the Free
261+Software Foundation, write to the Free Software Foundation; we sometimes
262+make exceptions for this. Our decision will be guided by the two goals
263+of preserving the free status of all derivatives of our free software and
264+of promoting the sharing and reuse of software generally.
265+
266+ NO WARRANTY
267+
268+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
269+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
270+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
271+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
272+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
273+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
274+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
275+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
276+REPAIR OR CORRECTION.
277+
278+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
279+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
280+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
281+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
282+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
283+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
284+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
285+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
286+POSSIBILITY OF SUCH DAMAGES.
287+
288+ END OF TERMS AND CONDITIONS
289+
290+ How to Apply These Terms to Your New Programs
291+
292+ If you develop a new program, and you want it to be of the greatest
293+possible use to the public, the best way to achieve this is to make it
294+free software which everyone can redistribute and change under these terms.
295+
296+ To do so, attach the following notices to the program. It is safest
297+to attach them to the start of each source file to most effectively
298+convey the exclusion of warranty; and each file should have at least
299+the "copyright" line and a pointer to where the full notice is found.
300+
301+ <one line to give the program's name and a brief idea of what it does.>
302+ Copyright (C) <year> <name of author>
303+
304+ This program is free software; you can redistribute it and/or modify
305+ it under the terms of the GNU General Public License as published by
306+ the Free Software Foundation; either version 2 of the License, or
307+ (at your option) any later version.
308+
309+ This program is distributed in the hope that it will be useful,
310+ but WITHOUT ANY WARRANTY; without even the implied warranty of
311+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
312+ GNU General Public License for more details.
313+
314+ You should have received a copy of the GNU General Public License along
315+ with this program; if not, write to the Free Software Foundation, Inc.,
316+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
317+
318+Also add information on how to contact you by electronic and paper mail.
319+
320+If the program is interactive, make it output a short notice like this
321+when it starts in an interactive mode:
322+
323+ Gnomovision version 69, Copyright (C) year name of author
324+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
325+ This is free software, and you are welcome to redistribute it
326+ under certain conditions; type `show c' for details.
327+
328+The hypothetical commands `show w' and `show c' should show the appropriate
329+parts of the General Public License. Of course, the commands you use may
330+be called something other than `show w' and `show c'; they could even be
331+mouse-clicks or menu items--whatever suits your program.
332+
333+You should also get your employer (if you work as a programmer) or your
334+school, if any, to sign a "copyright disclaimer" for the program, if
335+necessary. Here is a sample; alter the names:
336+
337+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
338+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
339+
340+ <signature of Ty Coon>, 1 April 1989
341+ Ty Coon, President of Vice
342+
343+This General Public License does not permit incorporating your program into
344+proprietary programs. If your program is a subroutine library, you may
345+consider it more useful to permit linking proprietary applications with the
346+library. If this is what you want to do, use the GNU Lesser General
347+Public License instead of this License.
diff --git a/meta/recipes-bsp/keymaps/files/keymap.sh b/meta/recipes-bsp/keymaps/files/keymap.sh
new file mode 100755
index 0000000..6ebc634
--- /dev/null
+++ b/meta/recipes-bsp/keymaps/files/keymap.sh
@@ -0,0 +1,16 @@
1#!/bin/sh
2#
3# load keymap, if existing
4
5KERNEL_MAJMIN=`uname -r | cut -d '.' -f 1,2`
6if [ -e /etc/keymap-$KERNEL_MAJMIN.map ]; then
7 loadkeys /etc/keymap-$KERNEL_MAJMIN.map
8fi
9
10if ( ls "/etc" | grep -q "keymap-extension-${KERNEL_MAJMIN}" )
11then
12 for extension in `ls -1 /etc/keymap-extension-$KERNEL_MAJMIN*`
13 do
14 loadkeys "$extension"
15 done
16fi
diff --git a/meta/recipes-bsp/keymaps/keymaps_1.0.bb b/meta/recipes-bsp/keymaps/keymaps_1.0.bb
new file mode 100644
index 0000000..123db3e
--- /dev/null
+++ b/meta/recipes-bsp/keymaps/keymaps_1.0.bb
@@ -0,0 +1,28 @@
1SUMMARY = "Keyboard maps"
2DESCRIPTION = "Keymaps and initscript to set the keymap on bootup."
3SECTION = "base"
4
5# Distro can override initscripts provider
6VIRTUAL-RUNTIME_initscripts ?= "initscripts"
7
8RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_initscripts} kbd"
9
10LICENSE = "GPLv2"
11LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
12PACKAGE_ARCH = "${MACHINE_ARCH}"
13PR = "r31"
14
15INHIBIT_DEFAULT_DEPS = "1"
16
17inherit update-rc.d
18
19SRC_URI = "file://keymap.sh \
20 file://GPLv2.patch"
21
22INITSCRIPT_NAME = "keymap.sh"
23INITSCRIPT_PARAMS = "start 01 S ."
24
25do_install () {
26 install -d ${D}${sysconfdir}/init.d/
27 install -m 0755 ${WORKDIR}/keymap.sh ${D}${sysconfdir}/init.d/
28}
diff --git a/meta/recipes-bsp/libacpi/files/ldflags.patch b/meta/recipes-bsp/libacpi/files/ldflags.patch
new file mode 100644
index 0000000..a7424c3
--- /dev/null
+++ b/meta/recipes-bsp/libacpi/files/ldflags.patch
@@ -0,0 +1,41 @@
1libacpi: Remove QA warning: No GNU_HASH in the elf binary
2
3Upstream-Status: Inappropriate [other]
4 Useful within bitbake environment only.
5
6Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
7
8---
9 Makefile | 3 ++-
10 config.mk | 1 +
11 2 files changed, 3 insertions(+), 1 deletion(-)
12
13--- libacpi-0.2.orig/Makefile
14+++ libacpi-0.2/Makefile
15@@ -19,6 +19,7 @@ options:
16 @echo "CFLAGS = ${CFLAGS}"
17 @echo "CC = ${CC}"
18 @echo "SOFLAGS = ${SOFLAGS}"
19+ @echo "LDFLAGS = ${LDFLAGS}"
20 @echo "LD = ${LD}"
21
22 .c.o:
23@@ -34,7 +35,7 @@ libacpi.a: ${OBJ}
24
25 libacpi.so: ${OBJ}
26 @echo LD $@
27- @${CC} ${SOFLAGS} -o $@.${SOVERSION} ${OBJ}
28+ @${CC} ${SOFLAGS} ${LDFLAGS} -o $@.${SOVERSION} ${OBJ}
29
30 test-libacpi: ${OBJ_test}
31 @echo LD $@
32--- libacpi-0.2.orig/config.mk
33+++ libacpi-0.2/config.mk
34@@ -10,6 +10,7 @@ MANPREFIX = ${PREFIX}/share/man
35 SOFLAGS = -shared -Wl,-soname,${SONAME}
36 CFLAGS += -fPIC -g --pedantic -Wall -Wextra
37 ARFLAGS = cr
38+LDFLAGS =
39
40 # Compiler and linker
41 CC = cc
diff --git a/meta/recipes-bsp/libacpi/files/libacpi_fix_for_x32.patch b/meta/recipes-bsp/libacpi/files/libacpi_fix_for_x32.patch
new file mode 100644
index 0000000..2fed344
--- /dev/null
+++ b/meta/recipes-bsp/libacpi/files/libacpi_fix_for_x32.patch
@@ -0,0 +1,47 @@
1Upstream-Status: Pending
2
3Fix libacpi for x32
4
5 libacpi doesn't use base_libdir for install. This patch adds
6 base_libdir support so that x32 libraries are installed properly.
7
8Patch Received from: H.J. Lu <hjl.tools@gmail.com>
9
10Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/05
11
12Index: libacpi-0.2/Makefile
13===================================================================
14--- libacpi-0.2.orig/Makefile
15+++ libacpi-0.2/Makefile
16@@ -8,6 +8,10 @@ SRC_test = test-libacpi.c libacpi.c list
17 OBJ = ${SRC:.c=.o}
18 OBJ_test = ${SRC_test:.c=.o}
19
20+ifndef base_libdir
21+base_libdir=/lib
22+endif
23+
24 all: options libacpi.a libacpi.so test-libacpi
25
26 options:
27@@ -42,13 +46,13 @@ install: all
28 @mkdir -p ${DESTDIR}${PREFIX}/include
29 @cp -f libacpi.h ${DESTDIR}${PREFIX}/include
30 @chmod 644 ${DESTDIR}${PREFIX}/include/libacpi.h
31- @echo installing library to ${DESTDIR}${PREFIX}/lib
32- @mkdir -p ${DESTDIR}${PREFIX}/lib
33- @cp -f libacpi.a ${DESTDIR}${PREFIX}/lib
34- @chmod 644 ${DESTDIR}${PREFIX}/lib/libacpi.a
35- @cp -f ${SONAME} ${DESTDIR}${PREFIX}/lib/
36- @chmod 644 ${DESTDIR}${PREFIX}/lib/${SONAME}
37- @ln -s ${SONAME} ${DESTDIR}${PREFIX}/lib/libacpi.so
38+ @echo installing library to ${DESTDIR}${PREFIX}${base_libdir}
39+ @mkdir -p ${DESTDIR}${PREFIX}${base_libdir}
40+ @cp -f libacpi.a ${DESTDIR}${PREFIX}${base_libdir}
41+ @chmod 644 ${DESTDIR}${PREFIX}${base_libdir}/libacpi.a
42+ @cp -f ${SONAME} ${DESTDIR}${PREFIX}${base_libdir}/
43+ @chmod 644 ${DESTDIR}${PREFIX}${base_libdir}/${SONAME}
44+ @ln -s ${SONAME} ${DESTDIR}${PREFIX}${base_libdir}/libacpi.so
45 @echo installing test-libacpi to ${DESTDIR}${PREFIX}/bin
46 @mkdir -p ${DESTDIR}${PREFIX}/bin
47 @cp -f test-libacpi ${DESTDIR}${PREFIX}/bin
diff --git a/meta/recipes-bsp/libacpi/files/makefile-fix.patch b/meta/recipes-bsp/libacpi/files/makefile-fix.patch
new file mode 100644
index 0000000..c34ef34
--- /dev/null
+++ b/meta/recipes-bsp/libacpi/files/makefile-fix.patch
@@ -0,0 +1,47 @@
1Upstream-Status: Pending
2
3---
4 Makefile | 6 +++---
5 config.mk | 3 ++-
6 2 files changed, 5 insertions(+), 4 deletions(-)
7
8Index: libacpi-0.2/Makefile
9===================================================================
10--- libacpi-0.2.orig/Makefile 2007-07-29 14:09:34.000000000 +0200
11+++ libacpi-0.2/Makefile 2008-09-26 10:34:53.000000000 +0200
12@@ -25,16 +25,16 @@ ${OBJ}: config.mk libacpi.h
13
14 libacpi.a: ${OBJ}
15 @echo AR $@
16- @${AR} $@ ${OBJ}
17+ ${AR} ${ARFLAGS} $@ ${OBJ}
18 @${RANLIB} $@
19
20 libacpi.so: ${OBJ}
21 @echo LD $@
22- @${LD} ${SOFLAGS} -o $@.${SOVERSION} ${OBJ}
23+ @${CC} ${SOFLAGS} -o $@.${SOVERSION} ${OBJ}
24
25 test-libacpi: ${OBJ_test}
26 @echo LD $@
27- @${LD} -o $@ ${OBJ_test} ${LDFLAGS}
28+ @${CC} -o $@ ${OBJ_test} ${LDFLAGS}
29 @strip $@
30
31 install: all
32Index: libacpi-0.2/config.mk
33===================================================================
34--- libacpi-0.2.orig/config.mk 2007-07-29 14:09:34.000000000 +0200
35+++ libacpi-0.2/config.mk 2008-09-26 10:34:33.000000000 +0200
36@@ -9,9 +9,10 @@ MANPREFIX = ${PREFIX}/share/man
37 # flags
38 SOFLAGS = -shared -Wl,-soname,${SONAME}
39 CFLAGS += -fPIC -g --pedantic -Wall -Wextra
40+ARFLAGS = cr
41
42 # Compiler and linker
43 CC = cc
44 LD = ${CC}
45-AR = ar cr
46+AR = ar
47 RANLIB = ranlib