svn commit: r368211 - stable/12/sys/dev/sound/usb

Hans Petter Selasky hselasky at FreeBSD.org
Tue Dec 1 12:36:22 UTC 2020


Author: hselasky
Date: Tue Dec  1 12:36:21 2020
New Revision: 368211
URL: https://svnweb.freebsd.org/changeset/base/368211

Log:
  MFC r367615:
  Add a tunable sysctl, hw.usb.uaudio.handle_hid, to allow disabling the
  the HID volume keys support in the USB audio driver.
  
  While at it re-organize the USB audio sysctls a bit.
  
  Differential Revision:	https://reviews.freebsd.org/D27180
  Sponsored by:		Mellanox Technologies // NVIDIA Networking

Modified:
  stable/12/sys/dev/sound/usb/uaudio.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/sound/usb/uaudio.c
==============================================================================
--- stable/12/sys/dev/sound/usb/uaudio.c	Tue Dec  1 12:33:39 2020	(r368210)
+++ stable/12/sys/dev/sound/usb/uaudio.c	Tue Dec  1 12:36:21 2020	(r368211)
@@ -98,14 +98,11 @@ static int uaudio_default_rate = 0;		/* use rate list 
 static int uaudio_default_bits = 32;
 static int uaudio_default_channels = 0;		/* use default */
 static int uaudio_buffer_ms = 8;
+static bool uaudio_handle_hid = true;
 
-#ifdef USB_DEBUG
-static int uaudio_debug;
-
 static SYSCTL_NODE(_hw_usb, OID_AUTO, uaudio, CTLFLAG_RW, 0, "USB uaudio");
-
-SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, debug, CTLFLAG_RWTUN,
-    &uaudio_debug, 0, "uaudio debug level");
+SYSCTL_BOOL(_hw_usb_uaudio, OID_AUTO, handle_hid, CTLFLAG_RWTUN,
+    &uaudio_handle_hid, 0, "uaudio handles any HID volume/mute keys, if set");
 SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, default_rate, CTLFLAG_RWTUN,
     &uaudio_default_rate, 0, "uaudio default sample rate");
 SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, default_bits, CTLFLAG_RWTUN,
@@ -136,6 +133,12 @@ uaudio_buffer_ms_sysctl(SYSCTL_HANDLER_ARGS)
 SYSCTL_PROC(_hw_usb_uaudio, OID_AUTO, buffer_ms, CTLTYPE_INT | CTLFLAG_RWTUN,
     0, sizeof(int), uaudio_buffer_ms_sysctl, "I",
     "uaudio buffering delay from 2ms to 8ms");
+
+#ifdef USB_DEBUG
+static int uaudio_debug;
+
+SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, debug, CTLFLAG_RWTUN,
+    &uaudio_debug, 0, "uaudio debug level");
 #else
 #define	uaudio_debug 0
 #endif
@@ -1120,10 +1123,12 @@ uaudio_attach(device_t dev)
 		goto detach;
 	}
 
-	if (uaudio_hid_probe(sc, uaa) == 0) {
-		device_printf(dev, "HID volume keys found.\n");
-	} else {
-		device_printf(dev, "No HID volume keys found.\n");
+	if (uaudio_handle_hid) {
+		if (uaudio_hid_probe(sc, uaa) == 0) {
+			device_printf(dev, "HID volume keys found.\n");
+		} else {
+			device_printf(dev, "No HID volume keys found.\n");
+		}
 	}
 
 	/* reload all mixer settings */


More information about the svn-src-all mailing list