From 29d6678fd546377459ef75cf54abeef5b969b5cf Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 27 Aug 2010 15:14:24 +0100 Subject: Major layout change to the packages directory Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie --- .../bluez/bluez-dtl1-workaround/02dtl1_cs.sh | 57 +++++++++++++++++ .../bluez/bluez-dtl1-workaround_1.0.bb | 17 +++++ .../bluez/bluez-hcidump_1.42.bb | 13 ++++ .../bluez/bluez4-4.66/bluetooth.conf | 16 +++++ .../fix-dfutool-usb-declaration-mismatch.patch | 19 ++++++ .../bluez/bluez4-4.66/hid2hci_usb_init.patch | 33 ++++++++++ .../bluez/bluez4-4.66/sbc-thumb.patch | 13 ++++ meta/recipes-connectivity/bluez/bluez4_4.66.bb | 72 ++++++++++++++++++++++ 8 files changed, 240 insertions(+) create mode 100644 meta/recipes-connectivity/bluez/bluez-dtl1-workaround/02dtl1_cs.sh create mode 100644 meta/recipes-connectivity/bluez/bluez-dtl1-workaround_1.0.bb create mode 100644 meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb create mode 100644 meta/recipes-connectivity/bluez/bluez4-4.66/bluetooth.conf create mode 100644 meta/recipes-connectivity/bluez/bluez4-4.66/fix-dfutool-usb-declaration-mismatch.patch create mode 100644 meta/recipes-connectivity/bluez/bluez4-4.66/hid2hci_usb_init.patch create mode 100644 meta/recipes-connectivity/bluez/bluez4-4.66/sbc-thumb.patch create mode 100644 meta/recipes-connectivity/bluez/bluez4_4.66.bb (limited to 'meta/recipes-connectivity/bluez') diff --git a/meta/recipes-connectivity/bluez/bluez-dtl1-workaround/02dtl1_cs.sh b/meta/recipes-connectivity/bluez/bluez-dtl1-workaround/02dtl1_cs.sh new file mode 100644 index 0000000000..fefc72e07a --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez-dtl1-workaround/02dtl1_cs.sh @@ -0,0 +1,57 @@ +#!/bin/sh + +case "$1" in + suspend) + if [ "`/sbin/hciconfig`" != "" ]; then + #If hciconfig outputs anything then there's probably a Bluetooth + # CF card in the slot so shut it down. + hcitool dc `hcitool con | grep ACL | sed 's/^.*\([0-9A-F]\{2\}\(:[0-9A-F]\{2\}\)\{5\}\).*$/\1/'` + hciconfig hci0 down + killall hciattach > /dev/null 2>&1 + fi + ;; + + resume) + #check for kernel version + if [ "`uname -r | grep 2.4.`" != "" ]; then + k="o" + elif [ "`uname -r | grep 2.6.`" != "" ]; then + k="ko" + else + exit 0 + fi + + if test -e /sbin/cardctl; then + CARDCTL=/sbin/cardctl + elif test -e /sbin/pccardctl; then + CARDCTL=/sbin/pccardctl + else + exit 0 + fi + + if [ "`lsmod | grep hci_uart`" != "" ]; then + #If the hci_usb module is still loaded then there's a serial based + # Bluetooth CF card in the slot, which only needs a resume to get it going + # again. + rfcomm bind all + $CARDCTL resume + hciconfig hci0 up + else + # only works for nokia dtl1 cards + for f in /lib/modules/`uname -r`/kernel/drivers/bluetooth/dtl1_cs.$k + do + #Enumerate all the self-contained Bluetooth CF card drivers + f=`echo $f | sed 's/\.'$k'$//'` + f=`basename $f` + if [ "`lsmod | grep $f`" != "" ]; then + #If one of these drivers is still loaded, then there is probably + #a non-serial based Bluetooth CF card in the slot that needs + #ejecting and reinserting to get it going again + rfcomm bind all + $CARDCTL eject + $CARDCTL insert + hciconfig hci0 up + fi + done + fi +esac diff --git a/meta/recipes-connectivity/bluez/bluez-dtl1-workaround_1.0.bb b/meta/recipes-connectivity/bluez/bluez-dtl1-workaround_1.0.bb new file mode 100644 index 0000000000..64000b7a5f --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez-dtl1-workaround_1.0.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "A nasty hack for for dtl1-cs driver to workaround suspend/resume." +LICENSE = "GPLv2" +SECTION = "console" +PRIORITY = "optional" +PR = "r1" + +SRC_URI = "file://02dtl1_cs.sh" + +do_install() { + install -d ${D}${sysconfdir}/apm/event.d/ + install -m 0755 ${WORKDIR}/02dtl1_cs.sh ${D}${sysconfdir}/apm/event.d/ +} + +#Package 02dtl1_cs.sh, which is a nasty hack to get dtl1c_cs cards working with suspend/resume +FILES_${PN} += "${sysconfdir}/apm/" + +PACKAGE_ARCH = "all" diff --git a/meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb b/meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb new file mode 100644 index 0000000000..4c117281aa --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "Linux Bluetooth Stack HCI Debugger Tool." +SECTION = "console" +PRIORITY = "optional" +DEPENDS = "bluez4" +LICENSE = "GPL" +PR = "r0" + +SRC_URI = "http://bluez.sourceforge.net/download/bluez-hcidump-${PV}.tar.gz" +S = "${WORKDIR}/bluez-hcidump-${PV}" + +EXTRA_OECONF = "--with-bluez-libs=${STAGING_LIBDIR} --with-bluez-includes=${STAGING_INCDIR}" + +inherit autotools diff --git a/meta/recipes-connectivity/bluez/bluez4-4.66/bluetooth.conf b/meta/recipes-connectivity/bluez/bluez4-4.66/bluetooth.conf new file mode 100644 index 0000000000..ca5e9e4f2f --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez4-4.66/bluetooth.conf @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + diff --git a/meta/recipes-connectivity/bluez/bluez4-4.66/fix-dfutool-usb-declaration-mismatch.patch b/meta/recipes-connectivity/bluez/bluez4-4.66/fix-dfutool-usb-declaration-mismatch.patch new file mode 100644 index 0000000000..91c802bc41 --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez4-4.66/fix-dfutool-usb-declaration-mismatch.patch @@ -0,0 +1,19 @@ +# bluez4: add compile patch fixing some usb declaration mismatch +# Author: Michael 'Mickey' Lauer +# Date: Thu Jan 29 16:52:21 2009 +0000 +# +# Acquired from OpenEmbedded + +Index: bluez-4.27/tools/dfutool.c +=================================================================== +--- bluez-4.27.orig/tools/dfutool.c ++++ bluez-4.27/tools/dfutool.c +@@ -59,7 +59,7 @@ + #endif + + #ifdef NEED_USB_GET_BUSSES +-static inline struct usb_bus *usb_get_busses(void) ++inline struct usb_bus *usb_get_busses(void) + { + return usb_busses; + } diff --git a/meta/recipes-connectivity/bluez/bluez4-4.66/hid2hci_usb_init.patch b/meta/recipes-connectivity/bluez/bluez4-4.66/hid2hci_usb_init.patch new file mode 100644 index 0000000000..ed15fd5a1b --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez4-4.66/hid2hci_usb_init.patch @@ -0,0 +1,33 @@ +# Signed-off-by: Khem Raj +# +# Use the new usb1 API for usb_init() and check for fails from +# usb_init (). Currently we see a crash on a system which does +# not have USB because usb_init() fails and it cleans up all initialized +# data (e.g. ctx) which is used in subsequent calls to libusb +# We return immediately if usb_init() fails for some reason. + +Index: bluez-4.24/tools/hid2hci.c +=================================================================== +--- bluez-4.24.orig/tools/hid2hci.c 2008-10-25 23:40:34.000000000 -0700 ++++ bluez-4.24/tools/hid2hci.c 2008-12-29 22:06:04.000000000 -0800 +@@ -337,7 +337,7 @@ + int main(int argc, char *argv[]) + { + struct device_info dev[16]; +- int i, opt, num, quiet = 0, mode = HCI; ++ int i, ret, opt, num, quiet = 0, mode = HCI; + + while ((opt = getopt_long(argc, argv, "+01qh", main_options, NULL)) != -1) { + switch (opt) { +@@ -361,8 +361,9 @@ + argc -= optind; + argv += optind; + optind = 0; +- +- usb_init(); ++ ret = libusb_init(); ++ if (ret < 0) ++ return ret; + + num = find_devices(mode, dev, sizeof(dev) / sizeof(dev[0])); + if (num <= 0) { diff --git a/meta/recipes-connectivity/bluez/bluez4-4.66/sbc-thumb.patch b/meta/recipes-connectivity/bluez/bluez4-4.66/sbc-thumb.patch new file mode 100644 index 0000000000..474423670b --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez4-4.66/sbc-thumb.patch @@ -0,0 +1,13 @@ +# Acquired from OpenEmbedded + +--- bluez/sbc/sbc_math.h~ 2008-03-05 20:18:03.000000000 +0000 ++++ bluez/sbc/sbc_math.h 2008-10-27 13:39:27.000000000 +0000 +@@ -59,7 +59,7 @@ + + #define SBC_FIXED_0(val) { val = 0; } + #define MUL(a, b) ((a) * (b)) +-#ifdef __arm__ ++#if defined(__arm__) && !defined(__thumb__) + #define MULA(a, b, res) ({ \ + int tmp = res; \ + __asm__( \ diff --git a/meta/recipes-connectivity/bluez/bluez4_4.66.bb b/meta/recipes-connectivity/bluez/bluez4_4.66.bb new file mode 100644 index 0000000000..7abf0faa65 --- /dev/null +++ b/meta/recipes-connectivity/bluez/bluez4_4.66.bb @@ -0,0 +1,72 @@ +DESCRIPTION = "Linux Bluetooth Stack Userland V4" +HOMEPAGE = "http://www.bluez.org" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ + file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \ + file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e \ + file://sbc/sbc.c;beginline=1;endline=25;md5=1a40781ed30d50d8639323a184aeb191" +DEPENDS = "gst-plugins-base alsa-lib libusb dbus-glib libnl" + +# For angstrom we want this to replace at least bluez-libs +PROVIDES_append_angstrom = " bluez-utils bluez-libs" + +ASNEEDED = "" + +PR = "r0" + +SRC_URI = "\ + http://www.kernel.org/pub/linux/bluetooth/bluez-${PV}.tar.gz \ + file://fix-dfutool-usb-declaration-mismatch.patch;patch=1 \ + file://sbc-thumb.patch;patch=1 \ + file://bluetooth.conf \ +" +S = "${WORKDIR}/bluez-${PV}" + +inherit autotools +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +EXTRA_OECONF = "\ + --enable-gstreamer \ + --enable-alsa \ + --enable-usb \ + --enable-netlink \ + --enable-tools \ + --enable-bccmd \ + --enable-hid2hci \ + --enable-dfutool \ + --enable-hidd \ + --enable-pandd \ + --enable-dund \ + --disable-cups \ + --enable-test \ + --enable-manpages \ + --enable-configfiles \ + --enable-initscripts \ + --disable-pcmciarules \ +" + +do_install_append() { + install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/ + install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/ + install -m 0644 ${S}/input/input.conf ${D}/${sysconfdir}/bluetooth/ + # at_console doesn't really work with the current state of OE, so punch some more holes so people can actually use BT + install -m 0644 ${WORKDIR}/bluetooth.conf ${D}/${sysconfdir}/dbus-1/system.d/ +} + +PACKAGES =+ "gst-plugin-bluez libasound-module-bluez" + +FILES_gst-plugin-bluez = "${libdir}/gstreamer-0.10/lib*.so" +FILES_libasound-module-bluez = "${libdir}/alsa-lib/lib*.so" +FILES_${PN} += "${libdir}/bluetooth/plugins/*.so" +FILES_${PN}-dev += "\ + ${libdir}/bluetooth/plugins/*.la \ + ${libdir}/alsa-lib/*.la \ + ${libdir}/gstreamer-0.10/*.la \ +" + +FILES_${PN}-dbg += "\ + ${libdir}/bluetooth/plugins/.debug \ + ${libdir}/*/.debug \ +" -- cgit v1.2.3-54-g00ecf