From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.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 AA9193BCD16 for ; Thu, 6 Aug 2026 06:14:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785996851; cv=none; b=IFkWBEWYbmEn9VkHO8n5OE+e0lzIeND6wZnEXEiIY3fjwVrGv8pr49P+Xvwb/aFZzaYXT98i+Wn+n5cuIY7EFREaxy5Lu8AMAobeoYX2L3I2kFulHy3jhm+dk96o4MD36rW3qjlXeq+Ws3AG+ZTbYVcx+RhXNoJwhFzOzYq2ya8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785996851; c=relaxed/simple; bh=hrW9L4xaSSpHQn+wFbaOWOl5DjkeO3GEbDUEZZaf9g8=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=Xg09xdCFje5+++0DEn6UkBtqr9+9WlZUyWPiqNc8y9l+mQYi0oGw7HQfCA8cBBjeRaQ7egwvSgUkeXz5dpIDihM2QyAzrenovkAtOrccNJVhGobtOd3t1iWmg2B+9mSsiuj08iZx2A+vvdC2VY2lvaAqGbXKeVUjxE/mCDHoOpA= 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=ft+G6f0t; arc=none smtp.client-ip=209.85.221.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="ft+G6f0t" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-47fe377a217so1174784f8f.1 for ; Wed, 05 Aug 2026 23:14:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785996845; x=1786601645; darn=vger.kernel.org; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to :content-type; bh=OijuLZPhej2SFByujucev5iJJVa0B0Uo0liYiFLXj+Q=; b=ft+G6f0tHCb7ugM30sJ+qA9xP/lSlztZ6VWI3NsXzZCwX1KbGyoQuNd4RjSnyIYzHH 1DrgAd9DZ5tCfUTqu156ZSQ6Tss9gHkWYNNnLLOJXKVF0M4AFHAOKgi6lZFk5E7aTT7p cc8XG4/HRAc7B9LwX0pWTcBlkYaD3bBGQpYiWWcj9HLprlGp+nJZYLmN2Qy4iM+LRSG6 QdHSiB5yM42yKS4ARogHiwxQlBOESx54qjSuwg8wRoQ5L8dsPfGUGpoadfIJlAdRMyIL SI3/lcBJV59/gXANnwS/eS9UaPJPJE8jJoOhQ1Hb1UGnpIWTO3e0imyOBTv2BaU6sBqp 1NeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785996845; x=1786601645; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=OijuLZPhej2SFByujucev5iJJVa0B0Uo0liYiFLXj+Q=; b=gy8joL6+VOvBKAE3fSN5dqq3fp/Nso4YIQAEm5OO2i/g21ZjzOVbUNEnx5kkopQm6T GEF09qRyRzWADszI3ex2OH2HhkhnoZDRGhU21SDQjWJagJgRYpURxnjdh4BPn9/4jA9f rV/ca+K69ATIxY/ONN5Q5SAKYF0xAPLLukCKSzh4KWfxisZsvKJstBqo2sXVwZq0WkWU yi3IOVBh82JFw1/hSq4CYTQHuswBhiu5E3FMgtpwmxQPCmd+Ck7yVyUYpcsUww7HXHfF d4QrEBw+ieQl/GNa5KAFqNZVMO1C8Abr05KKse1d9JtnKolqMsntgSQPaOOewIfgf5Vs nzHw== X-Forwarded-Encrypted: i=1; AHgh+RrDDWCbjoICEYk5GOsx3SKGBTrqZuWZsetkl+5ZOT7CvRGuS5XLkEJEdHIu/NIfoZtCdnjwq/A6KRaWKkk=@vger.kernel.org X-Gm-Message-State: AOJu0YxV0pJoC1xAolIpALdrTSkBI3RROFMWqVDaqQRontDCJ1tUqjFb pLLqGB+OrCaa4Rp1u+4HE8fJfXxKOh4e3iy8Tli49pYiblu+N8N0iwWP X-Gm-Gg: AR+sD13Xb9IXVXm1Tu90nKFPnTPEad4pXiNKhwKBQzrP1f+hxYWjlrzF/aUqYdc+Jjn 0ebAMMrquxB2CaVe7bAoSCb6yWUoSLG2qSWvfayNCVoP0HICR6F4zbZKk+0pj8p4YoLxfQogzYD Edp9fls++gkogVGewcNyJbijkO+OUyTz4lJYcQw3VYoh1qUruEUATIgBTr143Iz+HuzpoParFk8 DvlWMeI4+4YFFaf2zsOYjYXT0yOfCHGxmzdI31dJIcJ+BkSYMz9o894pEzcXttdRpygEw8tAEh2 RfS3KREOa3QTovDc9GzqyQBIUa9Wjny9mvWkpCr7v6vE9vkiTmDrA0Y7GOPPnoUwlKE5BhWaoKQ a9xgqxG4F8SIwuZhaFmGjRdAgmcwP4WTp+KBc57pcFn68BUamMxtnM0jvW72nUf6HOHIQBXuv5s u7duj5UlflEHH5+FqZOEgPKB/jDlQgcrjvh5HLBZ4JHQiTxBqeT+il82mS2tzK7VKzErNlGZyj X-Received: by 2002:a5d:5e92:0:b0:47f:f87e:6485 with SMTP id ffacd0b85a97d-47ff87e6823mr2586875f8f.15.1785996844697; Wed, 05 Aug 2026 23:14:04 -0700 (PDT) Received: from [192.168.1.10] ([95.43.220.235]) by smtp.googlemail.com with ESMTPSA id ffacd0b85a97d-47ff79b32cbsm3465954f8f.10.2026.08.05.23.14.03 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 05 Aug 2026 23:14:04 -0700 (PDT) Message-ID: <75ab739a-b70c-49ab-af90-03d40fc3b5ff@gmail.com> Date: Thu, 6 Aug 2026 09:14:02 +0300 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] ASoC: core: Support INPUT and OUTPUT DAPM widgets in DT To: Mark Brown Cc: Liam Girdwood , Jaroslav Kysela , Takashi Iwai , linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org References: <20260805145625.1290628-1-ivo.g.dimitrov.75@gmail.com> <1cddd05b-804b-4d91-a5ff-7c5e07903610@sirena.org.uk> Content-Language: en-GB From: Ivaylo Dimitrov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 5.08.26 г. 20:23 ч., Mark Brown wrote: > On Wed, Aug 05, 2026 at 08:16:10PM +0300, Ivaylo Dimitrov wrote: > >> I have an out-of-tree audio-graph-card2 based machine description for >> Motorola OMAP4 devices using the CPCAP codec together with an external modem >> codec. Without modelling the remote endpoint as a DAPM INPUT/OUTPUT widget, >> the DAPM graph is incomplete and one side of the codec-to-codec link does >> not become active as expected, so runtime PM does not resume one of the >> devices in the link during a call. > > Why is it appropriate that the remote endpoint be a raw widget of this > non-specific type? > >> I used INPUT/OUTPUT because they appear to be the generic DAPM endpoint >> widgets for this type of digital connection. If there is a more appropriate >> existing widget type for modelling such a remote DAI endpoint, I'd be happy >> to use that instead. > > If it's a DAI to DAI link you need a custom machine driver, we don't > have anything like the infrastructure to put DAI<->DAI links in DT. > These should be using AIF widgets. Thanks for the pointer. It turned out that everything needed was already there; I had simply misunderstood the codec2codec example (or perhaps it could be a bit clearer). The missing piece was to route the modem DAI stream widgets to the CPCAP AIF widgets in the audio-graph-card2 routing: /* codec2codec */ "Voice RX", "Voice Call Playback", "Voice Call Capture", "Voice TX"; With that in place, the codec-to-codec DAPM graph is complete and voice calls work correctly, so there is no need for my DT parser patch after all. I'm sending this follow-up mainly as a reference in case someone else runs into the same issue in the future. Thanks again for pointing me in the right direction. Best regards, Ivo