From patchwork Fri Apr 10 21:36:04 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marcel Ziswiler X-Patchwork-Id: 460236 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id DD1841401AF for ; Sat, 11 Apr 2015 07:38:04 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932806AbbDJVh6 (ORCPT ); Fri, 10 Apr 2015 17:37:58 -0400 Received: from mout.perfora.net ([74.208.4.197]:54831 "EHLO mout.perfora.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756430AbbDJVhw (ORCPT ); Fri, 10 Apr 2015 17:37:52 -0400 Received: from localhost.localdomain ([84.226.11.10]) by mrelay.perfora.net (mreueus001) with ESMTPSA (Nemesis) id 0Lr0xJ-1ZLGIM48VH-00edTM; Fri, 10 Apr 2015 23:37:18 +0200 From: Marcel Ziswiler To: linux-tegra@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Mikko Perttunen , Mark Brown , "Rafael J. Wysocki" , Matt Porter , Paul Walmsley , Eduardo Valentin , Takashi Iwai , Dylan Reid , Stephen Boyd , Mike Turquette , Prashant Gaikwad , Peter De Schrijver , Russell King , Alexandre Courbot , Thierry Reding , Stephen Warren , Kumar Gala , Ian Campbell , Mark Rutland , Pawel Moll , Rob Herring , Marcel Ziswiler Subject: [PATCH 9/9] ARM: tegra: apalis t30: fix pin muxing and add HDA in device tree Date: Fri, 10 Apr 2015 23:36:04 +0200 Message-Id: <94ae838321940e1a245c115009f6c48f0eceee76.1428700856.git.marcel.ziswiler@toradex.com> X-Mailer: git-send-email 1.9.3 In-Reply-To: References: X-Provags-ID: V03:K0:9j6+8wX/EkTT3p6KsI+hjaBGHCbqa9U0B49kgRVc+/WYBn75ZaQ oi0IzY36gABNF3VKGKYIpPP862m+GSeliQV5CNYvRAwNAGcP8hhcYIz4AGLYXTF+zGKd84v tisDrvZ0TuNjlgaO6+eyJrZGUzW8ODBox/p92LxBbbR2sEQP7r/19pfc0sWfPthmI7tgX11 pxi45aJM1aLjNKpt3lzaA== X-UI-Out-Filterresults: notjunk:1; Sender: linux-tegra-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org From: Marcel Ziswiler Fix pin muxing, add digital audio aka HDA pin muxing and activate HDA driver. Fix pu vs. gpio_pu pin muxing. While at it also update comment about supported module hardware versions. While at it also add an emmc label to the SDHCI node just like on Colibri T30. While at it set the dr_mode of the primary USB EHCI instance to OTG as well. Signed-off-by: Marcel Ziswiler --- With all that it loads and detects our Realtek codec just fine as can be seen below but so far I have been unable to figure out how to actually get it to deliver some actual acoustics (;-p). Any input on any of this welcome. [ 8.496588] sound hdaudioC0D1: autoconfig for ALC898: line_outs=4 (0x14/0x16/ 0x15/0x17/0x0) type:line [ 8.511715] sound hdaudioC0D1: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0) [ 8.524117] sound hdaudioC0D1: hp_outs=1 (0x1b/0x0/0x0/0x0/0x0) [ 8.536163] sound hdaudioC0D1: mono: mono_out=0x0 [ 8.546995] sound hdaudioC0D1: dig-out=0x1e/0x0 [ 8.557650] sound hdaudioC0D1: inputs: [ 8.567532] sound hdaudioC0D1: Rear Mic=0x18 [ 8.578108] sound hdaudioC0D1: Front Mic=0x19 [ 8.588767] sound hdaudioC0D1: Line=0x1a [ 8.598992] sound hdaudioC0D1: CD=0x1c [ 13.252853] input: tegra-hda Rear Mic as /devices/soc0/70030000.hda/sound/car d0/input1 [ 13.268130] input: tegra-hda Front Mic as /devices/soc0/70030000.hda/sound/ca rd0/input2 [ 13.283471] input: tegra-hda Line as /devices/soc0/70030000.hda/sound/card0/i nput3 [ 13.298377] input: tegra-hda Line Out Front as /devices/soc0/70030000.hda/sou nd/card0/input4 [ 13.314144] input: tegra-hda Line Out Surround as /devices/soc0/70030000.hda/ sound/card0/input5 [ 13.330208] input: tegra-hda Line Out CLFE as /devices/soc0/70030000.hda/soun d/card0/input6 [ 13.345893] input: tegra-hda Line Out Side as /devices/soc0/70030000.hda/soun d/card0/input7 [ 13.361579] input: tegra-hda Front Headphone as /devices/soc0/70030000.hda/so und/card0/input8 [ 13.377476] input: tegra-hda HDMI/DP,pcm=3 as /devices/soc0/70030000.hda/soun d/card0/input9 [ 14.274781] ALSA device list: [ 14.287090] #0: tegra-hda at 0x70038000 irq 345 arch/arm/boot/dts/tegra30-apalis-eval.dts | 5 ++++ arch/arm/boot/dts/tegra30-apalis.dtsi | 46 +++++++++++++++++++++++-------- 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts index 6236bde..37437c6 100644 --- a/arch/arm/boot/dts/tegra30-apalis-eval.dts +++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts @@ -126,6 +126,10 @@ }; }; + hda@70030000 { + status = "okay"; + }; + sd1: sdhci@78000000 { status = "okay"; bus-width = <4>; @@ -149,6 +153,7 @@ usb-phy@7d000000 { status = "okay"; + dr_mode = "otg"; vbus-supply = <&usbo1_vbus_reg>; }; diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi index a5446cb..e6bac82 100644 --- a/arch/arm/boot/dts/tegra30-apalis.dtsi +++ b/arch/arm/boot/dts/tegra30-apalis.dtsi @@ -2,7 +2,7 @@ /* * Toradex Apalis T30 Device Tree - * Compatible for Revisions 1GB: V1.0A; 2GB: V1.0B, V1.0C + * Compatible for Revisions 1GB: V1.0A, V1.1A; 1GB IT: V1.1A; 2GB: V1.0B, V1.0C, V1.0E, V1.1A */ / { model = "Toradex Apalis T30"; @@ -65,7 +65,7 @@ /* BKL1_PWM_EN#, disable TPS65911 PMIC PWM backlight */ uart3_cts_n_pa1 { nvidia,pins = "uart3_cts_n_pa1"; - nvidia,function = "rsvd1"; + nvidia,function = "rsvd2"; nvidia,pull = ; nvidia,tristate = ; }; @@ -108,6 +108,30 @@ nvidia,enable-input = ; }; + /* Apalis Digital Audio */ + clk1_req_pee2 { + nvidia,pins = "clk1_req_pee2"; + nvidia,function = "hda"; + nvidia,pull = ; + nvidia,tristate = ; + }; + clk2_out_pw5 { + nvidia,pins = "clk2_out_pw5"; + nvidia,function = "extperiph2"; + nvidia,pull = ; + nvidia,tristate = ; + nvidia,enable-input = ; + }; + dap1_fs_pn0 { + nvidia,pins = "dap1_fs_pn0", + "dap1_din_pn1", + "dap1_dout_pn2", + "dap1_sclk_pn3"; + nvidia,function = "hda"; + nvidia,pull = ; + nvidia,tristate = ; + }; + /* Apalis I2C3 */ cam_i2c_scl_pbb1 { nvidia,pins = "cam_i2c_scl_pbb1", @@ -151,32 +175,32 @@ }; /* Apalis PWM1 */ - gpio_pu6 { - nvidia,pins = "gpio_pu6"; + pu6 { + nvidia,pins = "pu6"; nvidia,function = "pwm3"; nvidia,pull = ; nvidia,tristate = ; }; /* Apalis PWM2 */ - gpio_pu5 { - nvidia,pins = "gpio_pu5"; + pu5 { + nvidia,pins = "pu5"; nvidia,function = "pwm2"; nvidia,pull = ; nvidia,tristate = ; }; /* Apalis PWM3 */ - gpio_pu4 { - nvidia,pins = "gpio_pu4"; + pu4 { + nvidia,pins = "pu4"; nvidia,function = "pwm1"; nvidia,pull = ; nvidia,tristate = ; }; /* Apalis PWM4 */ - gpio_pu3 { - nvidia,pins = "gpio_pu3"; + pu3 { + nvidia,pins = "pu3"; nvidia,function = "pwm0"; nvidia,pull = ; nvidia,tristate = ; @@ -635,7 +659,7 @@ nvidia,sys-clock-req-active-high; }; - sdhci@78000600 { + emmc: sdhci@78000600 { status = "okay"; bus-width = <8>; non-removable;