From: Mark Brown <broonie@kernel.org> To: "Martin Povišer" <povik+lin@cutebit.org> Cc: Liam Girdwood <lgirdwood@gmail.com>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>, Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>, alsa-devel@alsa-project.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Mark Kettenis <kettenis@openbsd.org>, Hector Martin <marcan@marcan.st>, Sven Peter <sven@svenpeter.dev> Subject: Re: [RFC PATCH 0/5] Apple Macs machine-level ASoC driver Date: Thu, 31 Mar 2022 13:34:22 +0100 [thread overview] Message-ID: <YkWfziQzprEsWL72@sirena.org.uk> (raw) In-Reply-To: <20220331000449.41062-1-povik+lin@cutebit.org> [-- Attachment #1: Type: text/plain, Size: 1706 bytes --] On Thu, Mar 31, 2022 at 02:04:44AM +0200, Martin Povišer wrote: > I put together a machine-level ASoC driver for recent Apple Macs (the > ones with ARM64 SoCs) and want to gauge opinions. This would be a bit easier to review with a description of the hardware. > Commit 2 adds a new ASoC card method (filter_controls) to let the card > prevent some codec kcontrols from being visible to userspace. For example > the TAS2770 speaker amp driver would be happy to expose TDM slot selection > and ISENSE/VSENSE enables which is ridiculous. I am all ears on how to > make the patch acceptable to upstream. The broad issue here is that what you consider ridiculous someone else might have some bright ideas for configuring dynamically - if things are being exposed for dynamic configuration it's probably because someone wanted them, if the control is genuinely useless then it should just be removed. Rather than getting in the way of people's policy arguments about how to set things we expose them to userspace and let userspace worry about it, usually with the help of UCM files. The general userspace model is that people interact with their sound server more than the hardware card. This is also helpful for people developing use cases, it means they're not having to get the kernel rebuilt to tune things. The TDM swap thing you're mentioning looks like it's a left/right selection which people do use sometimes as a way of doing mono mixes and reorientation. The ISENSE/VSENSE is less obvious, though it's possible there's issues with not having enough slots on a heavily used TDM bus or sometimes disabling the speaker protection processing for whatever reason. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Mark Brown <broonie@kernel.org> To: "Martin Povišer" <povik+lin@cutebit.org> Cc: devicetree@vger.kernel.org, alsa-devel@alsa-project.org, Sven Peter <sven@svenpeter.dev>, linux-kernel@vger.kernel.org, Hector Martin <marcan@marcan.st>, Takashi Iwai <tiwai@suse.com>, Liam Girdwood <lgirdwood@gmail.com>, Rob Herring <robh+dt@kernel.org>, Mark Kettenis <kettenis@openbsd.org>, Krzysztof Kozlowski <krzk+dt@kernel.org> Subject: Re: [RFC PATCH 0/5] Apple Macs machine-level ASoC driver Date: Thu, 31 Mar 2022 13:34:22 +0100 [thread overview] Message-ID: <YkWfziQzprEsWL72@sirena.org.uk> (raw) In-Reply-To: <20220331000449.41062-1-povik+lin@cutebit.org> [-- Attachment #1: Type: text/plain, Size: 1706 bytes --] On Thu, Mar 31, 2022 at 02:04:44AM +0200, Martin Povišer wrote: > I put together a machine-level ASoC driver for recent Apple Macs (the > ones with ARM64 SoCs) and want to gauge opinions. This would be a bit easier to review with a description of the hardware. > Commit 2 adds a new ASoC card method (filter_controls) to let the card > prevent some codec kcontrols from being visible to userspace. For example > the TAS2770 speaker amp driver would be happy to expose TDM slot selection > and ISENSE/VSENSE enables which is ridiculous. I am all ears on how to > make the patch acceptable to upstream. The broad issue here is that what you consider ridiculous someone else might have some bright ideas for configuring dynamically - if things are being exposed for dynamic configuration it's probably because someone wanted them, if the control is genuinely useless then it should just be removed. Rather than getting in the way of people's policy arguments about how to set things we expose them to userspace and let userspace worry about it, usually with the help of UCM files. The general userspace model is that people interact with their sound server more than the hardware card. This is also helpful for people developing use cases, it means they're not having to get the kernel rebuilt to tune things. The TDM swap thing you're mentioning looks like it's a left/right selection which people do use sometimes as a way of doing mono mixes and reorientation. The ISENSE/VSENSE is less obvious, though it's possible there's issues with not having enough slots on a heavily used TDM bus or sometimes disabling the speaker protection processing for whatever reason. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2022-03-31 12:34 UTC|newest] Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-03-31 0:04 [RFC PATCH 0/5] Apple Macs machine-level ASoC driver Martin Povišer 2022-03-31 0:04 ` Martin Povišer 2022-03-31 0:04 ` [RFC PATCH 1/5] dt-bindings: sound: Add Apple Macs sound system Martin Povišer 2022-03-31 0:04 ` Martin Povišer 2022-03-31 6:43 ` Krzysztof Kozlowski 2022-03-31 6:57 ` Martin Povišer 2022-03-31 8:17 ` Krzysztof Kozlowski 2022-03-31 8:23 ` Martin Povišer 2022-03-31 8:26 ` Krzysztof Kozlowski 2022-03-31 0:04 ` [RFC PATCH 2/5] HACK: ASoC: Add card->filter_controls hook Martin Povišer 2022-03-31 0:04 ` Martin Povišer 2022-03-31 11:34 ` Mark Brown 2022-03-31 11:34 ` Mark Brown 2022-03-31 0:04 ` [RFC PATCH 3/5] HACK: ASoC: Tolerate N-cpus-to-M-codecs links Martin Povišer 2022-03-31 0:04 ` Martin Povišer 2022-04-04 12:28 ` Mark Brown 2022-04-04 12:28 ` Mark Brown 2022-04-22 14:06 ` Martin Povišer 2022-04-22 14:06 ` Martin Povišer 2022-04-25 12:25 ` Mark Brown 2022-04-25 12:25 ` Mark Brown 2022-04-25 12:34 ` Martin Povišer 2022-04-25 12:34 ` Martin Povišer 2022-04-25 12:55 ` Mark Brown 2022-04-25 12:55 ` Mark Brown 2022-04-25 13:11 ` Martin Povišer 2022-04-25 13:11 ` Martin Povišer 2022-04-25 13:46 ` Mark Brown 2022-04-25 13:46 ` Mark Brown 2022-04-25 13:55 ` Martin Povišer 2022-04-25 13:55 ` Martin Povišer 2022-03-31 0:04 ` [RFC PATCH 4/5] ASoC: Introduce snd_soc_of_get_dai_link_cpus Martin Povišer 2022-03-31 0:04 ` Martin Povišer 2022-03-31 0:04 ` [RFC PATCH 5/5] ASoC: Add macaudio machine driver Martin Povišer 2022-03-31 0:04 ` Martin Povišer 2022-03-31 11:59 ` Mark Brown 2022-03-31 11:59 ` Mark Brown 2022-03-31 12:08 ` Martin Povišer 2022-03-31 12:16 ` Martin Povišer 2022-03-31 12:56 ` Mark Brown 2022-03-31 12:56 ` Mark Brown 2022-03-31 12:34 ` Mark Brown [this message] 2022-03-31 12:34 ` [RFC PATCH 0/5] Apple Macs machine-level ASoC driver Mark Brown 2022-03-31 13:28 ` Martin Povišer 2022-03-31 14:18 ` Mark Brown 2022-03-31 14:18 ` Mark Brown 2022-03-31 15:04 ` Martin Povišer 2022-03-31 15:36 ` Mark Brown 2022-03-31 15:36 ` Mark Brown 2022-04-22 10:43 ` Martin Povišer 2022-04-22 10:43 ` Martin Povišer 2022-04-22 11:19 ` Mark Brown 2022-04-22 11:19 ` Mark Brown 2022-04-22 11:28 ` Martin Povišer 2022-04-22 11:28 ` Martin Povišer 2022-04-22 11:33 ` Mark Brown 2022-04-22 11:33 ` Mark Brown 2022-04-22 11:44 ` Martin Povišer 2022-04-22 11:44 ` Martin Povišer 2022-04-22 12:22 ` Mark Brown 2022-04-22 12:22 ` Mark Brown 2022-04-22 12:36 ` Martin Povišer 2022-04-22 12:36 ` Martin Povišer 2022-04-22 12:44 ` Mark Brown 2022-04-22 12:44 ` Mark Brown 2022-04-22 12:53 ` Martin Povišer 2022-04-22 12:53 ` Martin Povišer 2022-04-22 13:06 ` Mark Brown 2022-04-22 13:06 ` Mark Brown 2022-04-22 13:59 ` Martin Povišer 2022-04-22 13:59 ` Martin Povišer 2022-03-31 13:28 ` Hector Martin 2022-03-31 13:28 ` Hector Martin 2022-03-31 14:33 ` Mark Brown 2022-03-31 14:33 ` Mark Brown 2022-04-05 9:31 ` (subset) " Mark Brown 2022-04-05 9:31 ` Mark Brown
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=YkWfziQzprEsWL72@sirena.org.uk \ --to=broonie@kernel.org \ --cc=alsa-devel@alsa-project.org \ --cc=devicetree@vger.kernel.org \ --cc=kettenis@openbsd.org \ --cc=krzk+dt@kernel.org \ --cc=lgirdwood@gmail.com \ --cc=linux-kernel@vger.kernel.org \ --cc=marcan@marcan.st \ --cc=perex@perex.cz \ --cc=povik+lin@cutebit.org \ --cc=robh+dt@kernel.org \ --cc=sven@svenpeter.dev \ --cc=tiwai@suse.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.