Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp2622664ybl; Mon, 20 Jan 2020 06:24:53 -0800 (PST) X-Google-Smtp-Source: APXvYqxNMO+/Mh3OejfZYqDdDu2h8UHF3OThr/ta/izs7qWCrIZPjNMQ04cIjKdU1UMqVpz+M8YV X-Received: by 2002:a9d:23b5:: with SMTP id t50mr15453841otb.122.1579530293386; Mon, 20 Jan 2020 06:24:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579530293; cv=none; d=google.com; s=arc-20160816; b=ov3z1Fruff28196jVyLtsKtda0L2j79hexoNO33au1ALlVuFIFZMjWgbMyKfoHFoGs 7KSGp8DgNGtSNl9R7Lc5UWNlaj02FJx/G7xEgNHPCdYMyZ8j32BN5wPpDE5kswVapEGf ky0qRBwXZpQS1E3Lfg61gQiIoEu8fQrUWwUzalunDLTHRY5ePeYn/XJVjIPioEcciPyV qDC5I+nlqFWZQETrDzKpFsV9y1LY8854S9mkoM3Fk6PbamLqDh4MKZTcEees4HbRYdnH uefS2jR4zC6fExhT2eDpC7gHTLI4/h0L3wNXOB8oi2UwHdGJy7c+IVcsou7+3X2fTJpj j9YA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:dkim-signature:mime-version:message-id :date:subject:cc:to:from; bh=sVGMvsXJQ6JsuBd+PLRFpAWsDnTvG1rYsC5JQVaB0T0=; b=bZO7NeWDXT8Wlmz7zwEJ6Ip0If5H9aWmJtngs5Q4USuhBlqenyuTbDqQwNNbr/FUxr GlutBC46pBBHeoHlIz2zpqlMuh+mFz1Reh42du7Ixe5v5cOEyIE+pIovicFB/LJCNwzJ UA9ZrO7ydvT68UyXwr8OHD2gdnNHRAjVZPzUkC3ky0PzpwYa0l7UEtQW6okEcnZfvzPM bV1eSgJm4iFfPSjJwwo7utuc7diDTkwr+zf7pAfygUPyIGsB3z+s+GjpABra2WT1ZJNd owUU6pO9rT3tOcbHCfhqihwcCOR12MPV03wv8WhIW3DloOtTnpEMLUi1zY2Qj1LxHGEf Sxkw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nvidia.com header.s=n1 header.b="fUMb/4Yb"; 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=pass (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d5si17658875otp.174.2020.01.20.06.24.41; Mon, 20 Jan 2020 06:24:53 -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; dkim=pass header.i=@nvidia.com header.s=n1 header.b="fUMb/4Yb"; 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=pass (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728827AbgATOXl (ORCPT + 99 others); Mon, 20 Jan 2020 09:23:41 -0500 Received: from hqnvemgate25.nvidia.com ([216.228.121.64]:6897 "EHLO hqnvemgate25.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728765AbgATOXk (ORCPT ); Mon, 20 Jan 2020 09:23:40 -0500 Received: from hqpgpgate102.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate25.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Mon, 20 Jan 2020 06:23:24 -0800 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate102.nvidia.com (PGP Universal service); Mon, 20 Jan 2020 06:23:39 -0800 X-PGP-Universal: processed; by hqpgpgate102.nvidia.com on Mon, 20 Jan 2020 06:23:39 -0800 Received: from HQMAIL107.nvidia.com (172.20.187.13) by HQMAIL105.nvidia.com (172.20.187.12) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Mon, 20 Jan 2020 14:23:39 +0000 Received: from hqnvemgw03.nvidia.com (10.124.88.68) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Mon, 20 Jan 2020 14:23:39 +0000 Received: from audio.nvidia.com (Not Verified[10.24.34.185]) by hqnvemgw03.nvidia.com with Trustwave SEG (v7,5,8,10121) id ; Mon, 20 Jan 2020 06:23:38 -0800 From: Sameer Pujar To: , , CC: , , , , , , , , , , , , , , Sameer Pujar Subject: [PATCH 0/9] add ASoC components for AHUB Date: Mon, 20 Jan 2020 19:53:09 +0530 Message-ID: <1579530198-13431-1-git-send-email-spujar@nvidia.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1579530205; bh=sVGMvsXJQ6JsuBd+PLRFpAWsDnTvG1rYsC5JQVaB0T0=; h=X-PGP-Universal:From:To:CC:Subject:Date:Message-ID:X-Mailer: MIME-Version:Content-Type; b=fUMb/4YbwZ0XTAeUPWMxqWnKINkn07UBCoCAAjLbdFdLFrJ5Jm9zRfIfZSjVNCNCU eVamqwNt3pIWN+uQaVHh1SQeqbc12KoElR5pQAJnBN4Z8+EMtKC41EbiC/zULCX7YM 2FU6AWMZ/F0PHdqEHDBo+sdZ9k3NCmw52Jcoi+wkoG3RNybVvXJz7sawD6sJUiO+db 9mSzlMOwOi7JUE2ojTH4j7IG0AWGEXLNZS7iOlKa39yniu050LP4zLu9EawIJ4Bxx9 /s1Zh+pvHIuD96ZgtF4Z/y+GtLHC6FlXbY1TlP9hfa0u3RsoaAZ/ad8sJj+xwuIpNi FExgsPGoVqj+A== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Overview ======== The Audio Hub (AHUB) is part of the Audio Processing Engine (APE) which comprises a collection of hardware accelerators for audio pre-processing and post-processing. It also includes a programmable full crossbar for routing audio data across these accelerators. This series exposes some of these below mentioned HW devices as ASoC components for Tegra platforms from Tegra210 onwards. * ADMAIF : The interface between ADMA and AHUB * XBAR : Crossbar for routing audio samples across various modules * I2S : Inter-IC Sound Controller * DMIC : Digital Microphone * DSPK : Digital Speaker Following is the summary of current series. 1. Add YAML DT binding documentation for above mentioned modules. 2. ACIF programming is same for Tegra generations and hence it is moved to a common file. 3. Add ASoC driver components for each of the above modules. 4. Add DT entries for above components for Tegra210, Tegra186 and Tegra194. 5. Enable these components for Jetson-Tx1, Jetson-Tx2 and Jetson-Xavier. Machine driver series will be sent separately. Sameer Pujar (9): dt-bindings: sound: tegra: add DT binding for AHUB ASoC: tegra: add support for CIF programming ASoC: tegra: add Tegra210 based DMIC driver ASoC: tegra: add Tegra210 based I2S driver ASoC: tegra: add Tegra210 based AHUB driver ASoC: tegra: add Tegra186 based DSPK driver ASoC: tegra: add Tegra210 based ADMAIF driver arm64: tegra: add AHUB components for few Tegra chips arm64: tegra: enable AHUB modules for few Tegra chips .../bindings/sound/nvidia,tegra186-dspk.yaml | 105 +++ .../bindings/sound/nvidia,tegra210-admaif.yaml | 165 ++++ .../bindings/sound/nvidia,tegra210-ahub.yaml | 130 +++ .../bindings/sound/nvidia,tegra210-dmic.yaml | 105 +++ .../bindings/sound/nvidia,tegra210-i2s.yaml | 112 +++ arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts | 48 ++ arch/arm64/boot/dts/nvidia/tegra186.dtsi | 231 ++++- arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts | 36 + arch/arm64/boot/dts/nvidia/tegra194.dtsi | 239 +++++- arch/arm64/boot/dts/nvidia/tegra210-p2371-2180.dts | 40 + arch/arm64/boot/dts/nvidia/tegra210.dtsi | 145 ++++ sound/soc/tegra/Kconfig | 56 ++ sound/soc/tegra/Makefile | 12 + sound/soc/tegra/tegra186_dspk.c | 516 +++++++++++ sound/soc/tegra/tegra186_dspk.h | 73 ++ sound/soc/tegra/tegra210_admaif.c | 896 ++++++++++++++++++++ sound/soc/tegra/tegra210_admaif.h | 164 ++++ sound/soc/tegra/tegra210_ahub.c | 667 +++++++++++++++ sound/soc/tegra/tegra210_ahub.h | 125 +++ sound/soc/tegra/tegra210_dmic.c | 522 ++++++++++++ sound/soc/tegra/tegra210_dmic.h | 85 ++ sound/soc/tegra/tegra210_i2s.c | 941 +++++++++++++++++++++ sound/soc/tegra/tegra210_i2s.h | 132 +++ sound/soc/tegra/tegra30_ahub.c | 94 +- sound/soc/tegra/tegra30_ahub.h | 129 --- sound/soc/tegra/tegra30_i2s.c | 35 +- sound/soc/tegra/tegra30_i2s.h | 7 - sound/soc/tegra/tegra_cif.c | 34 + sound/soc/tegra/tegra_cif.h | 50 ++ sound/soc/tegra/tegra_pcm.c | 224 ++++- sound/soc/tegra/tegra_pcm.h | 23 +- 31 files changed, 5897 insertions(+), 244 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra186-dspk.yaml create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-admaif.yaml create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-ahub.yaml create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-dmic.yaml create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.yaml create mode 100644 sound/soc/tegra/tegra186_dspk.c create mode 100644 sound/soc/tegra/tegra186_dspk.h create mode 100644 sound/soc/tegra/tegra210_admaif.c create mode 100644 sound/soc/tegra/tegra210_admaif.h create mode 100644 sound/soc/tegra/tegra210_ahub.c create mode 100644 sound/soc/tegra/tegra210_ahub.h create mode 100644 sound/soc/tegra/tegra210_dmic.c create mode 100644 sound/soc/tegra/tegra210_dmic.h create mode 100644 sound/soc/tegra/tegra210_i2s.c create mode 100644 sound/soc/tegra/tegra210_i2s.h create mode 100644 sound/soc/tegra/tegra_cif.c create mode 100644 sound/soc/tegra/tegra_cif.h -- 2.7.4