From nobody Sat Nov 23 18:08:38 2024 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [185.203.201.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5689E1CB323 for ; Tue, 19 Nov 2024 11:35:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.203.201.7 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1732016120; cv=none; b=o+a5m1IY7Ym327Yh24wV5uIthV6cLGJBFD2TYqqebmR/dJXkllcmBT7JJea/SFGjKUpAzw03xxasBrQ63ePgA53HbxJt6tv5Z6d6U3WvUYDON7MB60nP7YkcnMtx8PAKPs8gehVfRSqV/O/4j0wyB6nmX9WaHE20PybJ2wwzUVw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1732016120; c=relaxed/simple; bh=T9ZKJUvsFXlH8TPggpzo/5VC/VD7QikULyIILMTlNwk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=PPj2opxsuo90zBloFNPk1NBGYykE920U1nwGZDBbL/pq0ydcxDjDYaF8YtePypRw52adtpo/iDFJPWTnrg4cvsqMgcasCSm43GrfINLwFeyi3rwSQJa5DoAEvPyhCCdRwSpp8kIbGb54yhc81trWg6WG91+/lNMEzMzlO/zOZnQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de; spf=pass smtp.mailfrom=pengutronix.de; arc=none smtp.client-ip=185.203.201.7 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pengutronix.de Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1tDMVo-0004qQ-Qh for linux-kernel@vger.kernel.org; Tue, 19 Nov 2024 12:35:16 +0100 Received: from moin.white.stw.pengutronix.de ([2a0a:edc0:0:b01:1d::7b] helo=bjornoya.blackshift.org) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1tDMVo-001Yhf-0M for linux-kernel@vger.kernel.org; Tue, 19 Nov 2024 12:35:16 +0100 Received: from dspam.blackshift.org (localhost [127.0.0.1]) by bjornoya.blackshift.org (Postfix) with SMTP id C6BB137708C for ; Tue, 19 Nov 2024 11:35:15 +0000 (UTC) Received: from hardanger.blackshift.org (unknown [172.20.34.65]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by bjornoya.blackshift.org (Postfix) with ESMTPS id 8F63D377041; Tue, 19 Nov 2024 11:35:10 +0000 (UTC) Received: from [172.20.34.65] (localhost [::1]) by hardanger.blackshift.org (OpenSMTPD) with ESMTP id 959326aa; Tue, 19 Nov 2024 11:35:09 +0000 (UTC) From: Marc Kleine-Budde Date: Tue, 19 Nov 2024 12:35:03 +0100 Subject: [PATCH 6/6] ARM: dts: stm32: lxa-tac: Add support for generation 3 devices Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20241119-lxa-tac-gen3-v1-6-e0ab0a369372@pengutronix.de> References: <20241119-lxa-tac-gen3-v1-0-e0ab0a369372@pengutronix.de> In-Reply-To: <20241119-lxa-tac-gen3-v1-0-e0ab0a369372@pengutronix.de> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Maxime Coquelin , Alexandre Torgue Cc: kernel@pengutronix.de, devicetree@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Marc Kleine-Budde , =?utf-8?q?Leonard_G=C3=B6hrs?= X-Mailer: b4 0.15-dev-355e8 X-Developer-Signature: v=1; a=openpgp-sha256; l=7442; i=mkl@pengutronix.de; h=from:subject:message-id; bh=By4pwqAedJvXzN4bGaqFPMZUX2CP5A0SNlNBPYGkLo8=; b=owEBbQGS/pANAwAKASg4oj56LbxvAcsmYgBnPHfrdQg035FqZYwjXusVOsW1i7FLwzgrdiAcG biva8lby+2JATMEAAEKAB0WIQRQQLqG4LYE3Sm8Pl8oOKI+ei28bwUCZzx36wAKCRAoOKI+ei28 byjuB/46WKe4cOci99+3casvuIAIGX4Jq5cTHiME2iyJmWXedaIzkYRyo6dPIVkwFJIhklPDy5P ytBCCvPhNn0lX+r2xK6vaTJWLhjNa1MjGOebgHrnbbU9rmuoymkx+CxxmUOJ6fm1y493KoCl+No ZLfn09QhQoBby7ivU8q9X+XGvXX2pvXg4l57HrGsmbEtekqe4k91Um2vjW7sgUoUylzdTj5rfe2 HfL3yBNCRJ6yXqDeXfUOp20dEkPTrc/iJWsTfDQEhMPWjMLx90TNgcNBsDogdaX/pkC8XkwkBzs goNODTJVO+2JGxtmTcrMxq72PBjqrCoSpniC4Fll0nADfEuy X-Developer-Key: i=mkl@pengutronix.de; a=openpgp; fpr=C1400BA0B3989E6FBC7D5B5C2B5EE211C58AEA54 X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: mkl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org From: Leonard G=C3=B6hrs Add support for the lxa-tac generation 3 board based on the STM32MP153c. Signed-off-by: Leonard G=C3=B6hrs Signed-off-by: Marc Kleine-Budde --- arch/arm/boot/dts/st/Makefile | 1 + arch/arm/boot/dts/st/stm32mp153c-lxa-tac-gen3.dts | 267 ++++++++++++++++++= ++++ 2 files changed, 268 insertions(+) diff --git a/arch/arm/boot/dts/st/Makefile b/arch/arm/boot/dts/st/Makefile index eab3a9bd435f5fcb792ed3b59b2a1cef4aef25ed..b7d5d305cbbeb78cfae9fab0527= 1992959f6fa56 100644 --- a/arch/arm/boot/dts/st/Makefile +++ b/arch/arm/boot/dts/st/Makefile @@ -39,6 +39,7 @@ dtb-$(CONFIG_ARCH_STM32) +=3D \ stm32mp151c-mect1s.dtb \ stm32mp153c-dhcom-drc02.dtb \ stm32mp153c-dhcor-drc-compact.dtb \ + stm32mp153c-lxa-tac-gen3.dtb \ stm32mp153c-mecio1r1.dtb \ stm32mp157a-avenger96.dtb \ stm32mp157a-dhcor-avenger96.dtb \ diff --git a/arch/arm/boot/dts/st/stm32mp153c-lxa-tac-gen3.dts b/arch/arm/b= oot/dts/st/stm32mp153c-lxa-tac-gen3.dts new file mode 100644 index 0000000000000000000000000000000000000000..a40b0eae8da3c633c36b433f69a= 006744fd4fd77 --- /dev/null +++ b/arch/arm/boot/dts/st/stm32mp153c-lxa-tac-gen3.dts @@ -0,0 +1,267 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) +/* + * Copyright (C) 2020 STMicroelectronics - All Rights Reserved + * Copyright (C) 2021 Rouven Czerwinski, Pengutronix + * Copyright (C) 2023, 2024 Leonard G=C3=B6hrs, Pengutronix + */ + +/dts-v1/; + +#include "stm32mp153.dtsi" +#include "stm32mp15xc-lxa-tac.dtsi" + +/ { + model =3D "Linux Automation Test Automation Controller (TAC) Gen 3"; + compatible =3D "lxa,stm32mp153c-tac-gen3", "oct,stm32mp153x-osd32", "st,s= tm32mp153"; + + backlight: backlight { + compatible =3D "pwm-backlight"; + power-supply =3D <&v3v3>; + + brightness-levels =3D <0 31 63 95 127 159 191 223 255>; + default-brightness-level =3D <7>; + pwms =3D <&led_pwm 3 1000000 0>; + }; + + reg_iobus_12v: regulator-iobus-12v { + compatible =3D "regulator-fixed"; + vin-supply =3D <®_12v>; + gpio =3D <&gpioh 13 GPIO_ACTIVE_LOW>; + regulator-max-microvolt =3D <12000000>; + regulator-min-microvolt =3D <12000000>; + regulator-name =3D "12V_IOBUS"; + }; + + led-controller-1 { + compatible =3D "pwm-leds-multicolor"; + + multi-led { + color =3D ; + function =3D LED_FUNCTION_STATUS; + max-brightness =3D <65535>; + + led-red { + active-low; + color =3D ; + pwms =3D <&led_pwm 0 1000000 0>; + }; + + led-green { + active-low; + color =3D ; + pwms =3D <&led_pwm 2 1000000 0>; + }; + + led-blue { + active-low; + color =3D ; + pwms =3D <&led_pwm 1 1000000 0>; + }; + }; + }; + + led-controller-2 { + compatible =3D "gpio-leds"; + + led-5 { + label =3D "tac:green:iobus"; + gpios =3D <&gpiog 1 GPIO_ACTIVE_HIGH>; + }; + + led-6 { + label =3D "tac:green:can"; + gpios =3D <&gpiof 3 GPIO_ACTIVE_HIGH>; + }; + + led-7 { + label =3D "tac:green:out0"; + gpios =3D <&gpiob 8 GPIO_ACTIVE_HIGH>; + }; + + led-8 { + label =3D "tac:green:out1"; + gpios =3D <&gpiog 3 GPIO_ACTIVE_HIGH>; + }; + + led-9 { + label =3D "tac:green:uarttx"; + gpios =3D <&gpiod 3 GPIO_ACTIVE_HIGH>; + }; + + led-10 { + label =3D "tac:green:uartrx"; + gpios =3D <&gpiof 6 GPIO_ACTIVE_HIGH>; + }; + + led-11 { + label =3D "tac:green:usbh1"; + gpios =3D <&gpioc 8 GPIO_ACTIVE_HIGH>; + }; + + led-12 { + label =3D "tac:green:usbh2"; + gpios =3D <&gpiod 6 GPIO_ACTIVE_HIGH>; + }; + + led-13 { + label =3D "tac:green:usbh3"; + gpios =3D <&gpiob 9 GPIO_ACTIVE_HIGH>; + }; + + led-14 { + label =3D "tac:green:usbg"; + gpios =3D <&gpiod 14 GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "usb-gadget"; + }; + + led-15 { + label =3D "tac:green:dutpwr"; + gpios =3D <&gpioa 15 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +&adc { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&board_adc1_ain_pins>; + vdd-supply =3D <&vdd>; + vdda-supply =3D <&vdda>; + vref-supply =3D <&vrefbuf>; + status =3D "okay"; + + adc1: adc@0 { + st,adc-channels =3D <2 5 9 10 13 14 15 18>; + st,min-sample-time-nsecs =3D <5000>; + #address-cells =3D <1>; + #size-cells =3D <0>; + status =3D "okay"; + + channel@2 { + reg =3D <2>; + label =3D "OUT_0_FB"; + }; + + channel@5 { + reg =3D <5>; + label =3D "IOBUS_CURR_FB"; + }; + + channel@9 { + reg =3D <9>; + label =3D "IOBUS_VOLT_FB"; + }; + + channel@10 { + reg =3D <10>; + label =3D "OUT_1_FB"; + }; + + channel@13 { + reg =3D <13>; + label =3D "HOST_CURR_FB"; + }; + + channel@14 { + reg =3D <14>; + label =3D "HOST_3_CURR_FB"; + }; + + channel@15 { + reg =3D <15>; + label =3D "HOST_1_CURR_FB"; + }; + + channel@18 { + reg =3D <18>; + label =3D "HOST_2_CURR_FB"; + }; + }; + + adc2: adc@100 { + st,adc-channels =3D <12>; + st,min-sample-time-nsecs =3D <500000>; + #address-cells =3D <1>; + #size-cells =3D <0>; + status =3D "okay"; + + channel@12 { + reg =3D <12>; + label =3D "TEMP_INTERNAL"; + }; + }; +}; + +&gpioa { + gpio-line-names =3D "", "", "", "", "", /* 0 */ + "ETH_GPIO1", "ETH_INT", "", "", "", /* 5 */ + "", "", "", "BOOTROM_LED", "ETH_LAB_LEDRP", /* 10 */ + ""; /* 15 */ +}; + +&gpioc { + gpio-line-names =3D "", "DUT_PWR_DISCH", "", "", "", /* 0 */ + "", "", "", "", "", /* 5 */ + "", ""; /* 10 */ +}; + +&gpioe { + gpio-line-names =3D "TP35", "", "", "", "CAN_1_120R", /* 0 */ + "", "", "USER_BTN2", "DUT_PWR_EN", "UART_TX_EN", /* 5 */ + "UART_RX_EN", "TP24", "", "TP25", "TP26", /* 10 */ + "TP27"; /* 15 */ +}; + +&gpiog { + gpio-line-names =3D "ETH_RESET", "", "", "", "", /* 0 */ + "IOBUS_FLT_FB", "", "USER_LED2", "ETH1_PPS_A", "CAN_0_120R", /* 5 */ + "POWER_ADC_RESET", "", "", "", "", /* 10 */ + ""; /* 15 */ +}; + +&m_can2 { + termination-gpios =3D <&gpioe 4 GPIO_ACTIVE_HIGH>; + termination-ohms =3D <120>; +}; + +&pinctrl { + board_adc1_ain_pins: board-adc1-ain-0 { + pins { + pinmux =3D , /* ADC1_INP2 */ + , /* ADC1_INP5 */ + , /* ADC1_INP9 */ + , /* ADC1_INP10 */ + , /* ADC1_INP13 */ + , /* ADC1_INP14 */ + , /* ADC1_INP15 */ + ; /* ADC1_INP18 */ + }; + }; +}; + +&spi2 { + adc@0 { + compatible =3D "ti,lmp92064"; + reg =3D <0>; + + reset-gpios =3D <&gpiog 10 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; + shunt-resistor-micro-ohms =3D <15000>; + spi-max-frequency =3D <5000000>; + vdd-supply =3D <®_pb_3v3>; + vdig-supply =3D <®_pb_3v3>; + }; +}; + +&timers8 { + /* spare dmas for other usage */ + /delete-property/dmas; + /delete-property/dma-names; + + status =3D "okay"; + + led_pwm: pwm { + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&pwm8_pins_b>; + pinctrl-1 =3D <&pwm8_sleep_pins_b>; + status =3D "okay"; + }; +}; --=20 2.45.2