summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD40
-rw-r--r--dkms.conf5
-rw-r--r--lowlatency.patch13
4 files changed, 79 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..771f714a18fc
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,21 @@
+pkgbase = snd-usb-audio-lowlatency-dkms
+ pkgdesc = snd-usb-audio kernel module modified for low latency
+ pkgver = 4.17.14
+ pkgrel = 1
+ url = https://www.kernel.org/
+ arch = any
+ license = GPL2
+ depends = dkms
+ source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.17.tar.xz
+ source = https://www.kernel.org/pub/linux/kernel/v4.x/patch-4.17.14.xz
+ source = dkms.conf
+ source = lowlatency.patch
+ validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
+ validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
+ sha256sums = 9faa1dd896eaea961dc6e886697c0b3301277102e5bc976b2758f9a62d3ccd13
+ sha256sums = bf4d95df98dc6197024bc2a7c8a8ef5fd3b21495298c7a7a5dbd63c159ea9f17
+ sha256sums = 69f325c3af92c4098c9d118b2eab7de76eba691677864f714697bce5f47005e2
+ sha256sums = 9da83cbdf8d8202507a45c1cd6c29b45b9e4ff483483d9957c711c0120a78fe5
+
+pkgname = snd-usb-audio-lowlatency-dkms
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..0f6eb38e9462
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Jonathan Liu <net147@gmail.com>
+pkgname=snd-usb-audio-lowlatency-dkms
+_basepkgname=snd-usb-audio-lowlatency
+_srcname=linux-4.17
+pkgver=4.17.14
+pkgrel=1
+pkgdesc="snd-usb-audio kernel module modified for low latency"
+arch=('any')
+url="https://www.kernel.org/"
+license=('GPL2')
+depends=('dkms')
+source=(
+ "https://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz"
+ "https://www.kernel.org/pub/linux/kernel/v4.x/patch-${pkgver}.xz"
+ 'dkms.conf'
+ 'lowlatency.patch'
+)
+validpgpkeys=(
+ 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
+ '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
+)
+sha256sums=('9faa1dd896eaea961dc6e886697c0b3301277102e5bc976b2758f9a62d3ccd13'
+ 'bf4d95df98dc6197024bc2a7c8a8ef5fd3b21495298c7a7a5dbd63c159ea9f17'
+ '69f325c3af92c4098c9d118b2eab7de76eba691677864f714697bce5f47005e2'
+ '9da83cbdf8d8202507a45c1cd6c29b45b9e4ff483483d9957c711c0120a78fe5')
+
+prepare() {
+ cd "${_srcname}"
+ patch -Np1 -i ../patch-${pkgver}
+ patch -Np1 -i ../lowlatency.patch
+}
+
+package() {
+ cd "${_srcname}"
+ install -Dm644 ../dkms.conf "${pkgdir}/usr/src/${_basepkgname}-${pkgver}/dkms.conf"
+ sed -e "s/@PKGVER@/${pkgver}/" -i "${pkgdir}/usr/src/${_basepkgname}-${pkgver}/dkms.conf"
+ cp -a sound/usb/* "${pkgdir}/usr/src/${_basepkgname}-${pkgver}/"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/dkms.conf b/dkms.conf
new file mode 100644
index 000000000000..6ac3f1564871
--- /dev/null
+++ b/dkms.conf
@@ -0,0 +1,5 @@
+PACKAGE_NAME="snd-usb-audio-lowlatency"
+PACKAGE_VERSION="@PKGVER@"
+BUILT_MODULE_NAME[0]="snd-usb-audio"
+DEST_MODULE_LOCATION[0]="/updates"
+AUTOINSTALL="yes"
diff --git a/lowlatency.patch b/lowlatency.patch
new file mode 100644
index 000000000000..0fcf60f85a86
--- /dev/null
+++ b/lowlatency.patch
@@ -0,0 +1,13 @@
+--- a/sound/usb/card.h
++++ b/sound/usb/card.h
+@@ -3,8 +3,8 @@
+ #define __USBAUDIO_CARD_H
+
+ #define MAX_NR_RATES 1024
+-#define MAX_PACKS 6 /* per URB */
+-#define MAX_PACKS_HS (MAX_PACKS * 8) /* in high speed mode */
++#define MAX_PACKS 1 /* per URB */
++#define MAX_PACKS_HS (MAX_PACKS * 1) /* in high speed mode */
+ #define MAX_URBS 12
+ #define SYNC_URBS 4 /* always four urbs for sync */
+ #define MAX_QUEUE 18 /* try not to exceed this queue length, in ms */