From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4126EC9830E for ; Sat, 26 Sep 2026 01:06:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type: Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date :Subject:Cc:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=uPh7h4QVBO0+zLyzuNTJsDnUZi453ATtVOhNG9pw0Zg=; b=fuFZM0YNswkOOsdprjHYtOE+GC qaHN4eDp19qBOx9lhg6clnRD6vtbWkTxyFcJIJAMhAxGby/54bHkg2V6KYbemKXSROZyr0tmEPEmA wLXZX7KF18j6aHULsicpBHvTdPo2wamfm12ISCEq6FcTtXiR/rcuxFVuXLiiMtpWKh/SaHRjwfx3i lvgw52f83TnmqlR6Q1MAbl1GWJrgJT0EZjm3wY08xOSoC4LpWi1xIjAq0WMg/0+UfrGqvjEdzDa+/ 67xKYDthka/R0oE+nZ8aqmfpXV0+MaoaSiA649nBbzIO/ZzY4QdwqNHhJAwzM1Cp6jB33802OAjmy 7FqXHnFA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xAGrr-0000000Empm-3Wn6; Sat, 26 Sep 2026 01:06:19 +0000 Received: from mail-pj2-x0d.google.com ([2607:f8b0:4864:39::d]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xAGro-0000000Emox-0yJp for linux-mediatek@lists.infradead.org; Sat, 26 Sep 2026 01:06:17 +0000 Received: by mail-pj2-x0d.google.com with SMTP id d9443c01a7336-2df8bb777e4so5443245ad.3 for ; Fri, 25 Sep 2026 18:06:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1790384775; x=1790989575; darn=lists.infradead.org; h=content-type:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=uPh7h4QVBO0+zLyzuNTJsDnUZi453ATtVOhNG9pw0Zg=; b=hEVFZv0eQKmIGUmyNPAwFSS3Y+KpdqWvh7RSUoSaCW/C8h2ysPWEkDAnZ+g9DiZI0r s6fWq7UjzbRp3YP+E35EIVZxXbGOSlP0v6JHvMN1GNBH2Kje/XUX+nRM5e5tOOgT7r3G g0HoZ5R5G2hgRQUsvt49Q/mBZ2H6GX66AScN7nXwJdRzDzxLqgYRn6geroRjAMNaOVXe CJWTNreLg/L3j2IK3xpZDfn8yLo5vzEvqzWkqdZxdlROqvNqMjJEdGDIFugDmh6q1hsK tN3YxmMC/rW83aF+Vfzx4rY9MPFulOxIKIUsoS37gG8EevbOwnWW/hPjjLm5F7VDlpEH 94IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790384775; x=1790989575; h=content-type:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=uPh7h4QVBO0+zLyzuNTJsDnUZi453ATtVOhNG9pw0Zg=; b=SzJ9cfEncBc5ONy1GGTfAhEU5KdYSltq9DMYcT5M7iGRKhpIeGpIDVKMvoPORvOb3H XEyI6y4T+a+4d1Fv3p2+dLwMiWx8k4TyCttmUf7fjYeY7yqKp8J8h3H2rOKnnk9U+M9e 9W9PAB8QH/Pq6lapmcbdk9d9juDaCzL02JaUMC21KNFtMjcWRyZmr6/C4+AiHvq7Tg1g zk7IdIoEwvt9V/clFa3qrSQNuInHQvSAM3+ZAV1m5ad7Jy0FgePj12Jlx7sckHE1JkPX teqiMvDDZw/h+QW7E5zMcaYH7Yv2MbQh+20Sa1GA5/E7m/BWq1AouYwSu7WUa7UjunWl eeVg== X-Forwarded-Encrypted: i=1; AKwUvBz1c06miSzxrAKrv3zQB0G0g7OnWfQljRs5NJT1VIXp+xkM9NMln5daI50AfKwcZXLb1XwlsCF12QbiVz2h1A==@lists.infradead.org X-Gm-Message-State: AFuF++nXCWqqFgLYyivU372800XJkMEmvWb4/LeRP7FVwKSuG0xFrWrd 98ndF1pgPOi0NuaUGj2CNEou6klD1ZTgCaz9SIzdIUUpEmdKhqDEZULp X-Gm-Gg: AYBFou1D/V0vpKaWbUjZ+nuFovTcnIlseDg4Ro8m7KlN5v5RPrb1ckttnlkVfVLqLlp gxkX5XsIe6uHhDlvw3XCKnBOav8kVDlA0qoZMOCfCvdlwhfxV8htkWDYdyjywJpMJ8bDLUsvxky DdiTUFDKaRoFi9q0t8RPZrqECEtNXTuiaWkojSGpvbPW8RtZJIpqFdnd+CuS1OXih+qBuRqnPbm 7rIdjgy6qRsO3EHH3PHMXc1bU/F2mZ94AZR7u/6xEQvTiKsw2GNd7t9dUJUzTbT0bd2N3lXz5NP XWd2JVVMzeBJUXwTEevxdHhaqz3degxbXA5d7hw3Zxcdouree7Z8UOZmn6ShStsh8jwS9FucEus BLvqlvozAhcPw4d05tmKb5MnWJSE7pxwy98RSpldVvu72tXmeA7IRLZligqgBjfansm/9TjFW0a xMxaDRQnwv285jgR4wKRoKl2nzMpg05fjJzuggFxWj/5A+kdZYds/h8W/EeDvRQjd387R0wv7ZU baQwJ3iUpTxwxCcBopyq1aPfHVMOgfH36cKvPqjR7wz/A/1wttmGWeOxRqzH/oLp8AdYgeI7ihp ck3d4zaDLjEHY+FJAf97zpel3/Ts0OCtTluJvvL9hncEjSAp4tM= X-Received: by 2002:a17:903:245:b0:2dd:8e7d:90f7 with SMTP id d9443c01a7336-2df7da6101cmr56469765ad.9.1790384774750; Fri, 25 Sep 2026 18:06:14 -0700 (PDT) Received: from setsuna.localnet ([2403:581e:d87e:0:fc2d:ed31:e80e:412d]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2df913e032bsm17424215ad.27.2026.09.25.18.06.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Sep 2026 18:06:13 -0700 (PDT) From: James Calligeros To: Mark Brown Cc: Martin =?UTF-8?B?UG92acWhZXI=?= , Liam Girdwood , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Sven Peter , Janne Grunau , Neal Gompa , David Rhodes , Richard Fitzgerald , Jaroslav Kysela , Takashi Iwai , Ulf Hansson , Amit Kucheria , "Rafael J. Wysocki" , Lars-Peter Clausen , Vinod Koul , Matthias Brugger , AngeloGioacchino Del Regno , Shenghao Ding , Kevin Lu , Baojun Xu , Sen Wang , James Schulman , asahi@lists.linux.dev, linux-sound@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, patches@opensource.cirrus.com, Takashi Iwai , linux-mediatek@lists.infradead.org, Hector Martin , Sasha Finkelstein Subject: Re: [PATCH 16/28] ASoC: apple: Add macaudio machine driver Date: Sat, 26 Sep 2026 11:06:02 +1000 Message-ID: <6dv6M3LAS9mol5fvC8Ie-w@gmail.com> In-Reply-To: References: <20260920-macaudio-v1-0-741cc20a74e5@gmail.com> <20260920-macaudio-v1-16-741cc20a74e5@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260925_180616_270102_84F10155 X-CRM114-Status: GOOD ( 18.53 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Hi Mark, On Tuesday, 22 September 2026 7:38:54=E2=80=AFpm Australian Eastern Standar= d Time Mark Brown wrote: > > +static void macaudio_vlimit_update(struct macaudio_snd_data *ma) > > +{ > >=20 > > + > > + /* Check that *every* limited control is locked by the same owner */ > > + list_for_each_entry(kctl, &ma->card.snd_card->controls, list) { > > + if (!snd_soc_control_matches(kctl, volume_control_names[ma->cfg->amp= ])) > > + continue; >=20 > This is used from the volume limit timeout work which doesn't hold the > controls_rwsem, userspace can add or remove user controls which would > change the list so the work needs to lock the controls list. >=20 Would it be sufficient to scoped_guard the controls_rwsem wherever we use this pattern? > > +static int macaudio_dpcm_hw_params(struct snd_pcm_substream *substream, > > + struct snd_pcm_hw_params *params) > > +{ > > + struct snd_soc_pcm_runtime *rtd =3D snd_soc_substream_to_rtd(substrea= m); > > + struct macaudio_snd_data *ma =3D snd_soc_card_get_drvdata(rtd->card); > > + struct macaudio_link_props *props =3D &ma->link_props[rtd->dai_link->= id]; > > + struct snd_soc_dai *cpu_dai =3D snd_soc_rtd_to_cpu(rtd, 0); > > + struct snd_interval *rate =3D hw_param_interval(params, > > + SNDRV_PCM_HW_PARAM_RATE); > > + int bclk_ratio =3D macaudio_get_runtime_bclk_ratio(substream); > > + int i; > > + > > + if (props->is_sense) { > > + rate->min =3D rate->max =3D cpu_dai->symmetric_rate; > > + return 0; > > + } >=20 > It feels like this DAI ought to have separate ops... Also, for the > sense link will we definitely already have a rate set up? AIUI, the cpu rate should always be set up by the time we hit this path as it is only taken when setting up the VISENSE FE (after the playback stuff is already set up).