From patchwork Wed Aug 16 00:23:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Trevor Woerner X-Patchwork-Id: 13354416 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5E9EBC0015E for ; Wed, 16 Aug 2023 00:23:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Dzt97NJQ//D+UDB4lMETPop91eu4GLc0JwjhKtZ9ZzM=; b=OwTj+GcE4PSrHQ o0K3TS/D/4jfhw9qH+pvGFxtt/iPs9jz/7lNSVGu5AE44ThbN2ZaFKBkMpHuStiuDl5l/TuzRS5ia aocx+ZKqzEsib5PQ5YbzmLj8lpGPMdereiyI6vxY+7MW24/vBQTqYCvlYdCmsO2z0OWSoO6QpWREZ 7kG0TmIWMpd80en2lCj32EWGLwuU6DVdAS17aIG2p6/skMxm/0UZGxdNe0uEvguba1G6puE2oZdvr 84zbFnWN1gDHqUJhXeosfrqEvCqEOPeGOXZLBtr3Mfa/iuCpuyN1ABrgVAYLjrFpqKQSILfSC4DBP IkXUn9kSnB2JLf9d2dAg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qW4Jr-002rcT-0m; Wed, 16 Aug 2023 00:23:27 +0000 Received: from mail-qk1-x736.google.com ([2607:f8b0:4864:20::736]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qW4Jk-002rZs-09 for linux-arm-kernel@lists.infradead.org; Wed, 16 Aug 2023 00:23:21 +0000 Received: by mail-qk1-x736.google.com with SMTP id af79cd13be357-7659cb9c42aso395109185a.3 for ; Tue, 15 Aug 2023 17:23:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1692145397; x=1692750197; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=u5K+gUGCsAol5AOSj18zMfCSNxRbg5FuBq7GV8eAAR8=; b=DnOvWmbOOWvIOptsMgo8Sx+uN3YXulsCHUGAquiE8sfDjtPSaiGze+Pjwnsx/2mRlT LpOl6YbtoEFpZOgwS0Y0kVF5WPl6js4pDyaVhzzqdYs9Gp9PAcGg+q7SCjWJ+KyRgD4S Pf6pGNgNGJpdw9kFslfY+c7unVYqTblrL4DwnKRGqNR/fu4uPyEVxeo0vB57B9vcaRP7 wG+yC6vUthUZqiGa1HPS825zimuKo9OlbqYESTI7c6DbjIE81gZq9fLff82OQLNYGZMY UOHwTwWLGUVRSANcG9eRUxTTvnNx/445o9EtTuVT52WS1VMz1oXY/roixrrj/C1o4UVX +CNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692145397; x=1692750197; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=u5K+gUGCsAol5AOSj18zMfCSNxRbg5FuBq7GV8eAAR8=; b=a2LWJUPVPipGtMC1Le0EscDFovTxuVe8tLh0u5FSrRU6JEqHkS4rHeWr5Da0kdf+AL +ic3Qtfu3OiyZ/bFE33hdk0ZMlmoNGo6lvgXlSqGr1KQSM9y8piZtYBSzIsE40NbJucJ kG7oLTTBFExdc7vbvipNRPMEu8hFFsw47RXrxsEcviurVEbueHbt9AUh9dBR4CheggyX Wi26bigLF+4IEIIpzJ4d2qD4CPcVtaZTOrX40OShiokfCXm54Ns5zwF3vPHxiwBiwLIx d/55A4zsQ98ah1jwWRXRjlngn8ST8jjbsTBAwXqkrCV11Taur1w5g9MC0Ue1U/1PhAuo esug== X-Gm-Message-State: AOJu0YzvuPLFDPLB+uFnPb1taI/9TvdjbapDsLkJuCDMy9xIbM2EwsRd WJzg3n3zO/CFroBjEBoffiM= X-Google-Smtp-Source: AGHT+IGv5izfsdTvq3Xw2+BTG+QTJe44VVAhetc8jF7LhciTqdRbuyi0eVW9PKK3pmUtHYaW+INPgA== X-Received: by 2002:a05:620a:40cb:b0:763:9f31:1588 with SMTP id g11-20020a05620a40cb00b007639f311588mr527264qko.70.1692145397545; Tue, 15 Aug 2023 17:23:17 -0700 (PDT) Received: from localhost.localdomain (pppoe-209-91-167-254.vianet.ca. [209.91.167.254]) by smtp.gmail.com with ESMTPSA id r11-20020a0ccc0b000000b0063d5c9de720sm4452436qvk.80.2023.08.15.17.23.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 15 Aug 2023 17:23:16 -0700 (PDT) From: Trevor Woerner To: drew@beagleboard.org, =?utf-8?q?Beno=C3=AEt_Cousson?= , Tony Lindgren , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org Subject: [PATCH 2/3] ARM: dts: am335x-pocketbeagle: enable pru Date: Tue, 15 Aug 2023 20:23:05 -0400 Message-ID: <20230816002308.36800-3-twoerner@gmail.com> X-Mailer: git-send-email 2.41.0.327.gaa9166bcc0ba In-Reply-To: <20230816002308.36800-1-twoerner@gmail.com> References: <20230816002308.36800-1-twoerner@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230815_172320_083870_C3EA1295 X-CRM114-Status: GOOD ( 16.77 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Now that the PRU code is upstream and can be loaded via remoteproc, adjust the device tree to enable it and adjust the pin muxing so that the default setting of the pins matches what's is given on the silkscreen and/or pocketbeagle wiring. Caveat: In most cases, the silkscreen will indicate, for example, "PRU0.7", but it doesn't indicate whether that pin should be enabled for input or output. On the PRU a different MODE is used for input versus output. So it is unclear which mode to enable (MODE5 = output, MODE6 = input). In cases where there is a choice (PRU1.11, PRU0.7, PRU0.4, PRU0.1, PRU1.10, PRU0.6, PRU0.3, PRU0.2, and PRU0.5) output is assumed (MODE5). The remaining PRU silkscreen pins do not have a choice and are set as follows: PRU0.16 MODE5 input PRU0.15i MODE6 input Signed-off-by: Trevor Woerner --- .../boot/dts/ti/omap/am335x-pocketbeagle.dts | 48 ++++++++++++++----- 1 file changed, 37 insertions(+), 11 deletions(-) diff --git a/arch/arm/boot/dts/ti/omap/am335x-pocketbeagle.dts b/arch/arm/boot/dts/ti/omap/am335x-pocketbeagle.dts index 1c11245f6864..6d875cf13e09 100644 --- a/arch/arm/boot/dts/ti/omap/am335x-pocketbeagle.dts +++ b/arch/arm/boot/dts/ti/omap/am335x-pocketbeagle.dts @@ -117,7 +117,7 @@ &gpio1 { "P2.24", "P2.33", "P2.22", - "P2.18", + "P2.18 [PRU0.15i]", "NC", "NC", "P2.01 [PWM1A]", @@ -214,7 +214,7 @@ &am33xx_pinmux { pinctrl-names = "default"; pinctrl-0 = < &P2_03_gpio &P1_34_gpio &P2_19_gpio &P2_24_gpio - &P2_33_gpio &P2_22_gpio &P2_18_gpio &P2_10_gpio + &P2_33_gpio &P2_22_gpio &P2_10_gpio &P2_06_gpio &P2_04_gpio &P2_02_gpio &P2_08_gpio &P2_17_gpio >; @@ -272,15 +272,6 @@ AM33XX_PADCONF(AM335X_PIN_GPMC_AD14, PIN_INPUT_PULLUP, MUX_MODE7) pinctrl-single,bias-pulldown = < 0x10 0x00 0x10 0x18>; }; - /* P2_18 (ZCZ ball U13) gpio1_15 0x83c PIN 15 */ - P2_18_gpio: P2-18-gpio-pins { - pinctrl-single,pins = < - AM33XX_PADCONF(AM335X_PIN_GPMC_AD15, PIN_INPUT_PULLUP, MUX_MODE7) - >; - pinctrl-single,bias-pullup = < 0x10 0x10 0x00 0x18>; - pinctrl-single,bias-pulldown = < 0x10 0x00 0x10 0x18>; - }; - /* P2_10 (ZCZ ball R14) gpio1_20 0x850 PIN 20 */ P2_10_gpio: P2-10-gpio-pins { pinctrl-single,pins = < @@ -406,6 +397,27 @@ AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLUP, MUX_MODE6) /* (T17) gpmc AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_OUTPUT_PULLDOWN, MUX_MODE6) /* (U17) gpmc_wpn.uart4_txd */ >; }; + + pru0_pins: pinmux-pru0-pins { + pinctrl-single,pins = < + AM33XX_PADCONF(AM335X_PIN_XDMA_EVENT_INTR1, PIN_INPUT_PULLUP, MUX_MODE5)/* (D14) xdma_event_intr1.pr1_pru0_pru_r31_16 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKX, PIN_OUTPUT_PULLDOWN, MUX_MODE5)/* (A14) mcasp0_ahclkx.pr1_pru0_pru_r30_7 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKR, PIN_OUTPUT_PULLDOWN, MUX_MODE5) /* (B12) mcasp0_acklr.pr1_pru0_pru_r30_4 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_FSX, PIN_OUTPUT_PULLDOWN, MUX_MODE5) /* (B13) mcasp0_fsx.pr1_pru0_pru_r30_1 */ + AM33XX_PADCONF(AM335X_PIN_GPMC_AD15, PIN_INPUT_PULLUP, MUX_MODE6) /* (U13) gpmc_ad15.pr1_pru0_pru_r31_15 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_AXR1, PIN_OUTPUT_PULLDOWN, MUX_MODE5) /* (D13) mcasp0_axr1.pr1_pru0_pru_r30_6 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKR, PIN_OUTPUT_PULLDOWN, MUX_MODE5)/* (C12) mcasp0_ahclkr.pr1_pru0_pru_r30_3 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_AXR0, PIN_OUTPUT_PULLDOWN, MUX_MODE5) /* (D12) mcasp0_axr0.pr1_pru0_pru_r30_2 */ + AM33XX_PADCONF(AM335X_PIN_MCASP0_FSR, PIN_OUTPUT_PULLDOWN, MUX_MODE5) /* (C13) mcasp0_fsr.pr1_pru0_pru_r30_5 */ + >; + }; + + pru1_pins: pinmux-pru1-pins { + pinctrl-single,pins = < + AM33XX_PADCONF(AM335X_PIN_LCD_AC_BIAS_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE5)/*(R6) lcd_ac_bias_en.pr1_pru1_pru_r30_11 */ + AM33XX_PADCONF(AM335X_PIN_LCD_PCLK, PIN_OUTPUT_PULLDOWN, MUX_MODE5) /* (V5) lcd_pclk.pr1_pru1_pru_r30_10 */ + >; + }; }; &epwmss0 { @@ -487,3 +499,17 @@ &usb0 { &usb1 { dr_mode = "host"; }; + +&pruss_tm { + status = "okay"; +}; + +&pru0 { + pinctrl-names = "default"; + pinctrl-0 = <&pru0_pins>; +}; + +&pru1 { + pinctrl-names = "default"; + pinctrl-0 = <&pru1_pins>; +};