From nobody Mon Feb 26 23:29:30 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 4TkGzZ4nvMz5Bv6m; Mon, 26 Feb 2024 23:29:30 +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 4TkGzZ3nYtz4YPq; Mon, 26 Feb 2024 23:29:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1708990170; 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=MYip/eBHqTzisa91/O86j1UUJxS5uwjXN5b+WSE0PVc=; b=xvSmVzJrwf6hrvuePB7AW2cNf9sQeMr4r0Bt9YJjTUCOi+tmR3IlJjZAbjnzqwGShnr2Iu pXO4wAEsxQ/kyQCVCpCoBgN0ltY0oPq0HY7BEpz0XGe4ygajofYzr02U0exSkj0wy3gFgF /AYF9veu0T2MDivwd1tHacafOH1ejo0sYUe8fBK3H3jWDbSVKxLon0a4YQrFndJttyt/MN 15VDLvXipvkYFUJfp3VSq/XgdhAjT+ixZeJwoxlqFgjlSCOPh1Ps5gGzmq/LPjSKZi5W9p N4C9pslNUUcvc+uCnbpyK6Ew+XypDybDNLSLrG0/QgW4jbFZx9DYeZb7HuuSkw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1708990170; a=rsa-sha256; cv=none; b=yKwXDZGqQLsB7h/yQP2lVeEC1eMHlFE/cdWkFMpckIe/PJ4cGf4oq8ZEjcqTUIkZeqdg1l 91oFUY2iwb4/R6/xA/GXF+Q4H9+Wn96hBmdET+BXvJ0LClxtNnUVBSuMFyPFUJ1sI0foVu AzHlwK4wUpBc6AUaLkwBnL4y6+1krckfoNARGiBtjYGqybzH6AoBGcffgJXFR7zes4b9lT H1gL5bt4jZ53ewCs48km4Fpyh8du8f3qP4TtnFaZQeqalO5hiF7DANmamVVoh7NNfY4NtM 4qNft4zdMUpSyckkU2GiiR0ofstFwew+H+K4h2owH7eZ2LpZQpaqD7kGMQW3wA== 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=1708990170; 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=MYip/eBHqTzisa91/O86j1UUJxS5uwjXN5b+WSE0PVc=; b=rkbFLxQXDU7Y+wAE/OQJv7o/r/r7VDLBjC6qWTGkshgp4HPPXtBBRn2Y/GMUoBV/kXmd85 XynLXQX5L6A4DBCUKlgq3FjEx+0pYIADvxuTsLBgtkgwHhulxfKTJJfMiYBmcz6US4zNB6 J8uOv0aIRAXQ5GlSfwTJqxpRNr/3j/NhoRTu0Lu4skAq619o9RMvjNrnRGUJhIKNhKU7du nMpi4z00sGf/KCaYN5jhLCnaD5dYKichVhGutcx4x1TtIgPOKjhpqG47ohBGgmDWul+xtm ECcEBBhJyWvmYbp+jJm6RzLxoQ2MAhVleeFzTxUYtHWe9tE8cZHUZsEAEm98fg== 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 4TkGzZ2rYpzp7T; Mon, 26 Feb 2024 23:29:30 +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 41QNTUYD030602; Mon, 26 Feb 2024 23:29:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 41QNTUam030599; Mon, 26 Feb 2024 23:29:30 GMT (envelope-from git) Date: Mon, 26 Feb 2024 23:29:30 GMT Message-Id: <202402262329.41QNTUam030599@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 8bfb23abf882 - main - pcm.4: Fix lint warnings 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/main X-Git-Reftype: branch X-Git-Commit: 8bfb23abf882afdca0a0530ef1231ac59963bc4a Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=8bfb23abf882afdca0a0530ef1231ac59963bc4a commit 8bfb23abf882afdca0a0530ef1231ac59963bc4a Author: Christos Margiolis AuthorDate: 2024-02-26 23:28:53 +0000 Commit: Christos Margiolis CommitDate: 2024-02-26 23:28:53 +0000 pcm.4: Fix lint warnings Ignore the "manual not found" warnings for snd_ai2s(4) and snd_davbus(4). Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D43996 --- share/man/man4/pcm.4 | 97 ++++++++++++++++++---------------------------------- 1 file changed, 33 insertions(+), 64 deletions(-) diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4 index 54efd86a2b52..cd0d29519f0c 100644 --- a/share/man/man4/pcm.4 +++ b/share/man/man4/pcm.4 @@ -167,16 +167,16 @@ This will mute the input channel per default. Multichannel audio, popularly referred to as .Dq surround sound is supported and enabled by default. -The FreeBSD multichannel matrix processor supports up to 18 interleaved -channels, but the limit is currently set to 8 channels (as commonly used -for 7.1 surround sound). +The +.Fx +multichannel matrix processor supports up to 18 interleaved channels, but the +limit is currently set to 8 channels (as commonly used for 7.1 surround sound). The internal matrix mapping can handle reduction, expansion or re-routing of channels. This provides a base interface for related multichannel .Fn ioctl support. -Multichannel audio works both with and without -.Tn VCHANs . +Multichannel audio works both with and without VCHANs. .Pp Most bridge device drivers are still missing multichannel matrixing support, but in most cases this should be trivial to implement. @@ -202,21 +202,18 @@ tunable. Each device can optionally support more playback and recording channels than physical hardware provides by using .Dq virtual channels -or -.Tn VCHANs . -.Tn VCHAN -options can be configured via the +or VCHANs. +VCHAN options can be configured via the .Xr sysctl 8 interface but can only be manipulated while the device is inactive. .Ss VPC -FreeBSD supports independent and individual volume controls for each active +.Fx +supports independent and individual volume controls for each active application, without touching the master .Nm volume. This is sometimes referred to as Volume Per Channel (VPC). -The -.Tn VPC -feature is enabled by default. +The VPC feature is enabled by default. .Ss Loader Tunables The following loader tunables are used to set driver configuration at the .Xr loader 8 @@ -238,12 +235,9 @@ Enabling this will make bass and treble controls appear in mixer applications. This tunable is undefined by default. Equalizing is disabled by default. .It Va hint.pcm.%d.vpc -Set to 1 or 0 to explicitly enable (1) or disable (0) the -.Tn VPC -feature. +Set to 1 or 0 to explicitly enable (1) or disable (0) the VPC feature. This tunable is undefined by default. -.Tn VPC -is however enabled by default. +VPC is however enabled by default. .El .Ss Runtime Configuration There are a number of @@ -365,16 +359,12 @@ in possible underruns if the application cannot keep up with a rapid irq rate, especially during high workload. The default value is 1, which is considered a moderate/safe latency profile. .It Va hw.snd.maxautovchans -Global -.Tn VCHAN -setting that only affects devices with at least one playback or recording channel available. -The sound system will dynamically create up to this many -.Tn VCHANs . +Global VCHAN setting that only affects devices with at least one playback or +recording channel available. +The sound system will dynamically create up to this many VCHANs. Set to .Dq 0 -if no -.Tn VCHANs -are desired. +if no VCHANs are desired. Maximum value is 256. .It Va hw.snd.report_soft_formats Controls the internal format conversion if it is @@ -419,13 +409,11 @@ This means that any changes to the volume will be lost. Enabling this will preserve the volume, at the cost of possible confusion when applications tries to re-open the same device. .It Va hw.snd.vpc_mixer_bypass -The recommended way to use the -.Tn VPC -feature is to teach applications to use -the correct +The recommended way to use the VPC feature is to teach applications to use the +correct .Fn ioctl : -.Dv SNDCTL_DSP_GETPLAYVOL, SNDCTL_DSP_SETPLAYVOL, -.Dv SNDCTL_DSP_SETRECVOL, SNDCTL_DSP_SETRECVOL. +.Dv SNDCTL_DSP_GETPLAYVOL , SNDCTL_DSP_SETPLAYVOL , +.Dv SNDCTL_DSP_SETRECVOL , SNDCTL_DSP_SETRECVOL . This is however not always possible. Enable this to allow applications to use their own existing mixer logic to control their own channel volume. @@ -438,30 +426,19 @@ matrixing, rate converting and equalizing. The pure .Nm stream will be fed directly to the hardware. -If -.Tn VCHANs -are enabled, the bitperfect mode will use the -.Tn VCHAN -format/rate as the definitive format/rate target. -The recommended way to use bitperfect mode is to disable -.Tn VCHANs -and enable this sysctl. +If VCHANs are enabled, the bitperfect mode will use the VCHAN format/rate as +the definitive format/rate target. +The recommended way to use bitperfect mode is to disable VCHANs and enable this +sysctl. Default is disabled. .It Va dev.pcm.%d.[play|rec].vchans -The current number of -.Tn VCHANs -allocated per device. -This can be set to preallocate a certain number of -.Tn VCHANs . +The current number of VCHANs allocated per device. +This can be set to preallocate a certain number of VCHANs. Setting this value to .Dq 0 -will disable -.Tn VCHANs -for this device. +will disable VCHANs for this device. .It Va dev.pcm.%d.[play|rec].vchanformat -Format for -.Tn VCHAN -mixing. +Format for VCHAN mixing. All playback paths will be converted to this format before the mixing process begins. By default only 2 channels are enabled. @@ -491,8 +468,7 @@ Quadraphonic, 4 channels (front/rear left and right). 8 channels (4.0 + center + LFE + left and right side). .El .It Va dev.pcm.%d.[play|rec].vchanmode -.Tn VCHAN -format/rate selection. +VCHAN format/rate selection. Available options include: .Bl -tag -width 2n .It fixed @@ -527,9 +503,7 @@ The downside is that the hardware DMA mode needs to be restarted, which may cause annoying pops or clicks. .El .It Va dev.pcm.%d.[play|rec].vchanrate -Sample rate speed for -.Tn VCHAN -mixing. +Sample rate speed for VCHAN mixing. All playback paths will be converted to this sample rate before the mixing process begins. .It Va dev.pcm.%d.polling @@ -552,17 +526,12 @@ Channel statistics are only kept while the device is open. So with situations involving overruns and underruns, consider the output while the errant application is open and running. .Ss IOCTL Support -The driver supports most of the -.Tn OSS +The driver supports most of the OSS .Fn ioctl functions, and most applications work unmodified. A few differences exist, while memory mapped playback is -supported natively and in -.Tn Linux -emulation, memory mapped recording is -not due to -.Tn VM -system design. +supported natively and in Linux emulation, memory mapped recording is not due +to VM system design. As a consequence, some applications may need to be recompiled with a slightly modified audio module. See