From patchwork Wed Aug 17 12:54:54 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Karl Beldan X-Patchwork-Id: 9285939 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 3D31660839 for ; Wed, 17 Aug 2016 12:56:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2F946296DF for ; Wed, 17 Aug 2016 12:56:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 244B9296E5; Wed, 17 Aug 2016 12:56:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 67C26296DF for ; Wed, 17 Aug 2016 12:56:43 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.85_2 #1 (Red Hat Linux)) id 1ba0NO-0007B7-TU; Wed, 17 Aug 2016 12:55:22 +0000 Received: from mail-wm0-x22c.google.com ([2a00:1450:400c:c09::22c]) by bombadil.infradead.org with esmtps (Exim 4.85_2 #1 (Red Hat Linux)) id 1ba0NH-00068t-SK for linux-arm-kernel@lists.infradead.org; Wed, 17 Aug 2016 12:55:17 +0000 Received: by mail-wm0-x22c.google.com with SMTP id i5so230393498wmg.0 for ; Wed, 17 Aug 2016 05:54:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=5fNkCkSeSpNg+/2LbnDaCo0pFvxmn8n+0AUHxu77SqQ=; b=1hr7KBffOe2rh+5gWBk6VvpA8eR0TJiuk+sxw8TB9L/zmEHygba698HatB9j3vCV/3 hcfzRcE7VvWwPZ3OW/HmTlqDAK/u2t72xq4J8He/zFddmaxvlOiFKfELNx8EbR80AiJH 9CZAxGH1qx7DC3kVRh/C9cZYL+rT482By7k7ckvlpa4E85/BPV8Q1JEptocNRgNMiXv4 Q1tG5l5VR6VBKMHgeB1AEGfpKLJ/9Gjg3iabWFOG+A8SGnux4hpNYwg6FNAP0pLwdnZ+ CE+2yr4txokuBBBE30UEYbTPx7iDV9P7dAtqWt53eiloqs2z/LOrUOXQxI0wfLFRVPMo 2zRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=5fNkCkSeSpNg+/2LbnDaCo0pFvxmn8n+0AUHxu77SqQ=; b=cUdOcXw2c1MDSwG6ujdENkFrWbNK/ZheN9MxDaWp7h3vdHGTIkFbhbM2+JzjAgHLu6 FZHzIE5OvixgNLzGtpaMMipPam8D/fzx7oAfYLPBWEsQ17/leVqlwIxlFPRr3kynTQSu hHOIMnJYxUBzTQVtJZ9wV7iKvFgqz6U2a98lp6sSjBlkVVBGclMZBiJOIzUye0pOSxLB Dmm7vgQGy9FmwrxkbqPUIl/MBSNNu7kxf69AnfX6Z3DRoQoSVTNoNReq0Q6iFrczodGt 4gDpPM16QHjLLgAOIxfIXuFDUP9XUq+k1/u9NEjV/fsydBSn4LwVkFvbo4qi1yFtMfca 6Ajw== X-Gm-Message-State: AEkoouvO+cKNLFFM200fPOlV4G1h3846iQLAkxhXJNvQOKfKNgJ97orwuAEWGmreUjP/vCQk X-Received: by 10.194.173.74 with SMTP id bi10mr25803673wjc.72.1471438493632; Wed, 17 Aug 2016 05:54:53 -0700 (PDT) Received: from localhost.localdomain (ppp-seco11pa2-46-193-138-19.wb.wifirst.net. [46.193.138.19]) by smtp.gmail.com with ESMTPSA id s6sm31461814wjm.25.2016.08.17.05.54.52 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 17 Aug 2016 05:54:53 -0700 (PDT) From: Karl Beldan To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v2] ARM: dts: da850-lcdk: Audio support via simple-card Date: Wed, 17 Aug 2016 12:54:54 +0000 Message-Id: <20160817125454.20717-1-kbeldan@baylibre.com> X-Mailer: git-send-email 2.9.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160817_055516_222951_31683FD1 X-CRM114-Status: GOOD ( 11.51 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , Karl Beldan , Kevin Hilman , Sekhar Nori , Russell King , Rob Herring , Karl Beldan MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP The LCDK embeds a TLV320AIC3106 connected to the SoC McASP for analog audio. The power supply of the codec comes from the main PMIC (TPS650250) DCDCs which are always on per HW design and not controllable by SW, so SW wise the codec driver will rely on the 'dummy' regulator. Quality is good with arecord -pipe- aplay on Line In/Line Out. Signed-off-by: Karl Beldan Tested-by: Kevin Hilman --- v2: - Drop MIC paths parts as suggested by Sekhar. arch/arm/boot/dts/da850-lcdk.dts | 68 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/arch/arm/boot/dts/da850-lcdk.dts b/arch/arm/boot/dts/da850-lcdk.dts index dbcca0b..7563260 100644 --- a/arch/arm/boot/dts/da850-lcdk.dts +++ b/arch/arm/boot/dts/da850-lcdk.dts @@ -23,10 +23,46 @@ device_type = "memory"; reg = <0xc0000000 0x08000000>; }; + + sound { + compatible = "simple-audio-card"; + simple-audio-card,name = "DA850/OMAP-L138 LCDK"; + simple-audio-card,widgets = + "Line", "Line In", + "Line", "Line Out"; + simple-audio-card,routing = + "LINE1L", "Line In", + "LINE1R", "Line In", + "Line Out", "LLOUT", + "Line Out", "RLOUT"; + simple-audio-card,format = "dsp_b"; + simple-audio-card,bitclock-master = <&link0_codec>; + simple-audio-card,frame-master = <&link0_codec>; + simple-audio-card,bitclock-inversion; + + simple-audio-card,cpu { + sound-dai = <&mcasp0>; + system-clock-frequency = <24576000>; + }; + + link0_codec: simple-audio-card,codec { + sound-dai = <&tlv320aic3106>; + system-clock-frequency = <24576000>; + }; + }; }; &pmx_core { status = "okay"; + + mcasp0_pins: pinmux_mcasp0_pins { + pinctrl-single,bits = < + /* AHCLKX AFSX ACLKX */ + 0x00 0x00101010 0x00f0f0f0 + /* ARX13 ARX14 */ + 0x04 0x00000110 0x00000ff0 + >; + }; }; &serial2 { @@ -68,3 +104,35 @@ cd-gpios = <&gpio 64 GPIO_ACTIVE_HIGH>; status = "okay"; }; + +&i2c0 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c0_pins>; + clock-frequency = <100000>; + status = "okay"; + + tlv320aic3106: tlv320aic3106@18 { + #sound-dai-cells = <0>; + compatible = "ti,tlv320aic3106"; + reg = <0x18>; + status = "okay"; + }; +}; + +&mcasp0 { + #sound-dai-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&mcasp0_pins>; + status = "okay"; + + op-mode = <0>; /* DAVINCI_MCASP_IIS_MODE */ + tdm-slots = <2>; + serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ + 0 0 0 0 + 0 0 0 0 + 0 0 0 0 + 0 1 2 0 + >; + tx-num-evt = <32>; + rx-num-evt = <32>; +};