From nobody Mon Feb 26 23:22:56 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TkGr06Wnyz5BtYd; Mon, 26 Feb 2024 23:22:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TkGr03kDrz4V3B; Mon, 26 Feb 2024 23:22:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1708989776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gDUElWmpPVSFeNpdl0AmPQ+orFgfC6aE2pB9gRU386c=; b=OrkDztz5d1jciiVHb1oCXSREaCJWv8Lj8KcWEyZcv5D8dH94DjYfvFeSqhVtBiZWdgH8yl nPLhEYQeXXMZFG87SpXHCA/3uqmu9gEPhxOFKkU35jwONQx338MRh1t8AtY/qDQfJhou+8 Fsiz7I68TbDqSbuSo/6inz8ykgPjLhAhk1timW0dFITd6bNY6mYLQr0xVYjLz3sSekV/yE /2oXwgyfn1KvaGy3pIibLlxCZ3K143kNw0FFeihU6BZnyarwfMvdnsaq+78OTKEcoC18dJ 2ra2HSpjN3gt2X89MHKk3lgUCqWktAx284mwytsLcX7KfcQIIDpKLlWGejju3A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1708989776; a=rsa-sha256; cv=none; b=AQ+9SJNahYUuV9neMu86IrBbPI75Hv+j11XNpzRKf9aFaa4O+HbPKPT+qRqeTtMrw4F1As M0cDET0w8bJGmlO9WJzcJVqYBuUapKT9zyln4snIziIzDjl688rX7L3VrxxGMnt3F7mXsG AGvVCeqm1J63EItqP0QrM1j1iuPncwaJywxRvAMSthncSKny+JY6oQZJmEK87jCMD1w9jx 4wONOTk87EmgNRKfas8Fvz8LMWyQIXGaJJCVonqBOPxAJ+iigpDfz5HnHVxZWRsoYuqLZ+ ASXvnRiRxs4Fc1EwqnZqq7/7jBB/py0XtYQK7Lu29yqakiAYWxR0NLtsjUJhLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1708989776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gDUElWmpPVSFeNpdl0AmPQ+orFgfC6aE2pB9gRU386c=; b=FI4Aaj/SaQsVfSyK2F1UBOuxYYrlh8SVRutoa4tydTB68UHJIFCfsLGM35ayYDkh+jck23 W4V0vGuxCVd5NqmzY/OrSIQX1X8+dfDYzHLCKgp+9A41IoyvohbXB+hKhkIS8dz0ZDJVBp twYt4tfq3ouutVIzDQhErEI4xuYUv7xZrIPFrrYWriFkP3u3gJwNb84FWCy9mNNgoT3QvP Q+SP8VYmvSc1SqxNKHQgm31pYKJl4LbRecloL076cIJlKHgWTMFUnY2vb65YxS4SdrGJ4c 0GGzTTj0IxIrd9KpmgBoVv+i2MdLv/KDjfvxltTephkJELj0pjCOacNbxYThWQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TkGr02qWrznrL; Mon, 26 Feb 2024 23:22:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 41QNMuJ2028825; Mon, 26 Feb 2024 23:22:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 41QNMuZ0028822; Mon, 26 Feb 2024 23:22:56 GMT (envelope-from git) Date: Mon, 26 Feb 2024 23:22:56 GMT Message-Id: <202402262322.41QNMuZ0028822@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: f8d5fb7db333 - stable/14 - snd_uaudio.4: document sysctls List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f8d5fb7db3332ced2e13c67d9dbd4fb79d9acb22 Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=f8d5fb7db3332ced2e13c67d9dbd4fb79d9acb22 commit f8d5fb7db3332ced2e13c67d9dbd4fb79d9acb22 Author: Christos Margiolis AuthorDate: 2024-02-12 11:06:00 +0000 Commit: Christos Margiolis CommitDate: 2024-02-26 23:22:32 +0000 snd_uaudio.4: document sysctls Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D43649 (cherry picked from commit 5960ab73d865b59bfa7d7fd3bd49a6f7d730ef83) --- share/man/man4/snd_uaudio.4 | 81 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 78 insertions(+), 3 deletions(-) diff --git a/share/man/man4/snd_uaudio.4 b/share/man/man4/snd_uaudio.4 index 04dc10ccaa25..b6a6c06a2312 100644 --- a/share/man/man4/snd_uaudio.4 +++ b/share/man/man4/snd_uaudio.4 @@ -57,12 +57,88 @@ A USB audio device consists of a number of components: input terminals (e.g.\& USB digital input), output terminals (e.g.\& speakers), and a number of units in between (e.g.\& volume control). .Pp +If the device supports multiple configurations, and there have been no +user-supplied values specified through the +.Xr sysctl 8 +interface, the driver will select the best matching configuration supported by +the device during attach. +"Best" means the configuration with the most channels and highest quality in +sample rate and sample size. +.Pp Refer to the .Ql USB Audio Class Specification for more information. +.Sh SYSCTL VARIABLES +The following settings can be entered at the +.Xr loader 8 +prompt or in +.Xr loader.conf 5 +and can also be changed at runtime with the +.Xr sysctl 8 +command. +For a change to take effect during runtime, the device has to be re-attached. +.Bl -tag -width indent +.It Va hw.usb.uaudio.buffer_ms +Period of audio data processed at once, in milliseconds, from 1 to 8 (default +is 4). +Lower values mean less latency, but this can result in audible gaps due to +frequent CPU wakeups. +.It Va hw.usb.uaudio.default_bits +Preferred sample size in bits, from 0 to 32 (default is 0). +A value of 0 sets the sample size to the maximum supported sample size. +.Pp +Set this to select a smaller sample size if the device supports multiple sample +sizes. +.It Va hw.usb.uaudio.default_channels +Preferred number of sample channels, from 0 to 64 (default is 0). +USB 1.1 devices are limited to 4 channels due to bandwidth constraints, unless +a higher value is explicitly requested. +A value of 0 sets the sample channels to the maximum supported channel number. +.Pp +Set this to select a smaller channel number if the device supports multiple +channel configurations. +.It Va hw.usb.uaudio.default_rate +Preferred sample rate in Hz (default is 0). +If set to 0, the device's highest supported sample rate will be used. +.Pp +Note that if VCHANs are enabled, the sample rate will be overridden by +.Pa dev.pcm.%d.[play|rec].vchanrate +(see +.Xr sound 4 ) , +which can also be used to adjust the sample rate during runtime. +.Pp +If +.Pa hw.usb.uaudio.default_rate +is non-zero, +.Pa dev.pcm.%d.[play|rec].vchanrate +will use it as its maximum allowed value. +.It Va hw.usb.uaudio.handle_hid +Let +.Nm +handle HID volume keys, if any (default is 1). +.Bl -tag -width 2n +.It 0 +Disabled. +.It 1 +Enabled. +.El +.El +.Pp +If +.Xr usb 4 +has been compiled with +.Va USB_DEBUG +on, the following setting is also available: +.Bl -tag -width indent +.It Va hw.usb.uaudio.debug +Debug output level (default is 0). +.El .Sh SEE ALSO .Xr sound 4 , -.Xr usb 4 +.Xr usb 4 , +.Xr loader.conf 5 , +.Xr loader 8 , +.Xr sysctl 8 .Rs .%T "USB Audio Class Specifications" .%U http://www.usb.org/developers/docs/devclass_docs/ @@ -98,8 +174,7 @@ sysctls. .Pp The PCM framework in .Fx -currently doesn't support the full set of USB audio mixer -controls. +currently does not support the full set of USB audio mixer controls. Some mixer controls are only available as .Va dev.pcm.%d.mixer sysctls.