From patchwork Mon Aug 10 03:05:52 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiaxin Yu X-Patchwork-Id: 11706943 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id CAC7413B1 for ; Mon, 10 Aug 2020 03:17:11 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A3C5F2065D for ; Mon, 10 Aug 2020 03:17:11 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="y08y4Gel"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="Oo4P5+db" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A3C5F2065D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=jch9MyO561Zy2Li6YH7p3Rdh8ij1DN3W8fYXbxK7iBQ=; b=y08y4GellAedj06pcbD/R5+Nmx oxd8Mp54i/tyer4s8s8meiz2cfgjuh0gB8k/lLS0ky2MQWOvA2ydaZ1j8/ct1w9HvlIxDHMFwoIQ1 KmnrAe287oHTTn+Wc4VVg9NcvTA527G/ff+EVlO27t9JAYBfRGON+tBZ3maAFEGSGCp3qLusXHalf kxQntNXUz1sJCdOqDw6aAPLfgw3aT3JtIVhrKKiWronBad2FVNZVuhBJTwjseU+BQBnyz0jvpnrGY o5gImgXWQOvZZGGFQaphF/lXana7lpmnN3Zipvw4WsIOVd15jamxEydIrmrioaSNMtLhn5MlxhCki 9NQRHymw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k4yJA-0001uw-1q; Mon, 10 Aug 2020 03:17:08 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k4yJ2-0001sr-5X; Mon, 10 Aug 2020 03:17:01 +0000 X-UUID: 05825749565045b39e5727487ebca3e6-20200809 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=Z4K8Bg/d3lhf7ivZYNBcutHvTqaH5vB2AWGS7QPOWDs=; b=Oo4P5+db221PlU9fSRJrW4XhdqVoOi6Nu9wGFkP1l3aHHo0WxWIKGfiAvP+O/5MUa0a3R4/GpJYBZDdSwQJBMoyd2Ubc0h/n5RokrjF7S9/psipx7Ov97rxXX7B4vDyE77w3XacVdbF32s538STmI8zI6jWMQH/oy7+EKQ1N4S4=; X-UUID: 05825749565045b39e5727487ebca3e6-20200809 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 1813846492; Sun, 09 Aug 2020 19:17:08 -0800 Received: from mtkmbs05n1.mediatek.inc (172.21.101.15) by MTKMBS62N1.mediatek.inc (172.29.193.41) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sun, 9 Aug 2020 20:06:54 -0700 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs05n1.mediatek.inc (172.21.101.15) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 10 Aug 2020 11:06:48 +0800 Received: from localhost.localdomain (10.17.3.153) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 10 Aug 2020 11:06:47 +0800 From: Jiaxin Yu To: , , , , Subject: [PATCH v2 0/2] Add mediatek codec mt6359 driver Date: Mon, 10 Aug 2020 11:05:52 +0800 Message-ID: <1597028754-7732-1-git-send-email-jiaxin.yu@mediatek.com> X-Mailer: git-send-email 1.8.1.1.dirty MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200809_231700_476270_797E70C5 X-CRM114-Status: GOOD ( 11.57 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.0 MIME_BASE64_TEXT RAW: Message text disguised using base64 encoding -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.0 UNPARSEABLE_RELAY Informational: message has unparseable relay lines X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: alsa-devel@alsa-project.org, shane.chien@mediatek.com, howie.huang@mediatek.com, Jiaxin Yu , tzungbi@google.com, linux-mediatek@lists.infradead.org, eason.yen@mediatek.com, linux-arm-kernel@lists.infradead.org Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+patchwork-linux-mediatek=patchwork.kernel.org@lists.infradead.org Add mediatek codec (MT6359) driver MT6359 support playback and capture feature. On downlink path, it includes three DACs for handset, headset, and lineout path. On unlink path, it includeds three ADCs for main mic, second mic, 3rd mic, and headset mic. By scenario, select *_MUX widget to create damp path. And by select mic_type_mux to choose DMIC/AMIC/.... For example, select these MUX widget to create headset path (1) DAC In Mux --> "Normal Path" (2) HPL Mux --> "Audio Playback" (3) HPR Mux --> "Audio Playback" v2 changes: 1. Move playback_gpio/capture_gpio to the machine driver. 2. Fix mic_type(ACC/DMIC/DCC/DCC_*) at init stage. 3. Move devm_regulor_get to mt6359_platform_driver_probe. 4. Add relulator_disable in remove function. 5. Use stereo controls to the volume control. 6. Use SOC_ENUM_SINGLE_DECL instead of SOC_VALUE_ENUM_SINGLE_DECL. 7. Cleanup unused code. v1 changes: 1.lkml link: https://lkml.org/lkml/2020/3/5/1257 Jiaxin Yu (2): ASoC: mediatek: mt6359: add codec driver dt-bindings: mediatek: mt6359: add codec document .../devicetree/bindings/sound/mt6359.yaml | 68 + sound/soc/codecs/Kconfig | 8 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/mt6359.c | 2966 ++++++++++++++++++++ sound/soc/codecs/mt6359.h | 2653 +++++++++++++++++ 5 files changed, 5697 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/mt6359.yaml create mode 100644 sound/soc/codecs/mt6359.c create mode 100644 sound/soc/codecs/mt6359.h