1 DESCRIPTION = "Alsa Drivers"
2 MAINTAINER = "Rene Wagner <rw@handhelds.org>"
7 DEPENDS += "fakeroot-native virtual/kernel"
9 RPROVIDES = "${@linux_module_packages('h3600-uda1341 uda1341', d)}"
10 RCONFLICTS = "${@linux_module_packages('h3600-uda1341 uda1341', d)}"
11 RREPLACES = "${@linux_module_packages('h3600-uda1341 uda1341', d)}"
13 SRC_URI = "ftp://ftp.handhelds.org/packages/alsa-driver/alsa-driver-${PV}.tar.gz \
14 file://sound.p.patch;patch=1 \
15 file://h5400.patch;patch=1 \
16 file://sa11xx.patch;patch=1 \
17 file://adriver.h.patch;patch=1"
19 inherit autotools module update-rc.d
21 INITSCRIPT_NAME = "alsa-driver"
22 INITSCRIPT_PARAMS = "start 29 S . stop 29 0 6 1 ."
24 # avoid miscompilation
25 KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc${KERNEL_CCSUFFIX} ${HOST_CC_ARCH}"
27 EXTRA_OECONF = "--with-sequencer=yes \
30 --with-kernel=${STAGING_KERNEL_DIR} \
31 --with-kernel-version=${KERNEL_VERSION}"
33 PACKAGES =+ "${PN}-midi ${PN}-misc"
34 FILES_${PN} = "/lib/modules/*/misc/snd* \
35 ${sysconfdir}/init.d/${INITSCRIPT_NAME}"
36 # ${sysconfdir}/modutils/*"
37 midi_modules = "snd-seq-midi-emul.o \
38 snd-seq-midi-event.o \
42 FILES_${PN}-midi = "${@' '.join(map ((lambda x: '/lib/modules/*/misc/%s' % x), bb.data.getVar('midi_modules', d).split()))}"
43 misc_modules = "snd-gus-synth.o \
50 FILES_${PN}-misc = "${@' '.join(map ((lambda x: '/lib/modules/*/misc/%s' % x), bb.data.getVar('misc_modules', d).split()))}"
52 # put in-kernel headers first in the include search path.
53 # without this all configure checks fail
54 CFLAGS =+ "-I${STAGING_KERNEL_DIR}/include"
59 if egrep "CONFIG_SA1100_H3[168]00=y" "${STAGING_KERNEL_DIR}/.config" ; then
60 cards="$cards,sa11xx-uda1341"
63 if grep "CONFIG_ARCH_H3900=y" "${STAGING_KERNEL_DIR}/.config" ; then
64 cards="$cards,pxa-uda1380,h5400-ak4535"
67 cards="$cards,bluez-sco,pdaudiocf"
69 oe_runconf --with-cards=${cards}
72 autoload_ipaqsa = "snd-sa11xx-uda1341 snd-pcm-oss snd-mixer-oss"
73 autoload_ipaqpxa = "snd-h5400-ak4535 snd-pxa-uda1380 snd-pcm-oss snd-mixer-oss"
77 if egrep "CONFIG_SA1100_H3[168]00=y" "${STAGING_KERNEL_DIR}/.config" ; then
78 autoload="${autoload_ipaqsa}"
80 if grep "CONFIG_ARCH_H3900=y" "${STAGING_KERNEL_DIR}/.config" ; then
81 autoload="${autoload_ipaqpxa}"
84 fakeroot make -k NODEPMOD=yes DESTDIR=${D} install;
86 mkdir -p ${D}${sysconfdir}/init.d
87 cat > ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME} <<EOF
90 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
92 autoload_modules="$autoload"
96 echo -n "Loading alsa modules:"
97 for i in \$autoload_modules; do
98 modprobe \$i && echo -n " \$i"
103 echo -n "Unloading alsa modules:"
104 for i in \$autoload_modules; do
105 modprobe -r \$i && echo -n " \$i"
109 restart|force-reload)
110 echo -n "Unloading alsa modules:"
111 for i in \$autoload_modules; do
112 modprobe -r \$i && echo -n " \$i"
115 echo -n "Loading alsa modules:"
116 for i in \$autoload_modules; do
117 modprobe \$i && echo -n " \$i"
122 echo "Usage: \$0 {start|stop|restart|force-reload}" >&2
129 chmod 755 ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME}