Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp1916430ybv; Fri, 21 Feb 2020 05:39:28 -0800 (PST) X-Google-Smtp-Source: APXvYqwW6FppBv7KfuIpDWzjv0Q5PogSqia4sz2fTcnkrWjebxvRkEuBLHgZH+T2JDNSSJdKvntB X-Received: by 2002:a54:488d:: with SMTP id r13mr1927290oic.115.1582292368007; Fri, 21 Feb 2020 05:39:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582292368; cv=none; d=google.com; s=arc-20160816; b=GDBWoYiHCWcYubxSsVY/GEwohlChsY5ZHyAnL+rYvIJG9ZU1aExi82y4bgGrv5/uRt s2fjXZVBUKgAHXYtBDnOVZawCJe9geHwgZ+7GjMwQVDJhv6QZHSSx+1ZCMWxdLoPBwOX SkdEmA9bGYSG3X2NNobgq9TDdu035QFRIKaGLP3cgsd1HO6bVvihiNz8FCzlCTd8z0w0 809m6EQS7TTMAtgSNMF9mjV2okMRPXRGbWNAR1X54MJJ7aRXbosW4dyndP5oilEB2Tpc 2X5+sisfRD3nhCdSofFSB4jD7y2hx70Rm/9Gc++8u6W5UgpHBYUnBqvWYzYSkptGCUaW sgJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=Qzb/YJNyP8C2o7+xwYg8mmCSKPHlD2/rq6Fg6VMon5A=; b=M53Vx0whzyV0l1/MvctMiPxtPn1xIqJGkU9eIFax3OZo19cr7aoPWnEUKLhjS+noNm E8cidrHwW6ecuTuqoAobay5agWoLq/e+43c1qL+jmmOszdkqLL/MX+G408Gy9m18Vthz q+SFMDoIxgjIKClLtaAXJHYLJsYv4vgUQd/uh1O8nwgBsaxR1FPLaeRNEIfK6tBeJ8WQ GkSKJBL4MIfqga37clM33X1l9GYFqGmODwgk1yKxr0vyJpMRY5XqO1UougcfiVOUcsM0 U9iJt0D4SXMKsrzMwagzb5NU3HoZehRqSQ0t1o2uwdeb2YqZRHoDT9Vcx5hCOvD+eCIB rFJQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e9si813331oib.207.2020.02.21.05.39.14; Fri, 21 Feb 2020 05:39:27 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728330AbgBUNiH (ORCPT + 99 others); Fri, 21 Feb 2020 08:38:07 -0500 Received: from foss.arm.com ([217.140.110.172]:39538 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728085AbgBUNiH (ORCPT ); Fri, 21 Feb 2020 08:38:07 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1539630E; Fri, 21 Feb 2020 05:38:06 -0800 (PST) Received: from localhost (unknown [10.37.6.21]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 24D5D3F703; Fri, 21 Feb 2020 05:38:05 -0800 (PST) Date: Fri, 21 Feb 2020 13:38:03 +0000 From: Mark Brown To: Sameer Pujar Cc: perex@perex.cz, tiwai@suse.com, robh+dt@kernel.org, lgirdwood@gmail.com, thierry.reding@gmail.com, jonathanh@nvidia.com, digetx@gmail.com, alsa-devel@alsa-project.org, devicetree@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, sharadg@nvidia.com, mkumard@nvidia.com, viswanathl@nvidia.com, rlokhande@nvidia.com, dramesh@nvidia.com, atalambedu@nvidia.com Subject: Re: [PATCH v3 05/10] ASoC: tegra: add Tegra210 based AHUB driver Message-ID: <20200221133803.GF5546@sirena.org.uk> References: <1582180492-25297-1-git-send-email-spujar@nvidia.com> <1582180492-25297-6-git-send-email-spujar@nvidia.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="p8PhoBjPxaQXD0vg" Content-Disposition: inline In-Reply-To: <1582180492-25297-6-git-send-email-spujar@nvidia.com> X-Cookie: Dead? No excuse for laying off work. User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --p8PhoBjPxaQXD0vg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Feb 20, 2020 at 12:04:47PM +0530, Sameer Pujar wrote: > The Audio Hub (AHUB) comprises a collection of hardware accelerators for > audio pre/post-processing and a programmable full crossbar (XBAR) for > routing audio data across these accelerators in time and in parallel. > AHUB supports multiple interfaces to I2S, DSPK, DMIC etc., XBAR is a > switch used to configure or modify audio routing between HW accelerators > present inside AHUB. >=20 > This patch registers AHUB component with ASoC framework. The component > driver exposes DAPM widgets, routes and kcontrols for the device. The DAI > driver exposes AHUB interfaces, which can be used to connect different > components in the ASoC layer. Currently the driver takes care of XBAR > programming to allow audio data flow through various clients of the AHUB. The current way to represent complex digitial routing inside SoCs is to use DPCM, this is not great and causes a bunch of problems with the framework but it's at least consistent between SoCs and is less visible to the ABI than this is. Ideally what we'd be doing is propagating digital configuration along audio paths like we do for analog with DAPM, Morimoto-san has done a lot of the groundwork for doing that with converting everything to components but nobody has worked on that yet. Your stuff looks a lot more like this than it does DPCM at the minute but it completely sidesteps the digital configuration part of things without trying to integrate with the framework which isn't great. I'm really not thrilled about the idea of just hacking around the side of things like this is doing, the ideal thing would be starting the work on the framework to propagate digital configuration - I *think* you can get away with only a subset of the problem here (just copying configuration straight through) since this looks like it's just straight point to point links with little in the way of DSP. If not DPCM would be the way to go I think. --p8PhoBjPxaQXD0vg Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAl5P3ToACgkQJNaLcl1U h9Dwzwf/advF/uesEAwOfyBFgKsZU2OvOfZNWh3z/hn0WbNlr6NtvLRDYEOjdsbA 1cWkU2QWhi1rmf+aeWuOOXLwfJ69OczEeEmo0PODUMrWFNFfWGhnyyo7vGU5MP0S lHxiqyUhlU4SQJDNuHKhUZigSKEcwH1ofxGTk4SS43VGvG4KrQIZrIZeuWkYcdzN Py+JpKWnpqDPAs19Rqe9jNUY2qFnF0V7VT5zZKMnXEVwHSjlHqzMHH/maokSugYa ftNy9GuN7MKL18zAZ7DKDqljpUOPnRfnoiys4qq1LYXXey7e5nbFpOdihRBU5XQS csloEVBpHZgw77kXeOmlE5dbWwlsQw== =c0+G -----END PGP SIGNATURE----- --p8PhoBjPxaQXD0vg--