From patchwork Mon Aug 26 08:42:08 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrei Stefanescu X-Patchwork-Id: 822527 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11012053.outbound.protection.outlook.com [52.101.66.53]) (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 DC67F13D8A2; Mon, 26 Aug 2024 08:42:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.53 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1724661780; cv=fail; b=gqe+bkbVsxj/39fe7nEVthiXcvelyo5hVEcdRbmT4wTx+iLmkAHFFzPUjX1dtTSYkTJmiiIHDDZ8krnX+vaZcHSsJdL70hF96+WL8yHx1xm4Z9yv4Ul2eEFjcvoSgjj7JqtcxaH0oKq6sNns74aNgQx+OwjBIiLx2an5WqqBYcA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1724661780; c=relaxed/simple; bh=cU6A+yNjr75y0CvxdiYHAAM7UOLAa9Z8tXU+de67hg4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=ZWhTYHxPSj5BWHJYXxHTYYCZXuvloivc2LUZiLvFhsRTWrbRoDtpPDnVdmxYpBNgpwST8ww1K8G1w6HeKWIK8jkv4Ygywb1KxDwX1B16t20bCx3XAi7uRvksmrCBmas/E1UXbfNf5qCVeuEs4HHKavJk6b1BRo0HFoQxLt5QSUA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=ggA3M5JV; arc=fail smtp.client-ip=52.101.66.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="ggA3M5JV" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yhZt+yMKaItWT76/yiRf5Pan7C4sWw3+o1YWeK4Jkw7EtSl0JSLsHRE54kcHRJhxODDoGkDBTy3uW7WI/uh1JZwHcuhrrrDR4CHI3BHHG/Nj6v1yl0EWKOEVswrgqeFrYhYQHDEa0b5Dk91AZmVXhDHBnUb/xO/O1xW83072VUu8PHqqVMKNHfRxS29IhKPa+9NHkWgMoBe64qAfHB71d7xqJVRBIuxUHTyG43YkiaMWuJlyYhHirrlF0d81oEbLHeHa9mOFd4+xRV5Yn46tSb2t/O1h1xa5MkE5nADsBClPZsrZEsj3egRe+6d0FnBEk8IgtXTg/n1f9TfuGpIMKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ReMTfYB6XlnXjTuva12Bx5ElDSxWV5lyjVfoopXhl6A=; b=JhnvD006k974Yr/6mD4N0limOHBNwXgy9Z8SpA3V7hiohiJetdR+CLyHN/9l0zAZ3WA15cbaolx+qApIxHVf+Q+YfEsHdubAch7NYQAwVY1hC3Q1hXd4qLSjwQA9YGJd02Qiw3HCBhayP3/DEyb0o+IfKsAdt1YSQ1IPHGncmszsJCEdqwOD/Y/SZvWBUdBrt/BB26FT5erM94xmW1jZ3l98s8WPLGAw507FENsRZgE+HLLVtX9k1a1Lv7P3VEPjzZk30NAYsDpN546VdEhoht2SbbTxCIWvzyMyF0uwwKFJ9FgUpgHpBTYb7KgjtAD75YXewVoBf8hwGgOeTaaO+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ReMTfYB6XlnXjTuva12Bx5ElDSxWV5lyjVfoopXhl6A=; b=ggA3M5JVWdB55kYazmQvsbqhdTpzrtpEp8DqWoYKtmdAO3y0s6xwwuap4UjwzX1SqHp+m3RL8RMonQkuUy5NV7egMNJ5/8HXM9Gs+i6bD1GvxINNvh+sPA2/OUDM4LQjrPH78jXHSv2oSID39vqfPYRpCPidX+QdbeFh+7WpkNgTu0XYhjlh4n7PmRlubkPV7kbaNVc/iVKp1slmmX6zATCOCT9y0UyMTJsmoyTUFV6yyBvewx2xy85vRzA4L7nHkrJCEk7w3aQfaD1AD6zGtD3tft+qGpd6oDiywEBn5yhcMVDKZvoaQxTnEJQZs9FWGwgnEFd6IX+7zIVD4h6Oqw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AM9PR04MB8487.eurprd04.prod.outlook.com (2603:10a6:20b:41a::6) by PAXPR04MB9680.eurprd04.prod.outlook.com (2603:10a6:102:23e::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7897.23; Mon, 26 Aug 2024 08:42:53 +0000 Received: from AM9PR04MB8487.eurprd04.prod.outlook.com ([fe80::6d7a:8d2:f020:455]) by AM9PR04MB8487.eurprd04.prod.outlook.com ([fe80::6d7a:8d2:f020:455%4]) with mapi id 15.20.7897.021; Mon, 26 Aug 2024 08:42:53 +0000 From: Andrei Stefanescu To: Linus Walleij , Bartosz Golaszewski , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Chester Lin , Matthias Brugger , Ghennadi Procopciuc , Larisa Grigore Cc: linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, NXP S32 Linux Team , Andrei Stefanescu , Phu Luu An , Ghennadi Procopciuc Subject: [PATCH 1/3] dt-bindings: gpio: add schema for NXP S32G2/S32G3 SoCs Date: Mon, 26 Aug 2024 11:42:08 +0300 Message-ID: <20240826084214.2368673-2-andrei.stefanescu@oss.nxp.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240826084214.2368673-1-andrei.stefanescu@oss.nxp.com> References: <20240826084214.2368673-1-andrei.stefanescu@oss.nxp.com> X-ClientProxiedBy: AS4P191CA0043.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:657::10) To AM9PR04MB8487.eurprd04.prod.outlook.com (2603:10a6:20b:41a::6) Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8487:EE_|PAXPR04MB9680:EE_ X-MS-Office365-Filtering-Correlation-Id: b8f9a210-f00b-44bd-6675-08dcc5ab131a X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|376014|52116014|1800799024|366016|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?wUMsM2ThwS2WNfdI2GJZdxOxytyX7ox?= =?utf-8?q?taqb74D+tvtz1z/7diJCjgznl/E6bcP8eZd0QU3nSgXRFYPEKOr48uem6MU+pZZLR?= =?utf-8?q?o5x4lsQaV71JVIDWAyfoK3UtX69nxxSbLMP1oa2DsdxBaoKGISf6kkpDeHViIPtf/?= =?utf-8?q?0b9ZRQbPUq3uUeP5YOY/wdj1NSMx7+HNW5FS2rXP6MpvG8kl+XUPB7rFX9nHZeicE?= =?utf-8?q?M98qyyb1UJpsrV1Qs4+DueexaBd76j5P75OVwmnp0aEY8tSgJAoRA1tajbjLDgIb5?= =?utf-8?q?Na0Fh5BMjF2wnbS6/Zpc6GzLGOQ4eTgy4/2ahZOyVN3a+tIICuSxgtdM5o4ODgXhG?= =?utf-8?q?cp9cxLZCAXafSEbJR9+HTc5eswvc/mV8DiHaNbO/wL4QMcDOCsq28n8Y13/k++sam?= =?utf-8?q?Ho8Wnwa87c3I2xH1xtRfZJcDfJnEkSviuM0JZom9qX6OV6h2FnRDutY62SCCrbLRF?= =?utf-8?q?974uyoV1WI03TKend79KauVvGdxFMs2+Vi+Ufp1Id+/uQFS1o7z7fLThinkhJcHkA?= =?utf-8?q?BOVvr3Ox53XAYyEBQdtuwl3v434IwQVEE7bTqZZlgVrV04NCjAco60hu02/FDdBvn?= =?utf-8?q?SQxJSRLep7y/v27IL1tQZUbIPzc7LeCQT9CjihUDbx0Ilpe/MQ4lrl5fezZXCJo92?= =?utf-8?q?hKeIeHKv1526P7jvLNW7Hmy+dajWx98pdHhc8PKkLF1hUiQvtoNb8poFZ78q3rE6O?= =?utf-8?q?6DWnxu0fNgNMpwv2AcY8V+Tach/2ndM3WooBPg+d1g1XNC+c7lK7KUWbGsKM7h75P?= =?utf-8?q?AjlU/zhCGGYr+ZB1MWckHiQp0eBiuY+EVklrp0p5XQI8ZNQu4BxWDXjyk/5DUhLh/?= =?utf-8?q?MD2R6psvm8MXq4W276Mm77omMeHQhqTH4bmWEZmMJJcK+XlaY1y4mOcnVN/heLMbK?= =?utf-8?q?wLN7nV2ZKkGM2Yo8k1Gq/WUJTQQr7j2JF2dhfO+0vVBTnH945sxQo1LTy2TympvTt?= =?utf-8?q?g6SzFAWrk5HiOjuBk7kecUacjaodySYWZ+2CMrGnHwiyBwJufkc1gzGsAML/RyWS6?= =?utf-8?q?BxmDJimOyyFyS+/aBUQfhFmH6PjnM4DV6FSdYYYwAyPQk/toB6UA3g9RaieJmZ8bF?= =?utf-8?q?2HfUGzbzd6h3fufYQ/FDivO5JfS/S8HaiJa5hLKDX4VuTs6eigCZiRXiEM9JDPQi+?= =?utf-8?q?/4119zylNrvA68FYrq/qR/qbz639DapcT7w3nDALYGJTSC1qupONMFRIibd1mkT+S?= =?utf-8?q?lJ/L4u5N6e41gDipBIr+UaVrbIuLTMuvs0BEAQ8YhoHpt+nY33Ehhn/5IXM0Cwy3g?= =?utf-8?q?ATiutuO0ssEbvLidmWpubUu7iBFmGVaDyfaVRs2oynnaRe52FbcWHoeg=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR04MB8487.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(376014)(52116014)(1800799024)(366016)(38350700014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?Hh9pk+G60lUSbhWspqkAABQIkblo?= =?utf-8?q?f8O4kOyVx4wuxp5xSUnmtfE8qTRdmjGT5vNju0XudmkDmSaRpBCjLtMxD2IELi8UH?= =?utf-8?q?KrAIpUieaSWKILCzEOBIW4Xf5KpQIBmtECS/fuAZ/CZPEp9NgtbeOd9E+018HMcrI?= =?utf-8?q?2yR7btFgYqWMACeAvSg8ghCg0BkqU4I09bFJAatgbBODvWTd+X6XOw622fXgRZZrR?= =?utf-8?q?tuOC3zmBa39+MQsXUvyvdqbUfgTneAB7kIWnhbbyc/HMQ8nHXTtNaeHmtVEzoNr4n?= =?utf-8?q?N3RqbPFjsmyzZXeKWCK302jfYxJWC3FRUekE0xkw6jErmpzlyBH29NkO/krG1ZNZW?= =?utf-8?q?fjWh8btcduSvXIUoeBFf8BO6yJFy510BzR5G8z9FWUuWTPAEYymSR+nRq8NmIBiqm?= =?utf-8?q?1SvoCxSArKEMMvgrlE7P6SGUFUKlsmpkbyS53+vdmu6TMRl4vuBJCbqsGpZ3Y6U3n?= =?utf-8?q?lskLPsJWBOTDK8vYvwznwJ6orfvgkUxJiK0BX93qPWIS3kw2ZHJU+n14KMl2yl+o2?= =?utf-8?q?UhcbfXwEkysFWeLHsp/pYgxAawNzI/lmiXIRKYkvZ0djv+53D3LiTiIbzVCWkMZpk?= =?utf-8?q?CyID4H3NosfXIHVHOKvubIPSkx8+mNCXHfRq6XpaU94tt/+A474PeWEqXGjE64je2?= =?utf-8?q?68x5Md5TnxMeZA6888c2HGpkH14F/XuewL+EeOv3QQoKDzi/TZL6OOtSe5IaB5Wh8?= =?utf-8?q?EXMC6YPlDdSx2QR2XACVqY/a/Tq5cvbr9MZMoI9n7Cc1dCvWcjpDiR+jpAnfm3XlX?= =?utf-8?q?NGQ9JSCggYYwS7hozQiHn+OjF+DiPk6GRVvGcFqjT2iNP6lEnjQV6MVKvBej2n2FO?= =?utf-8?q?4EFnUxp/8f6fke2uqw5WCjhvqHRXEUbPVADQ7kod2M/rDYtVupg5+ePrRZc1dzS08?= =?utf-8?q?76ywoiXOSPc54roec/vD4C7JqBtHGJBnzhgMqfXYHshTC353xGk5gKAsXP2cCkQ+L?= =?utf-8?q?JvhLejgLc1RxwYp3LRJKb3uWSk+Z6dc7EvHa+kPkReLbukpYH/3OG8TZfv6pCjL+Z?= =?utf-8?q?u0ceznf9fgKv9PGqd9RZbqXBdrfekPDdWjmhXvFR+IaL5nwLMFHbIH6ld1jNk3/NI?= =?utf-8?q?JMRPSsoTQmUrWfglH8F4poY5taPgOb6H3mPYngZop3BZ8taol6jqOQmq72N/rovlV?= =?utf-8?q?4P4p0xZT/EDm1cke2xvpp06xPGc2X7rErOTq7B4hOQfRmxdN8gsJ9hdNWehbPJ0Su?= =?utf-8?q?lR8n95XF9W01qubhLI29do/q+EBrMo29mgZFZ3vI5q7noSjZAbxE1aEiFjsEwkf2c?= =?utf-8?q?TCcWsmjTFyQ5qn4ZmJuw1tgmw3HqgDekKVqSMkbD40uf95ABIaTRWSGB43JkW3CbA?= =?utf-8?q?9zlWb+5xiuO3dzKaMe1o+EHqB3D5tafUVt/+EscNmatC1MbpULKMSxno7eIBmb6zW?= =?utf-8?q?g9niIqsG+JVZhauTqasQ0lT7JA2L4SE40mVZ5eJl5wqE8OhjwFbbTLGt5JnnxQeCJ?= =?utf-8?q?PnDPXFCXgLB476E+9lLiue0m6pAMepvWwX6aB4KbL0f3a5gh/5hCqcYypPQLOQRP6?= =?utf-8?q?1vO6ssW2xgn8y0f9LIwOltq/gEDa8stdvw=3D=3D?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8f9a210-f00b-44bd-6675-08dcc5ab131a X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8487.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2024 08:42:53.3860 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FYuhcTBLD+vEvHo48RIMyiXYcVVfMwIp1Rivn0K/b5N5O939pU592r5z+s1nohnQVy9tkBzWhzGycEoWe5iVd7W3jwFt6Pg5kLG+IvYtFY0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9680 Add the DT schema for the GPIO driver of the NXP S32G2/S32G3 SoCs. Signed-off-by: Phu Luu An Signed-off-by: Larisa Grigore Signed-off-by: Ghennadi Procopciuc Signed-off-by: Andrei Stefanescu --- .../bindings/gpio/nxp,gpio-siul2-s32g2.yaml | 134 ++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/nxp,gpio-siul2-s32g2.yaml diff --git a/Documentation/devicetree/bindings/gpio/nxp,gpio-siul2-s32g2.yaml b/Documentation/devicetree/bindings/gpio/nxp,gpio-siul2-s32g2.yaml new file mode 100644 index 000000000000..fba41a18d4c8 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/nxp,gpio-siul2-s32g2.yaml @@ -0,0 +1,134 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause +# Copyright 2024 NXP +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/gpio/nxp,gpio-siul2-s32g2.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP S32G2 SIUL2 GPIO controller + +maintainers: + - Ghennadi Procopciuc + - Larisa Grigore + - Andrei Stefanescu + +description: | + Support for the SIUL2 GPIOs found on the S32G2 and S32G3 + chips. It includes an IRQ controller for all pins which have + an EIRQ associated. + +properties: + compatible: + items: + - const: nxp,s32g2-siul2-gpio + + reg: + description: | + A list of register regions for configuring interrupts, + GPIO output values and reading GPIO input values. + items: + - description: PGPDO (output value) registers for SIUL2_0 + - description: PGPDO (output value) registers for SIUL2_1 + - description: PGPDI (input value) registers for SIUL2_0 + - description: PGPDI (input value) registers for SIUL2_1 + - description: EIRQ (interrupt) configuration registers from SIUL2_1 + - description: EIRQ IMCR registers for interrupt muxing between pads + + reg-names: + items: + - const: opads0 + - const: opads1 + - const: ipads0 + - const: ipads1 + - const: eirqs + - const: eirq-imcrs + + interrupts: + description: + The port interrupt shared by all 32 EIRQs. + + gpio-controller: + description: + Marks the device node as a gpio controller + + "#gpio-cells": + description: | + Should be two. The first cell is the pin number and + the second cell is used to specify the gpio polarity + 0 = active high + 1 = active low + + interrupt-controller: + description: + Marks the device node as an interrupt controller + + "#interrupt-cells": + const: 2 + description: + Refer to ../interrupt-controller/interrupts.txt for more details. + + gpio-ranges: + description: + Interaction with the PINCTRL subsystem + Refer to gpio.txt for more details. + + gpio-reserved-ranges: + description: + A list of start GPIO and number of GPIO pairs which are unusable. + Refer to gpio.txt for more details. + +patternProperties: + "^(hog-[0-9]+|.+-hog(-[0-9]+)?)$": + additionalProperties: false + type: object + properties: + gpio-hog: true + gpios: true + input: true + output-high: true + output-low: true + line-name: true + required: + - gpio-hog + - gpios + +required: + - compatible + - interrupts + - reg + - reg-names + - gpio-controller + - "#gpio-cells" + - interrupt-controller + - "#interrupt-cells" + - gpio-ranges + +additionalProperties: false + +examples: + - | + #include + #include + + gpio: siul2-gpio@4009d700 { + compatible = "nxp,s32g2-siul2-gpio"; + reg = <0x4009d700 0x10>, + <0x44011700 0x18>, + <0x4009d740 0x10>, + <0x44011740 0x18>, + <0x44010010 0xb4>, + <0x44011078 0x80>; + reg-names = "opads0", "opads1", "ipads0", + "ipads1", "eirqs", "eirq-imcrs"; + gpio-controller; + #gpio-cells = <2>; + /* GPIO 0-101 */ + gpio-ranges = <&pinctrl 0 0 102>, + /* GPIO 112-190 */ + <&pinctrl 112 112 79>; + gpio-reserved-ranges = <102 10>, <123 21>; + interrupt-controller; + #interrupt-cells = <2>; + interrupts = ; + status = "okay"; + };