From nobody Fri Oct 2 03:38:05 2026 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AA65C386C21 for ; Wed, 5 Aug 2026 14:45:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785941108; cv=none; b=LZrUEdXQhmO/fejgWrBGvXyfi1mu/JIqKZsgasGSrp+SZpMxXha7rlORLIiJTxEOYgUJEM6rnWtEoeknJ2/yCZzzMPX2zFKY22XL4EaVbc2Sr3wAcCy+Fl9Nks1H9vzRw3ELCCGDVWlLrhhUDqwA3aTS/V6asf9K1ByRWONRv0A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785941108; c=relaxed/simple; bh=u9ViO5wzsanGUP0DJvwXSLDltZEdr3dIfh9vZYYpQlk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=hQnykoWYRt7sbkIl5bC+nYA5aorSLXY+BVXeIqocdlgwaH/O6Wz4kgyfOGjxIGF7O7PT00N1IPpPn0cXKOlIHE6tGNVtbkZtQZt6Vt0Wa0uQlmGh/DzTi1QKV6qecHxhrnfTpgdwRg3sKcsYr3IgYw5ebZ2xL3p7SXOk6pbr1HE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=dHVoFbE/; arc=none smtp.client-ip=209.85.221.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="dHVoFbE/" Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-47f93b2fe4cso748694f8f.0 for ; Wed, 05 Aug 2026 07:45:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785941102; x=1786545902; darn=vger.kernel.org; h=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=dp99Lm03C4UFOochSrutYLTEc1y6+PyuNbkXC4zIRQc=; b=dHVoFbE/2nDNS+YkLwHCcBI05PwIgFpsE9Rx3TZDzL+pEsyhgUE7y5jTUp5hreb1ee wGl8TykMdHK7O3VR6hkCeFC6Xh33heNMFRHAg4KCrIfK3Vr6jZWYDgAUlvSbPhdDGjvn uOcb0sAZk1bq/JvXLwRWzsP1ta2Qq1idhVPmz86xy0EvuH2KKDy4NBGlwiOt9KUXybjT xlZr8jbJYpCIFuVguFmG+f4RE/ew7vuljl4LQlVYRQd35QVo9TIIGcP8ccjByZTp1DrB rUtdwSsS1llN4dlM3c4QkRgGd9jQG96QYVhDNOzFqxbMUtwAX/rgTQmQKtoY9W59Q/GT yPSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785941102; x=1786545902; h=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=dp99Lm03C4UFOochSrutYLTEc1y6+PyuNbkXC4zIRQc=; b=JuLMfNckuAHwdBSK7ZomAdZ1wunrJymGPqHx/HRMrq31QOCzAfPMCHG6WZIKirZtk+ 4H8/uqYng34xT48y5wmEKYqpqRoN6xkcUl1LL2VmDd1YVnR/qbBK0BmrTFWbEVLPVapd CQQy+tce0gHPW9/l9eSFlNVvpwUQ+Irv0pCLlQF0SZtq0xJCJj4OPLvXqtHt2q/nFT2Z PuE3cyFt9Mec8/pYowwQyyKnSQMmUyYAk8YA9LuGoj7MetU2i/xsNFVdvtRfWSeGDaNe +XiM9ytk1SRD+z1+LvkbiwBnwB5BZyjR6UDKRzVfEA9teurckMHf16vpB047pbnTIUvG Yf5Q== X-Forwarded-Encrypted: i=1; AHgh+Rrq4nksSwiLoLLqmIh2KZsZQ3GGUuAxmNsQJcESOjFJX/ZCMQMo4kIzgoctV03EFOd9xGyzOxtaHzbv+Ck=@vger.kernel.org X-Gm-Message-State: AOJu0YyOAa9UF9wfQC8cKCeoqQDM09Z6P1Zl52aruQ5Fh/hoTWAUTfnY 1ib5gf37YaqRpGxOQRyDM4SCGy/znV7lPTfey4eCpmAPeMQYqkDhwVch X-Gm-Gg: AR+sD11ES1W6y34OEMwmjvDSp+3xtqM/+Q6XzcKr/1q4Go7hKpkyHW9rrCO+mR0xfGy aw6OtAI8wfgLZT0eQL8amI446VEsbSYC6qWCZIluAFvSmxu2e7c7s2zddgAXoJAFKEsbyA/j5+3 pB2RYN1TUmeheQ5A8CdFc1EG52wRBZWVkZWU4H40sbFoqwhlt+SrJC2jRDSK8SzCyzfbmG1DO+0 SBbUlK4H6EVXXM371JNSeLFr7glxH640GSuX6MSrWW5LkrUmS2A8A0lZcJaRG1JVr74KwaukmQF 7af2UFqsiKwTjiV5zPTIzbfPU81Ea4cr+uCUiO9Qd4hDtyEkhQ1pzu4YTBUnzDcgMq7FToaXSSf E6en1T4LvT/lm3O9x92SXbN7A3P5uwRzfQF0KtBy36HO0HElHwuSFrbhaxpNc2o4ldzWuu6ksNN JqFz8nVV/OnveYMM2u1wHO3shIgKWfR2xlVfg+j+RAiWQRyklAZAs4wiCdshTAUArPi6f2NUlz7 OOMvTtiXw== X-Received: by 2002:a05:6000:4803:b0:46e:230f:d095 with SMTP id ffacd0b85a97d-47fec511cedmr13819861f8f.7.1785941102360; Wed, 05 Aug 2026 07:45:02 -0700 (PDT) Received: from localhost.localdomain ([95.43.220.235]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-47fec23e250sm10499376f8f.26.2026.08.05.07.45.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Aug 2026 07:45:01 -0700 (PDT) From: Ivaylo Dimitrov To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Jakub Kicinski , Alex Deucher Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Ivaylo Dimitrov Subject: [PATCH 1/2] ASoC: cpcap: Remove modem-specific voice call support Date: Wed, 5 Aug 2026 17:44:33 +0300 Message-Id: <20260805144434.1290261-2-ivo.g.dimitrov.75@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260805144434.1290261-1-ivo.g.dimitrov.75@gmail.com> References: <20260805144434.1290261-1-ivo.g.dimitrov.75@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Revert commit 0dedbde5062d ("ASoC: cpcap: Implement set_tdm_slot for voice call support"). The reverted implementation was added to support a modem driver that directly locates and configures the codec DAI using snd_soc_find_dai() together with snd_soc_dai_set_sysclk(), snd_soc_dai_set_fmt() and snd_soc_dai_set_tdm_slot(). The DAI configuration should instead be provided by the ASoC DAI link, allowing the machine driver or DT to describe the interface rather than having a client driver configure the codec directly. Remove the ad hoc voice call implementation. Signed-off-by: Ivaylo Dimitrov --- sound/soc/codecs/cpcap.c | 127 +-------------------------------------- 1 file changed, 2 insertions(+), 125 deletions(-) diff --git a/sound/soc/codecs/cpcap.c b/sound/soc/codecs/cpcap.c index 6b80c455b074..987c63fc5fa4 100644 --- a/sound/soc/codecs/cpcap.c +++ b/sound/soc/codecs/cpcap.c @@ -26,14 +26,6 @@ /* Register 9 - CPCAP_REG_INTS2 --- Interrupt Sense 2 */ #define CPCAP_BIT_PTT_S 11 /* Push To Talk */ =20 -/* Register 512 CPCAP_REG_VAUDIOC --- Audio Regulator and Bias Voltage */ -#define CPCAP_BIT_AUDIO_LOW_PWR 6 -#define CPCAP_BIT_AUD_LOWPWR_SPEED 5 -#define CPCAP_BIT_VAUDIOPRISTBY 4 -#define CPCAP_BIT_VAUDIO_MODE1 2 -#define CPCAP_BIT_VAUDIO_MODE0 1 -#define CPCAP_BIT_V_AUDIO_EN 0 - /* Register 513 CPCAP_REG_CC --- CODEC */ #define CPCAP_BIT_CDC_CLK2 15 #define CPCAP_BIT_CDC_CLK1 14 @@ -239,7 +231,6 @@ struct cpcap_reg_info { }; =20 static const struct cpcap_reg_info cpcap_default_regs[] =3D { - { CPCAP_REG_VAUDIOC, 0x003F, 0x0000 }, { CPCAP_REG_CC, 0xFFFF, 0x0000 }, { CPCAP_REG_CC, 0xFFFF, 0x0000 }, { CPCAP_REG_CDI, 0xBFFF, 0x0000 }, @@ -1391,121 +1382,8 @@ static int cpcap_voice_set_dai_fmt(struct snd_soc_d= ai *codec_dai, return 0; } =20 - -/* - * Configure codec for voice call if requested. - * - * We can configure most with snd_soc_dai_set_sysclk(), snd_soc_dai_set_fm= t() - * and snd_soc_dai_set_tdm_slot(). This function configures the rest of the - * cpcap related hardware as CPU is not involved in the voice call. - */ -static int cpcap_voice_call(struct cpcap_audio *cpcap, struct snd_soc_dai = *dai, - bool voice_call) -{ - int mask, err; - - /* Modem to codec VAUDIO_MODE1 */ - mask =3D BIT(CPCAP_BIT_VAUDIO_MODE1); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_VAUDIOC, - mask, voice_call ? mask : 0); - if (err) - return err; - - /* Clear MIC1_MUX for call */ - mask =3D BIT(CPCAP_BIT_MIC1_MUX); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_TXI, - mask, voice_call ? 0 : mask); - if (err) - return err; - - /* Set MIC2_MUX for call */ - mask =3D BIT(CPCAP_BIT_MB_ON1L) | BIT(CPCAP_BIT_MB_ON1R) | - BIT(CPCAP_BIT_MIC2_MUX) | BIT(CPCAP_BIT_MIC2_PGA_EN); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_TXI, - mask, voice_call ? mask : 0); - if (err) - return err; - - /* Enable LDSP for call */ - mask =3D BIT(CPCAP_BIT_A2_LDSP_L_EN) | BIT(CPCAP_BIT_A2_LDSP_R_EN); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_RXOA, - mask, voice_call ? mask : 0); - if (err) - return err; - - /* Enable CPCAP_BIT_PGA_CDC_EN for call */ - mask =3D BIT(CPCAP_BIT_PGA_CDC_EN); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_RXCOA, - mask, voice_call ? mask : 0); - if (err) - return err; - - /* Unmute voice for call */ - if (dai) { - err =3D snd_soc_dai_digital_mute(dai, !voice_call, - SNDRV_PCM_STREAM_PLAYBACK); - if (err) - return err; - } - - /* Set modem to codec mic CDC and HPF for call */ - mask =3D BIT(CPCAP_BIT_MIC2_CDC_EN) | BIT(CPCAP_BIT_CDC_EN_RX) | - BIT(CPCAP_BIT_AUDOHPF_1) | BIT(CPCAP_BIT_AUDOHPF_0) | - BIT(CPCAP_BIT_AUDIHPF_1) | BIT(CPCAP_BIT_AUDIHPF_0); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_CC, - mask, voice_call ? mask : 0); - if (err) - return err; - - /* Enable modem to codec CDC for call*/ - mask =3D BIT(CPCAP_BIT_CDC_CLK_EN); - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_CDI, - mask, voice_call ? mask : 0); - - return err; -} - -static int cpcap_voice_set_tdm_slot(struct snd_soc_dai *dai, - unsigned int tx_mask, unsigned int rx_mask, - int slots, int slot_width) -{ - struct snd_soc_component *component =3D dai->component; - struct cpcap_audio *cpcap =3D snd_soc_component_get_drvdata(component); - int err, ts_mask, mask; - bool voice_call; - - /* - * Primitive test for voice call, probably needs more checks - * later on for 16-bit calls detected, Bluetooth headset etc. - */ - if (tx_mask =3D=3D 0 && rx_mask =3D=3D 1 && slot_width =3D=3D 8) - voice_call =3D true; - else - voice_call =3D false; - - ts_mask =3D 0x7 << CPCAP_BIT_MIC2_TIMESLOT0; - ts_mask |=3D 0x7 << CPCAP_BIT_MIC1_RX_TIMESLOT0; - - mask =3D (tx_mask & 0x7) << CPCAP_BIT_MIC2_TIMESLOT0; - mask |=3D (rx_mask & 0x7) << CPCAP_BIT_MIC1_RX_TIMESLOT0; - - err =3D regmap_update_bits(cpcap->regmap, CPCAP_REG_CDI, - ts_mask, mask); - if (err) - return err; - - err =3D cpcap_set_samprate(cpcap, CPCAP_DAI_VOICE, slot_width * 1000); - if (err) - return err; - - err =3D cpcap_voice_call(cpcap, dai, voice_call); - if (err) - return err; - - return 0; -} - -static int cpcap_voice_set_mute(struct snd_soc_dai *dai, int mute, int dir= ection) +static int cpcap_voice_set_mute(struct snd_soc_dai *dai, + int mute, int direction) { struct snd_soc_component *component =3D dai->component; struct cpcap_audio *cpcap =3D snd_soc_component_get_drvdata(component); @@ -1526,7 +1404,6 @@ static const struct snd_soc_dai_ops cpcap_dai_voice_o= ps =3D { .hw_params =3D cpcap_voice_hw_params, .set_sysclk =3D cpcap_voice_set_dai_sysclk, .set_fmt =3D cpcap_voice_set_dai_fmt, - .set_tdm_slot =3D cpcap_voice_set_tdm_slot, .mute_stream =3D cpcap_voice_set_mute, .no_capture_mute =3D 1, }; --=20 2.39.5 From nobody Fri Oct 2 03:38:05 2026 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 84E6C386C08 for ; Wed, 5 Aug 2026 14:45:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785941109; cv=none; b=q1PHIXDIowQkmH4p2iwFiRWZyC5AnZj2A9+fEsn1Q2wYo8iNsPcdZK3ZcRwbKM6GfNp91jwoYAy4WPEz6VuHbHBrQ53+XsQECt6CD4LiX1xpKM3HtWPLXyOIHLcCwO0dVK8sS84fANCc2OoDdrBJj0zaCLgaqvRwz4pdVABqUII= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785941109; c=relaxed/simple; bh=IWIxqWLChreh1REPz+wiPgkh4iJ/tVYEzkYS73BC5Bo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=iaMN2toq3T0KmnCzZuK6MUm9e7S3gDSiAT1mqghO8pgZiFXnqiwqraoTLMCsVr/SNDse3DRj6An+smLlPbyQgORSdSiKpHRe1qGeMMEEpqDIRHKXY32PCoPIzgXtlNS7t9EDggaN9Ed5DBARQBPjltM6stttsPjolNkzBrAeocc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=QsSEs2zR; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QsSEs2zR" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4953e04ef16so10437225e9.2 for ; Wed, 05 Aug 2026 07:45:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785941104; x=1786545904; darn=vger.kernel.org; h=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=J6tKHCTLzGBd6z5Uglm3lhwjOU2WOgSW5sBwTzW4T9g=; b=QsSEs2zR4vsb4grTXGcXhrmRLkqRWYQJs+6Ck4osdAxHVrTGBZexmGHL8Egd+vicPd Fl5dPc2UNUjP/W9d4m/W/fkGz4gNDYOsw6TF+B6KwKYEaU2IQ947+9VvTq6SE0kqqzUg J+imTb/TDiUebd4MU9ke5Kq6T2KCd+9pGm/Ffntg5zdkngbg++DPdK/yGs/89sKFzTQR Cf0rPK5pFHzmIGKZTzhKWz0j9kh7fpnmRaLgbevOkP4DKvZIAN8Y+VlEgq/kXIa5u6Q1 L7S+zWnUYE8jOXIp3DStFnt1cVXY1yuDPZtYnq1NRk64LtEenWik2klrQARTPdTJ56rk 7qsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785941104; x=1786545904; h=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=J6tKHCTLzGBd6z5Uglm3lhwjOU2WOgSW5sBwTzW4T9g=; b=cC6ggSVzPtiaKBsEEElM/Kl71IJC0JTpvMjCajJfa+GSrdlfh4YmXK8CyBMuXDsAEh AwCzti4gB+a637Apodls1FS0Q8MM6wH8nv8Ihr/3fmr2Va0LJuZmGon8VEi660GxoTf9 L5Gm14J1LwZmwuR4Bl6Xr5NR9bWFikcAwHmRCI/D9CD84AKXtTgbxNDSJskZ83V9H9z2 dOe13umWWijDSI8tjqwMEklqucODepy4TeS6zrfsI4Ay4aXur6Lc3EVfgXrcr81nrred vEbhOsiYmKGqCuEN09XcIkJCOpJadmxV5norNlUcqeVSL7+T3H5Db/KeCdwM+ujvxty6 8zng== X-Forwarded-Encrypted: i=1; AHgh+Rr6WvgmumA3asJPmsk0acC3odFo13HthMhHhro32gNXdNkrn2RTFm91eDw6lMNdv3xQTJxL2ly1x1P2kbQ=@vger.kernel.org X-Gm-Message-State: AOJu0YyJvAwfU8S7I/8mML1a95X25hK11A7E1rWn96Po70KhKNQMTbyJ /0rosYfrxp0PVhdcH+je+E4LnngWw/XkQc7qHIdqAoRlHtRX4wIYZyuw X-Gm-Gg: AR+sD13Pux349gBGRhCO9SBgAsiIMvy41IWpVZoXLqgmzoERac2ycMc5A1V5T2O2Y3P jC6nj2GZCyfPFGjSCJUrksGMuD2PUsbn/Eubdz8AOI9OHTF5obOgVShwmvbLDBPPv+MyntAdRNp a/rybHcAMZsxVqywx2AbA/5vzj0WsRnxe/Ob9o+s+bIuzEYnaxOu4dD1eqoxjJrxKQqRvJujKv3 SMpk1GGcH2XQV2zK1nKwqDi4XINhaJJK6O/tAQkbfULEbBwUx5u/lUJJ6fL2iyBYHMTWmbAaR+Y 0Zuuyj6FMpsVgYlxo0Atea4eG7hg+sQQ2X/LgeeOxpuX8STVDtq1K0ngfQ9np1Y8f5EahEMMfp7 oehwIb27XL67Zu18L4Qys7vGWaW8brHYZJSh1E/Gs+5DS6wNcOkPwrfr6+PdX2xD6MqXf3ENJIg pu6rBpvt4LFvormXi6dBG1fwqgXWQtQavXhMIC/AqOd5Nm2+4Jvfdkp05rsRZSxQW1CpvvpF7bz QPPYst4YQ== X-Received: by 2002:a05:600c:4ec8:b0:496:cb48:5eb8 with SMTP id 5b1f17b1804b1-4994e7d9f1cmr85862815e9.15.1785941103604; Wed, 05 Aug 2026 07:45:03 -0700 (PDT) Received: from localhost.localdomain ([95.43.220.235]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-47fec23e250sm10499376f8f.26.2026.08.05.07.45.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Aug 2026 07:45:03 -0700 (PDT) From: Ivaylo Dimitrov To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Jakub Kicinski , Alex Deucher Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Ivaylo Dimitrov Subject: [PATCH 2/2] soc: codecs: cpcap: set voice DAI format as specified in DT Date: Wed, 5 Aug 2026 17:44:34 +0300 Message-Id: <20260805144434.1290261-3-ivo.g.dimitrov.75@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260805144434.1290261-1-ivo.g.dimitrov.75@gmail.com> References: <20260805144434.1290261-1-ivo.g.dimitrov.75@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" We can have port endpoints with different DAI formats, make sure those are actually set-up Signed-off-by: Ivaylo Dimitrov --- sound/soc/codecs/cpcap.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/codecs/cpcap.c b/sound/soc/codecs/cpcap.c index 987c63fc5fa4..fc41e1547bda 100644 --- a/sound/soc/codecs/cpcap.c +++ b/sound/soc/codecs/cpcap.c @@ -1256,6 +1256,7 @@ static int cpcap_voice_hw_params(struct snd_pcm_subst= ream *substream, struct snd_pcm_hw_params *params, struct snd_soc_dai *dai) { + struct snd_soc_pcm_runtime *rtd =3D snd_soc_substream_to_rtd(substream); struct snd_soc_component *component =3D dai->component; struct device *dev =3D component->dev; struct cpcap_audio *cpcap =3D snd_soc_component_get_drvdata(component); @@ -1289,7 +1290,7 @@ static int cpcap_voice_hw_params(struct snd_pcm_subst= ream *substream, return err; } =20 - return 0; + return snd_soc_runtime_set_dai_fmt(rtd, rtd->dai_link->dai_fmt); } =20 static int cpcap_voice_set_dai_sysclk(struct snd_soc_dai *codec_dai, int c= lk_id, --=20 2.39.5