aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--audio/alsa-tools/alsa-tools.SlackBuild17
-rw-r--r--audio/alsa-tools/alsa-tools.info10
-rw-r--r--audio/alsa-tools/tascam-us122-HOWTO56
3 files changed, 61 insertions, 22 deletions
diff --git a/audio/alsa-tools/alsa-tools.SlackBuild b/audio/alsa-tools/alsa-tools.SlackBuild
index 0c53b7832a84..914c63235210 100644
--- a/audio/alsa-tools/alsa-tools.SlackBuild
+++ b/audio/alsa-tools/alsa-tools.SlackBuild
@@ -15,9 +15,13 @@
# 20140219 bkw: fix .desktop files so they validate
+# 20140823 bkw:
+# - Update for 1.0.28
+# - Add usbcore.autosuspend=-1 to tascam howto
+
PRGNAM=alsa-tools
-VERSION=${VERSION:-1.0.27}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-1.0.28}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -50,7 +54,7 @@ fi
set -e
FIRMWARE=alsa-firmware
-FIRMVER=1.0.27
+FIRMVER=${FIRMVER:-$VERSION}
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
@@ -91,11 +95,7 @@ fi
# hdspconf and hdspmixer depend on fltk. Don't build them if disabled or
# not installed.
-if [ -e /usr/bin/fltk-config -a "${FLTK:-yes}" = "yes" ]; then
- : do nothing
-else
- rm -rf hdspconf hdspmixer
-fi
+[ -e /usr/bin/fltk-config -a "${FLTK:-yes}" = "yes" ] || rm -rf hdspconf hdspmixer
# one loop to build them all. The -include stddef.h fixes qlo10k1 'ptrdiff_t doesn't
# name a type' errors, and doesn't hurt anything else.
@@ -152,6 +152,7 @@ make install-strip DESTDIR=$PKG
# hdspmixer.desktop and hdspconf.desktop fail desktop-file-validate.
# We'll leave the deprecation warning for FilePattern, as it's just a
# warning, and FilePattern might still be useful.
+[ -e $PKG/usr/share/applications/hdspmixer.desktop ] &&
sed -i \
-e '/^Encoding/d' \
-e '/^FilePattern/s,$,;,' \
diff --git a/audio/alsa-tools/alsa-tools.info b/audio/alsa-tools/alsa-tools.info
index d2c5603c8563..fe34b574fdc7 100644
--- a/audio/alsa-tools/alsa-tools.info
+++ b/audio/alsa-tools/alsa-tools.info
@@ -1,10 +1,10 @@
PRGNAM="alsa-tools"
-VERSION="1.0.27"
+VERSION="1.0.28"
HOMEPAGE="http://www.alsa-project.org/"
-DOWNLOAD="http://alsa.cybermirror.org/tools/alsa-tools-1.0.27.tar.bz2 \
- http://alsa.cybermirror.org/firmware/alsa-firmware-1.0.27.tar.bz2"
-MD5SUM="1ea381d00a6069a98613aa7effa4cb51 \
- b373b350d5151dd7d64db2fc12936b04"
+DOWNLOAD="http://alsa.cybermirror.org/tools/alsa-tools-1.0.28.tar.bz2 \
+ http://alsa.cybermirror.org/firmware/alsa-firmware-1.0.28.tar.bz2"
+MD5SUM="e6c929175d8ee729c06d49b51439bad6 \
+ 0615aedafe8251fdf835b68ea3463559"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/audio/alsa-tools/tascam-us122-HOWTO b/audio/alsa-tools/tascam-us122-HOWTO
index ea36dcfce35d..7bf066d9fa38 100644
--- a/audio/alsa-tools/tascam-us122-HOWTO
+++ b/audio/alsa-tools/tascam-us122-HOWTO
@@ -1,4 +1,6 @@
-How to get a Tascam US-122 working with Slackware 13.37.
+How to get a Tascam US-122 working with Slackware 13.37 and later.
+
+[ 20140823 bkw: updated to include usbcore.autosuspend=-1 ]
The Tascam US-122 is a bus-powered USB 1.1 audio interface, with 2
channels of input (either 1/4" unbalanced or XLR balanced) and adjustable
@@ -44,7 +46,43 @@ or via "su -". Don't use "su" without the hyphen though).
Steps
-----
-1. To get the US-122 working without audio glitches:
+1. For 3.x series kernels, you'll have to disable USB autosuspend.
+Actually this is a good idea for any system that uses USB audio, or
+even any desktop system that doesn't need to save every last milliwatt
+of power possible. If you don't do this, the US-122 will usually work
+for a few seconds, then freeze up with "incomplete URB" messages in dmesg.
+
+In Slackware's kernels, usbcore is built into the kernel (even the
+-generic one), so you'll have to pass a parameter on the kernel's
+command line.
+
+In /etc/lilo.conf, in the section for your kernel, add a line like
+this:
+
+ append="usbcore.autosuspend=-1"
+
+If you already had an append=, add usbcore.autosuspend=-1 to the options
+inside the double-quotes. An example might be:
+
+ append="threadirqs usbcore.autosuspend=-1"
+
+(BTW, threadirqs is a useful option for systems that need low latency for
+realtime audio).
+
+Don't forget to re-run "lilo" and reboot after editing lilo.conf.
+
+There's another method for disabling autosuspend that doesn't require
+a reboot. Do this:
+
+# echo "-1" > /sys/module/usbcore/parameters/autosuspend
+# for i in /sys/bus/usb/devices/*/power/autosuspend; do
+# echo "-1" > $i
+# done
+
+Put that code in /etc/rc.d/rc.local (or in a separate script that gets
+called from rc.local) so it will execute on every boot.
+
+2. To get the US-122 working without audio glitches:
# echo 'options snd_usb_usx2y nrpacks=1' > /etc/modprobe.d/tascam.conf
@@ -55,7 +93,7 @@ happened, I was using jack, and it didn't report any x-runs. I don't
really understand why nrpacks works, I found it by googling (see the
links section, below).
-2. Install fxload and alsa-tools from slackbuilds.org.
+3. Install fxload and alsa-tools from slackbuilds.org.
# sbopkg -i fxload alsa-tools
@@ -66,13 +104,13 @@ If you're not actually using Slackware, or if you decide to compile
alsa-tools without using the slackbuilds.org package, see the "Udev Rules"
section of this document.
-3. Plug in the device.
+4. Plug in the device.
After a couple of seconds, the green USB light on the Tascam should light
up. The snd_usb_usx2y should be auto-loaded by udev (check the output of
"lsmod").
-4. Testing
+5. Testing
Have a look at the output of "aplay -l", and/or run alsamixer and press
F6. The card should show up as "USX2Y [TASCAM US-X2Y]". It will probably
@@ -245,12 +283,12 @@ this (it already includes a suitable set of udev rules for the US-122,
US-224, and US-428).
# cat > /lib/udev/rules.d/99-tascam.rules <<EOF
-BUS=="usb", ACTION=="add", SYSFS{idProduct}=="8006", SYSFS{idVendor}=="1604", RUN+="/bin/sh -c '/sbin/fxload -D %N -s /usr/share/alsa/firmware/usx2yloader/tascam_loader.ihx -I /usr/share/alsa/firmware/usx2yloader/us122fw.ihx'"
-BUS=="usb", ACTION=="add", SYSFS{idProduct}=="8007", SYSFS{idVendor}=="1604", RUN+="/bin/sh -c '/usr/bin/usx2yloader'"
+SUBSYSTEMS=="usb", ACTION=="add", SYSFS{idProduct}=="8006", SYSFS{idVendor}=="1604", RUN+="/bin/sh -c '/sbin/fxload -D %N -s /usr/share/alsa/firmware/usx2yloader/tascam_loader.ihx -I /usr/share/alsa/firmware/usx2yloader/us122fw.ihx'"
+SUBSYSTEMS=="usb", ACTION=="add", SYSFS{idProduct}=="8007", SYSFS{idVendor}=="1604", RUN+="/bin/sh -c '/usr/bin/usx2yloader'"
EOF
-(the above is two long lines beginning with "BUS==". There shouldn't be any
-other line breaks)
+(the above is two long lines, each beginning with "SUBSYSTEMS==". There
+shouldn't be any other line breaks)
For the US-224, change the "us122fw.ihx" above to "us224fw.ihx", and
change the SYSFS{idProduct} numbers to 8004 and 8005. For the US-428,