From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4EAE4CCA477 for ; Wed, 1 Jun 2022 15:28:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1355504AbiFAP2C (ORCPT ); Wed, 1 Jun 2022 11:28:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46112 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355474AbiFAP16 (ORCPT ); Wed, 1 Jun 2022 11:27:58 -0400 Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com [IPv6:2a00:1450:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7472333343 for ; Wed, 1 Jun 2022 08:27:53 -0700 (PDT) Received: by mail-ej1-x629.google.com with SMTP id m20so4481382ejj.10 for ; Wed, 01 Jun 2022 08:27:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DXHV9UQd65E5JHZd7pjDwKymfaDUFSZ63bdLaZpdowQ=; b=VD2UWJNwPqlx/yFFNX0BsWSvJOjFeVC+Y0R83/XM4f8WXY/OwE+A2dQvsUERynIZxh qmuIX4g/hbIshb7MADMXBhdvN9S7iaVG1K2N3hLd6AIAVfQSCYDfcMirY3Kn0j/mRUaH MJutMgf6zrKyWwV9NPl7hzeI04EoovZoUlCrjM4ZJBMG2WCQpHQTQ8/tTPwjw/DUYZzV dMw3uQ/KfH3CPWoTfVpb7EMFJ/A3QNrywpX/kXDIMf3vns96em6watTlLRGXOajmVSaj ABdgVk6XVtoFJRZC9Nv6bNIDdTI5B5KeMrz8nlvdBgKVEz0DXG1JmpMG7+1O/T4y3suQ nVKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=DXHV9UQd65E5JHZd7pjDwKymfaDUFSZ63bdLaZpdowQ=; b=7fmgbI/jYpZZ9aQRngP1/pBsiqgtbz6X+k9Ap05qKKyrwN4c3yGTpa6Uc+RN8l1xrR MXdf2qaUo+F6f6WUfYOJI03WCI4AAwFeWGseELvazEwNjslq2Gzegzo00RWrSHV6Y86d rW/4qdecIcE3zQoUmFwb+ZmXqSzdlSUZ7BZJKnZkgSqzCnAhgSszAmPr5gxvaFEL1spF t0GGQFcZOkyQ0UhWK6YRJjPBE2dymPSWiXUy4Dfo7SoLkUl3GJP18XK2Kh2YK8nRdUKD bC5QnOhaD5ylOHggwR84hgy6rECBcrJn14mLllyG+d/pvRUpW2EgaiLetazA+3y1pDlp 0Jfg== X-Gm-Message-State: AOAM5308mzAiMl4oABqEnkd8NhR/HveOKeWvzVxV3KQO3AQMQ+6EdNfI s0Vdv0xeozP8D06Bdm2V/QlhmA== X-Google-Smtp-Source: ABdhPJw2hsSBAEijto4XqpMxn5rSL2bEgcd/YUVRMck/m1LZ3CPy3QoPX97Fw4waXwhq1S6UWJbSkQ== X-Received: by 2002:a17:907:7d94:b0:6ff:1580:4d01 with SMTP id oz20-20020a1709077d9400b006ff15804d01mr39837ejc.231.1654097271914; Wed, 01 Jun 2022 08:27:51 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:51 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 1/7] ARM: dts: s3c2410: use local header for pinctrl register values Date: Wed, 1 Jun 2022 17:27:14 +0200 Message-Id: <20220601152720.232383-2-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The DTS uses hardware register values directly in pin controller pin configuration. These are not some IDs or other abstraction layer but raw numbers used in the registers. These numbers were previously put in the bindings header to avoid code duplication and to provide some context meaning (name), but they do not fit the purpose of bindings. It is also quite confusing to use constants prefixed with Exynos for other SoC, because there is actually nothing here in common, except the actual value. Store the constants in a header next to DTS and use them instead of bindings. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/s3c2410-pinctrl.h | 19 +++++++++++++ arch/arm/boot/dts/s3c2416-pinctrl.dtsi | 38 +++++++++++++------------- 2 files changed, 38 insertions(+), 19 deletions(-) create mode 100644 arch/arm/boot/dts/s3c2410-pinctrl.h diff --git a/arch/arm/boot/dts/s3c2410-pinctrl.h b/arch/arm/boot/dts/s3c241= 0-pinctrl.h new file mode 100644 index 000000000000..76b6171ae149 --- /dev/null +++ b/arch/arm/boot/dts/s3c2410-pinctrl.h @@ -0,0 +1,19 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Samsung S3C2410 DTS pinctrl constants + * + * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * Copyright (c) 2022 Linaro Ltd + * Author: Krzysztof Kozlowski + */ + +#ifndef __DTS_ARM_SAMSUNG_S3C2410_PINCTRL_H__ +#define __DTS_ARM_SAMSUNG_S3C2410_PINCTRL_H__ + +#define S3C2410_PIN_FUNC_INPUT 0 +#define S3C2410_PIN_FUNC_OUTPUT 1 +#define S3C2410_PIN_FUNC_2 2 +#define S3C2410_PIN_FUNC_3 3 + +#endif /* __DTS_ARM_SAMSUNG_S3C2410_PINCTRL_H__ */ diff --git a/arch/arm/boot/dts/s3c2416-pinctrl.dtsi b/arch/arm/boot/dts/s3c= 2416-pinctrl.dtsi index 20a7d72827c2..3268366bd8bc 100644 --- a/arch/arm/boot/dts/s3c2416-pinctrl.dtsi +++ b/arch/arm/boot/dts/s3c2416-pinctrl.dtsi @@ -5,7 +5,7 @@ * Copyright (c) 2013 Heiko Stuebner */ =20 -#include +#include "s3c2410-pinctrl.h" =20 &pinctrl_0 { /* @@ -82,91 +82,91 @@ gpm: gpm-gpio-bank { =20 uart0_data: uart0-data-pins { samsung,pins =3D "gph-0", "gph-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 uart0_fctl: uart0-fctl-pins { samsung,pins =3D "gph-8", "gph-9"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 uart1_data: uart1-data-pins { samsung,pins =3D "gph-2", "gph-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 uart1_fctl: uart1-fctl-pins { samsung,pins =3D "gph-10", "gph-11"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 uart2_data: uart2-data-pins { samsung,pins =3D "gph-4", "gph-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 uart2_fctl: uart2-fctl-pins { samsung,pins =3D "gph-6", "gph-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 uart3_data: uart3-data-pins { samsung,pins =3D "gph-6", "gph-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 extuart_clk: extuart-clk-pins { samsung,pins =3D "gph-12"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 i2c0_bus: i2c0-bus-pins { samsung,pins =3D "gpe-14", "gpe-15"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 spi0_bus: spi0-bus-pins { samsung,pins =3D "gpe-11", "gpe-12", "gpe-13"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd0_clk: sd0-clk-pins { samsung,pins =3D "gpe-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd0_cmd: sd0-cmd-pins { samsung,pins =3D "gpe-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd0_bus1: sd0-bus1-pins { samsung,pins =3D "gpe-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd0_bus4: sd0-bus4-pins { samsung,pins =3D "gpe-8", "gpe-9", "gpe-10"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd1_cmd: sd1-cmd-pins { samsung,pins =3D "gpl-8"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd1_clk: sd1-clk-pins { samsung,pins =3D "gpl-9"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd1_bus1: sd1-bus1-pins { samsung,pins =3D "gpl-0"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; =20 sd1_bus4: sd1-bus4-pins { samsung,pins =3D "gpl-1", "gpl-2", "gpl-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; }; }; --=20 2.34.1 From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6C4EDCCA478 for ; Wed, 1 Jun 2022 15:28:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1355576AbiFAP2N (ORCPT ); Wed, 1 Jun 2022 11:28:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46200 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355498AbiFAP17 (ORCPT ); Wed, 1 Jun 2022 11:27:59 -0400 Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com [IPv6:2a00:1450:4864:20::636]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 14AD72F3A7 for ; Wed, 1 Jun 2022 08:27:55 -0700 (PDT) Received: by mail-ej1-x636.google.com with SMTP id gi33so4526428ejc.3 for ; Wed, 01 Jun 2022 08:27:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=iYwjvnTy9eaY1TYQpKv1uuHtmn6mMFvjk3zD0G5gDLQ=; b=jDfHjbygOAKNe7jYKscPLuk0cfBpiOkocaAtSplbDzwYxx7eJMQPgIpRp/ob1Ugbp+ K2y9lVPrSTvCX2GRNhzhTcWLIKL3t4N9OPOaJxuqtGy0Rx0VT3fW7KL8EyWH4Rv46wXx SpJn8Rhusg95SI2Ze/YKmaHZikjEu4XqS6wBiHozB9dHNQfB3vD6Pzgb5WOz3uv9e5Uj q6nC1V+j3xA24iaV7FGrmiH1/zZGmcjx2anwhxVn4F1d1g1ZvSr1QFul+VTsHHXasHba Pus9s2YKCpaotEL2lDG4qNkKSRzjWNFQ9Dt/f524J+K3QZTTFqboWYZNY9us4WPRavYp RvtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=iYwjvnTy9eaY1TYQpKv1uuHtmn6mMFvjk3zD0G5gDLQ=; b=fTyQYHWbhsoIi69OtbpAstfaE/CKuKDvkBL/67Yi1I2Q9FbPDzB33Jemc99h5sVXLv 6epDmRtNE4E1tHvH2gUSyf5ipmBgc+VaQxLtO2bevinTnvBc+EFJwKkpDHanq7U2hiWx DT7oL4jLavYROR1SE6GTWzLUU70Ec4fWpxeTegdyd6yFEOTGjH6kshr1MAzeLGM88Wev emiZQM6HUyDwgT2Pcx/c5hi2zEXFCakuP+iHnpBulGPwhWxVza/6pkOJUuMnOQX+foH7 FH9RRBbQp3sTLP2KY+ROI3iq/kgqxfE3gIE3DhR2oFpKp25AbJVAsQzJZF1PqTxwwKyk 1zow== X-Gm-Message-State: AOAM533nsSZt+vEuAi57apTKf/bO/rUbXZg+QvsSQ70y8vUaySRJgtkA aRhMrHNzTFURQNm8p/dcwTZVyA== X-Google-Smtp-Source: ABdhPJxyFyeLPLFdlzkCIZRtyir75VfiVGhrsIpkojDseUGJ0XtcqIQ9NaQht67n0eQTHx1i8ZNVGg== X-Received: by 2002:a17:907:6d19:b0:6fe:cb76:e8e with SMTP id sa25-20020a1709076d1900b006fecb760e8emr80216ejc.240.1654097273256; Wed, 01 Jun 2022 08:27:53 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:52 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 2/7] ARM: dts: s3c64xx: use local header for pinctrl register values Date: Wed, 1 Jun 2022 17:27:15 +0200 Message-Id: <20220601152720.232383-3-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The DTS uses hardware register values directly in pin controller pin configuration. These are not some IDs or other abstraction layer but raw numbers used in the registers. These numbers were previously put in the bindings header to avoid code duplication and to provide some context meaning (name), but they do not fit the purpose of bindings. It is also quite confusing to use constants prefixed with Exynos for other SoC, because there is actually nothing here in common, except the actual value. Store the constants in a header next to DTS and use them instead of bindings. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/s3c64xx-pinctrl.dtsi | 178 ++++++++++++------------- arch/arm/boot/dts/s3c64xx-pinctrl.h | 27 ++++ 2 files changed, 116 insertions(+), 89 deletions(-) create mode 100644 arch/arm/boot/dts/s3c64xx-pinctrl.h diff --git a/arch/arm/boot/dts/s3c64xx-pinctrl.dtsi b/arch/arm/boot/dts/s3c= 64xx-pinctrl.dtsi index 0a3186d57cb5..f53959b7d031 100644 --- a/arch/arm/boot/dts/s3c64xx-pinctrl.dtsi +++ b/arch/arm/boot/dts/s3c64xx-pinctrl.dtsi @@ -9,7 +9,7 @@ * listed as device tree nodes in this file. */ =20 -#include +#include "s3c64xx-pinctrl.h" =20 &pinctrl0 { /* @@ -133,219 +133,219 @@ gpq: gpq-gpio-bank { =20 uart0_data: uart0-data-pins { samsung,pins =3D "gpa-0", "gpa-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 uart0_fctl: uart0-fctl-pins { samsung,pins =3D "gpa-2", "gpa-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 uart1_data: uart1-data-pins { samsung,pins =3D "gpa-4", "gpa-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 uart1_fctl: uart1-fctl-pins { samsung,pins =3D "gpa-6", "gpa-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 uart2_data: uart2-data-pins { samsung,pins =3D "gpb-0", "gpb-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 uart3_data: uart3-data-pins { samsung,pins =3D "gpb-2", "gpb-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 ext_dma_0: ext-dma-0-pins { samsung,pins =3D "gpb-0", "gpb-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 ext_dma_1: ext-dma-1-pins { samsung,pins =3D "gpb-2", "gpb-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 irda_data_0: irda-data-0-pins { samsung,pins =3D "gpb-0", "gpb-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 irda_data_1: irda-data-1-pins { samsung,pins =3D "gpb-2", "gpb-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 irda_sdbw: irda-sdbw-pins { samsung,pins =3D "gpb-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2c0_bus: i2c0-bus-pins { samsung,pins =3D "gpb-5", "gpb-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2c1_bus: i2c1-bus-pins { /* S3C6410-only */ samsung,pins =3D "gpb-2", "gpb-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 spi0_bus: spi0-bus-pins { samsung,pins =3D "gpc-0", "gpc-1", "gpc-2"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 spi0_cs: spi0-cs-pins { samsung,pins =3D "gpc-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 spi1_bus: spi1-bus-pins { samsung,pins =3D "gpc-4", "gpc-5", "gpc-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 spi1_cs: spi1-cs-pins { samsung,pins =3D "gpc-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd0_cmd: sd0-cmd-pins { samsung,pins =3D "gpg-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd0_clk: sd0-clk-pins { samsung,pins =3D "gpg-0"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd0_bus1: sd0-bus1-pins { samsung,pins =3D "gpg-2"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd0_bus4: sd0-bus4-pins { samsung,pins =3D "gpg-2", "gpg-3", "gpg-4", "gpg-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd0_cd: sd0-cd-pins { samsung,pins =3D "gpg-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd1_cmd: sd1-cmd-pins { samsung,pins =3D "gph-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd1_clk: sd1-clk-pins { samsung,pins =3D "gph-0"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd1_bus1: sd1-bus1-pins { samsung,pins =3D "gph-2"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd1_bus4: sd1-bus4-pins { samsung,pins =3D "gph-2", "gph-3", "gph-4", "gph-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd1_bus8: sd1-bus8-pins { samsung,pins =3D "gph-2", "gph-3", "gph-4", "gph-5", "gph-6", "gph-7", "gph-8", "gph-9"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd1_cd: sd1-cd-pins { samsung,pins =3D "gpg-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd2_cmd: sd2-cmd-pins { samsung,pins =3D "gpc-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd2_clk: sd2-clk-pins { samsung,pins =3D "gpc-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd2_bus1: sd2-bus1-pins { samsung,pins =3D "gph-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 sd2_bus4: sd2-bus4-pins { samsung,pins =3D "gph-6", "gph-7", "gph-8", "gph-9"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2s0_bus: i2s0-bus-pins { samsung,pins =3D "gpd-0", "gpd-2", "gpd-3", "gpd-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2s0_cdclk: i2s0-cdclk-pins { samsung,pins =3D "gpd-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2s1_bus: i2s1-bus-pins { samsung,pins =3D "gpe-0", "gpe-2", "gpe-3", "gpe-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2s1_cdclk: i2s1-cdclk-pins { samsung,pins =3D "gpe-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 @@ -353,50 +353,50 @@ i2s2_bus: i2s2-bus-pins { /* S3C6410-only */ samsung,pins =3D "gpc-4", "gpc-5", "gpc-6", "gph-6", "gph-8", "gph-9"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 i2s2_cdclk: i2s2-cdclk-pins { /* S3C6410-only */ samsung,pins =3D "gph-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pcm0_bus: pcm0-bus-pins { samsung,pins =3D "gpd-0", "gpd-2", "gpd-3", "gpd-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pcm0_extclk: pcm0-extclk-pins { samsung,pins =3D "gpd-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pcm1_bus: pcm1-bus-pins { samsung,pins =3D "gpe-0", "gpe-2", "gpe-3", "gpe-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pcm1_extclk: pcm1-extclk-pins { samsung,pins =3D "gpe-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 ac97_bus_0: ac97-bus-0-pins { samsung,pins =3D "gpd-0", "gpd-1", "gpd-2", "gpd-3", "gpd-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 ac97_bus_1: ac97-bus-1-pins { samsung,pins =3D "gpe-0", "gpe-1", "gpe-2", "gpe-3", "gpe-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 @@ -404,242 +404,242 @@ cam_port: cam-port-pins { samsung,pins =3D "gpf-0", "gpf-1", "gpf-2", "gpf-4", "gpf-5", "gpf-6", "gpf-7", "gpf-8", "gpf-9", "gpf-10", "gpf-11", "gpf-12"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 cam_rst: cam-rst-pins { samsung,pins =3D "gpf-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 cam_field: cam-field-pins { /* S3C6410-only */ samsung,pins =3D "gpb-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pwm_extclk: pwm-extclk-pins { samsung,pins =3D "gpf-13"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pwm0_out: pwm0-out-pins { samsung,pins =3D "gpf-14"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 pwm1_out: pwm1-out-pins { samsung,pins =3D "gpf-15"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 clkout0: clkout-0-pins { samsung,pins =3D "gpf-14"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col0_0: keypad-col0-0-pins { samsung,pins =3D "gph-0"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col1_0: keypad-col1-0-pins { samsung,pins =3D "gph-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col2_0: keypad-col2-0-pins { samsung,pins =3D "gph-2"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col3_0: keypad-col3-0-pins { samsung,pins =3D "gph-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col4_0: keypad-col4-0-pins { samsung,pins =3D "gph-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col5_0: keypad-col5-0-pins { samsung,pins =3D "gph-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col6_0: keypad-col6-0-pins { samsung,pins =3D "gph-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col7_0: keypad-col7-0-pins { samsung,pins =3D "gph-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col0_1: keypad-col0-1-pins { samsung,pins =3D "gpl-0"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col1_1: keypad-col1-1-pins { samsung,pins =3D "gpl-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col2_1: keypad-col2-1-pins { samsung,pins =3D "gpl-2"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col3_1: keypad-col3-1-pins { samsung,pins =3D "gpl-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col4_1: keypad-col4-1-pins { samsung,pins =3D "gpl-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col5_1: keypad-col5-1-pins { samsung,pins =3D "gpl-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col6_1: keypad-col6-1-pins { samsung,pins =3D "gpl-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_col7_1: keypad-col7-1-pins { samsung,pins =3D "gpl-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row0_0: keypad-row0-0-pins { samsung,pins =3D "gpk-8"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row1_0: keypad-row1-0-pins { samsung,pins =3D "gpk-9"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row2_0: keypad-row2-0-pins { samsung,pins =3D "gpk-10"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row3_0: keypad-row3-0-pins { samsung,pins =3D "gpk-11"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row4_0: keypad-row4-0-pins { samsung,pins =3D "gpk-12"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row5_0: keypad-row5-0-pins { samsung,pins =3D "gpk-13"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row6_0: keypad-row6-0-pins { samsung,pins =3D "gpk-14"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row7_0: keypad-row7-0-pins { samsung,pins =3D "gpk-15"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row0_1: keypad-row0-1-pins { samsung,pins =3D "gpn-0"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row1_1: keypad-row1-1-pins { samsung,pins =3D "gpn-1"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row2_1: keypad-row2-1-pins { samsung,pins =3D "gpn-2"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row3_1: keypad-row3-1-pins { samsung,pins =3D "gpn-3"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row4_1: keypad-row4-1-pins { samsung,pins =3D "gpn-4"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row5_1: keypad-row5-1-pins { samsung,pins =3D "gpn-5"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row6_1: keypad-row6-1-pins { samsung,pins =3D "gpn-6"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 keypad_row7_1: keypad-row7-1-pins { samsung,pins =3D "gpn-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 lcd_ctrl: lcd-ctrl-pins { samsung,pins =3D "gpj-8", "gpj-9", "gpj-10", "gpj-11"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 @@ -648,7 +648,7 @@ lcd_data16: lcd-data-width16-pins { "gpi-7", "gpi-10", "gpi-11", "gpi-12", "gpi-13", "gpi-14", "gpi-15", "gpj-3", "gpj-4", "gpj-5", "gpj-6", "gpj-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 @@ -658,7 +658,7 @@ lcd_data18: lcd-data-width18-pins { "gpi-12", "gpi-13", "gpi-14", "gpi-15", "gpj-2", "gpj-3", "gpj-4", "gpj-5", "gpj-6", "gpj-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 @@ -669,14 +669,14 @@ lcd_data24: lcd-data-width24-pins { "gpi-12", "gpi-13", "gpi-14", "gpi-15", "gpj-0", "gpj-1", "gpj-2", "gpj-3", "gpj-4", "gpj-5", "gpj-6", "gpj-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; =20 hsi_bus: hsi-bus-pins { samsung,pins =3D "gpk-0", "gpk-1", "gpk-2", "gpk-3", "gpk-4", "gpk-5", "gpk-6", "gpk-7"; - samsung,pin-function =3D ; + samsung,pin-function =3D ; samsung,pin-pud =3D ; }; }; diff --git a/arch/arm/boot/dts/s3c64xx-pinctrl.h b/arch/arm/boot/dts/s3c64x= x-pinctrl.h new file mode 100644 index 000000000000..645c591db357 --- /dev/null +++ b/arch/arm/boot/dts/s3c64xx-pinctrl.h @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Samsung S3C64xx DTS pinctrl constants + * + * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * Copyright (c) 2022 Linaro Ltd + * Author: Krzysztof Kozlowski + */ + +#ifndef __DTS_ARM_SAMSUNG_S3C64XX_PINCTRL_H__ +#define __DTS_ARM_SAMSUNG_S3C64XX_PINCTRL_H__ + +#define S3C64XX_PIN_PULL_NONE 0 +#define S3C64XX_PIN_PULL_DOWN 1 +#define S3C64XX_PIN_PULL_UP 2 + +#define S3C64XX_PIN_FUNC_INPUT 0 +#define S3C64XX_PIN_FUNC_OUTPUT 1 +#define S3C64XX_PIN_FUNC_2 2 +#define S3C64XX_PIN_FUNC_3 3 +#define S3C64XX_PIN_FUNC_4 4 +#define S3C64XX_PIN_FUNC_5 5 +#define S3C64XX_PIN_FUNC_6 6 +#define S3C64XX_PIN_FUNC_EINT 7 + +#endif /* __DTS_ARM_SAMSUNG_S3C64XX_PINCTRL_H__ */ --=20 2.34.1 From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 36250C433EF for ; Wed, 1 Jun 2022 15:28:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1355499AbiFAP2r (ORCPT ); Wed, 1 Jun 2022 11:28:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46972 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355528AbiFAP2J (ORCPT ); Wed, 1 Jun 2022 11:28:09 -0400 Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com [IPv6:2a00:1450:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1A5B5369CB for ; Wed, 1 Jun 2022 08:27:56 -0700 (PDT) Received: by mail-ej1-x629.google.com with SMTP id f21so4480411ejh.11 for ; Wed, 01 Jun 2022 08:27:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nm3d/7PRPERhq0Pf+BknHF6FJkAZPKeq3kp/ttOKKw4=; b=UQkGu9VaTiXIUluas6v+aKofl3JXlVd+t10TIlsyieqRXwfzQph5ih4tkwzAcMV8W+ siC6Wm+TwhUSecFlfOAINTHCI34XSLqSw6C5xdKgHlXOWeQcAtcmJyifqd3OWzvtpNqT ICzLXc3NB8uw0WYyoyk8PYIYhPKrqZVupiT+o8uOprU7hs8aeoMJilmIRFe5oT7chvYn Ztg+hb+awyqzhYqeUvrDEQqYvMCNKFn3FFi7Hjoxwb+d4UnyXMGuJ4phemAAPTOQd1Pl uiJO9MYBZqy0VF3MLxjIhWv3xDzezlxkD2gdk/whDcSSXK9TYJ8L8bBt5oEv0xJS9kWV cliw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nm3d/7PRPERhq0Pf+BknHF6FJkAZPKeq3kp/ttOKKw4=; b=IMEMWRYCD7oIrDcE1sGsf2LKy9hD8iwbh5P3IB0soBMhm1yDpZ9dLVErILNK/P+ioy ggMB/N94Pn8iXNd99+gleXXi70X7KBNIBa0a5P90cE5zFf5SUEdL2qXrkqg7kOYHLEv0 oUbkU4u/lRqVXP0XOT5+P3E/l0LYcmuhfv/bgO4b3UWlmYM0hyJBn7XhBO+JWn8C4zfP RseWwBDdRBFFOs6lX0AAcgnhLi4cud5ZVrWBEHvTc+Va3IuGcgOG8W5cUE/Aj6XMqX5z /6e3KfgAg5VwKkG1OVcc9zTb0aP/Kv8KOqBgOvtwXAfvGU6Db2kuoDFA85J7bR3yQKW5 Ax2A== X-Gm-Message-State: AOAM533RruQGUCCHzT7Vwv8A90mem4daQrHkY3A7UbTB4GNk5nJA4O8I LimyxXx1fglYHhkyfNF3Y96OnA== X-Google-Smtp-Source: ABdhPJwdd+RY24kADySMNg0y2Qe7kUbpoHmgzsJq4kcwdCFF7YtX/5CWYH+pvwkA89YN5e+T0/nxIg== X-Received: by 2002:a17:907:2ccf:b0:709:80e9:8c0c with SMTP id hg15-20020a1709072ccf00b0070980e98c0cmr75412ejc.366.1654097274404; Wed, 01 Jun 2022 08:27:54 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:53 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 3/7] ARM: dts: s5pv210: use local header for pinctrl register values Date: Wed, 1 Jun 2022 17:27:16 +0200 Message-Id: <20220601152720.232383-4-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The DTS uses hardware register values directly in pin controller pin configuration. These are not some IDs or other abstraction layer but raw numbers used in the registers. These numbers were previously put in the bindings header to avoid code duplication and to provide some context meaning (name), but they do not fit the purpose of bindings. It is also quite confusing to use constants prefixed with Exynos for other SoC, because there is actually nothing here in common, except the actual value. Store the constants in a header next to DTS and use them instead of bindings. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/s5pv210-aquila.dts | 4 +- arch/arm/boot/dts/s5pv210-aries.dtsi | 134 +++--- arch/arm/boot/dts/s5pv210-fascinate4g.dts | 22 +- arch/arm/boot/dts/s5pv210-galaxys.dts | 34 +- arch/arm/boot/dts/s5pv210-pinctrl.dtsi | 480 +++++++++++----------- arch/arm/boot/dts/s5pv210-pinctrl.h | 39 ++ 6 files changed, 376 insertions(+), 337 deletions(-) create mode 100644 arch/arm/boot/dts/s5pv210-pinctrl.h diff --git a/arch/arm/boot/dts/s5pv210-aquila.dts b/arch/arm/boot/dts/s5pv2= 10-aquila.dts index bc0b7354b6c0..0f5c6cd0f3a1 100644 --- a/arch/arm/boot/dts/s5pv210-aquila.dts +++ b/arch/arm/boot/dts/s5pv210-aquila.dts @@ -392,7 +392,7 @@ timing0: timing { &pinctrl0 { t_flash_detect: t-flash-detect-pins { samsung,pins =3D "gph3-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; }; diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi b/arch/arm/boot/dts/s5pv2= 10-aries.dtsi index daa1067055c8..5541df4df628 100644 --- a/arch/arm/boot/dts/s5pv210-aries.dtsi +++ b/arch/arm/boot/dts/s5pv210-aries.dtsi @@ -646,183 +646,183 @@ &mfc { &pinctrl0 { bt_reset: bt-reset-pins { samsung,pins =3D "gpb-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 wlan_bt_en: wlan-bt-en-pins { samsung,pins =3D "gpb-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; samsung,pin-val =3D <1>; }; =20 codec_ldo: codec-ldo-pins { samsung,pins =3D "gpf3-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; =20 prox_i2c_pins: gp2a-i2c-pins { samsung,pins =3D "gpg0-2", "gpg2-2"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 wlan_gpio_rst: wlan-gpio-rst-pins { samsung,pins =3D "gpg1-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; =20 bt_wake: bt-wake-pins { samsung,pins =3D "gpg3-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; =20 gp2a_irq: gp2a-irq-pins { samsung,pins =3D "gph0-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pmic_dvs_pins: pmic-dvs-pins { samsung,pins =3D "gph0-3", "gph0-4", "gph0-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; samsung,pin-val =3D <0>; }; =20 pmic_irq: pmic-irq-pins { samsung,pins =3D "gph0-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 wifi_host_wake: wifi-host-wake-pins { samsung,pins =3D "gph2-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 bt_host_wake: bt-host-wake-pins { samsung,pins =3D "gph2-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 musb_irq: musq-irq-pins { samsung,pins =3D "gph2-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 tf_detect: tf-detect-pins { samsung,pins =3D "gph3-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 wifi_wake: wifi-wake-pins { samsung,pins =3D "gph3-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; =20 magnetometer_i2c_pins: yas529-i2c-pins-pins { samsung,pins =3D "gpj0-0", "gpj0-1"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 ts_irq: ts-irq-pins { samsung,pins =3D "gpj0-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 vibrator_ena: vibrator-ena-pins { samsung,pins =3D "gpj1-1"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 gp2a_power: gp2a-power-pins { samsung,pins =3D "gpj1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 touchkey_i2c_pins: touchkey-i2c-pins { samsung,pins =3D "gpj3-0", "gpj3-1"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 touchkey_vdd_ena: touchkey-vdd-ena-pins { samsung,pins =3D "gpj3-2"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 musb_i2c_pins: musb-i2c-pins { samsung,pins =3D "gpj3-4", "gpj3-5"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 accel_i2c_pins: accel-i2c-pins { samsung,pins =3D "gpj3-6", "gpj3-7"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pmic_i2c_pins: pmic-i2c-pins-pins { samsung,pins =3D "gpj4-0", "gpj4-3"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 touchkey_irq: touchkey-irq-pins { samsung,pins =3D "gpj4-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 lcd_spi_pins: spi-lcd-pins { samsung,pins =3D "mp01-1", "mp04-1", "mp04-3"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 fg_i2c_pins: fg-i2c-pins { samsung,pins =3D "mp05-0", "mp05-1"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sound_i2c_pins: sound-i2c-pins { samsung,pins =3D "mp05-2", "mp05-3"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 panel_rst: panel-rst-pins { samsung,pins =3D "mp05-5"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; }; =20 diff --git a/arch/arm/boot/dts/s5pv210-fascinate4g.dts b/arch/arm/boot/dts/= s5pv210-fascinate4g.dts index dfb2ee65e4a8..eae51b197ee9 100644 --- a/arch/arm/boot/dts/s5pv210-fascinate4g.dts +++ b/arch/arm/boot/dts/s5pv210-fascinate4g.dts @@ -128,33 +128,33 @@ &pinctrl0 { =20 headset_det: headset-det-pins { samsung,pins =3D "gph0-6", "gph3-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; =20 fg_irq: fg-irq-pins { samsung,pins =3D "gph3-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 headset_micbias_ena: headset-micbias-ena-pins { samsung,pins =3D "gpj2-5"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 earpath_sel: earpath-sel-pins { samsung,pins =3D "gpj2-6"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 main_micbias_ena: main-micbias-ena-pins { samsung,pins =3D "gpj4-2"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 /* Based on vendor kernel v2.6.35.7 */ diff --git a/arch/arm/boot/dts/s5pv210-galaxys.dts b/arch/arm/boot/dts/s5pv= 210-galaxys.dts index a78caaa1f3c5..aaf880792f36 100644 --- a/arch/arm/boot/dts/s5pv210-galaxys.dts +++ b/arch/arm/boot/dts/s5pv210-galaxys.dts @@ -152,47 +152,47 @@ &pinctrl0 { =20 fm_i2c_pins: fm-i2c-pins-pins { samsung,pins =3D "gpd1-2", "gpd1-3"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 headset_det: headset-det-pins { samsung,pins =3D "gph0-6", "gph3-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; }; =20 fm_irq: fm-irq-pins { samsung,pins =3D "gpj2-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 fm_rst: fm-rst-pins { samsung,pins =3D "gpj2-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 earpath_sel: earpath-sel-pins { samsung,pins =3D "gpj2-6"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 massmemory_en: massmemory-en-pins { samsung,pins =3D "gpj2-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 micbias_reg_ena: micbias-reg-ena-pins { samsung,pins =3D "gpj4-2"; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 /* Based on CyanogenMod 3.0.101 kernel */ diff --git a/arch/arm/boot/dts/s5pv210-pinctrl.dtsi b/arch/arm/boot/dts/s5p= v210-pinctrl.dtsi index ae34e7e57892..6d6daef9fb7a 100644 --- a/arch/arm/boot/dts/s5pv210-pinctrl.dtsi +++ b/arch/arm/boot/dts/s5pv210-pinctrl.dtsi @@ -16,13 +16,13 @@ * nodes can be added to this file. */ =20 -#include +#include "s5pv210-pinctrl.h" =20 #define PIN_SLP(_pin, _mode, _pull) \ _pin { \ samsung,pins =3D #_pin; \ - samsung,pin-con-pdn =3D ; \ - samsung,pin-pud-pdn =3D ; \ + samsung,pin-con-pdn =3D ; \ + samsung,pin-pud-pdn =3D ; \ } =20 &pinctrl0 { @@ -280,559 +280,559 @@ gph3: gph3-gpio-bank { =20 uart0_data: uart0-data-pins { samsung,pins =3D "gpa0-0", "gpa0-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart0_fctl: uart0-fctl-pins { samsung,pins =3D "gpa0-2", "gpa0-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart1_data: uart1-data-pins { samsung,pins =3D "gpa0-4", "gpa0-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart1_fctl: uart1-fctl-pins { samsung,pins =3D "gpa0-6", "gpa0-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart2_data: uart2-data-pins { samsung,pins =3D "gpa1-0", "gpa1-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart2_fctl: uart2-fctl-pins { samsung,pins =3D "gpa1-2", "gpa1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart3_data: uart3-data-pins { samsung,pins =3D "gpa1-2", "gpa1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart_audio: uart-audio-pins { samsung,pins =3D "gpa1-2", "gpa1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spi0_bus: spi0-bus-pins { samsung,pins =3D "gpb-0", "gpb-2", "gpb-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spi1_bus: spi1-bus-pins { samsung,pins =3D "gpb-4", "gpb-6", "gpb-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2s0_bus: i2s0-bus-pins { samsung,pins =3D "gpi-0", "gpi-1", "gpi-2", "gpi-3", "gpi-4", "gpi-5", "gpi-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2s1_bus: i2s1-bus-pins { samsung,pins =3D "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3", "gpc0-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2s2_bus: i2s2-bus-pins { samsung,pins =3D "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", "gpc1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pcm1_bus: pcm1-bus-pins { samsung,pins =3D "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3", "gpc0-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 ac97_bus: ac97-bus-pins { samsung,pins =3D "gpc0-0", "gpc0-1", "gpc0-2", "gpc0-3", "gpc0-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2s2_bus: i2s2-bus-pins { samsung,pins =3D "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", "gpc1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pcm2_bus: pcm2-bus-pins { samsung,pins =3D "gpc1-0", "gpc1-1", "gpc1-2", "gpc1-3", "gpc1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spdif_bus: spdif-bus-pins { samsung,pins =3D "gpc1-0", "gpc1-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spi2_bus: spi2-bus-pins { samsung,pins =3D "gpc1-1", "gpc1-2", "gpc1-3", "gpc1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2c0_bus: i2c0-bus-pins { samsung,pins =3D "gpd1-0", "gpd1-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2c1_bus: i2c1-bus-pins { samsung,pins =3D "gpd1-2", "gpd1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 i2c2_bus: i2c2-bus-pins { samsung,pins =3D "gpd1-4", "gpd1-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pwm0_out: pwm0-out-pins { samsung,pins =3D "gpd0-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pwm1_out: pwm1-out-pins { samsung,pins =3D "gpd0-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pwm2_out: pwm2-out-pins { samsung,pins =3D "gpd0-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pwm3_out: pwm3-out-pins { samsung,pins =3D "gpd0-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row0: keypad-row-0-pins { samsung,pins =3D "gph3-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row1: keypad-row-1-pins { samsung,pins =3D "gph3-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row2: keypad-row-2-pins { samsung,pins =3D "gph3-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row3: keypad-row-3-pins { samsung,pins =3D "gph3-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row4: keypad-row-4-pins { samsung,pins =3D "gph3-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row5: keypad-row-5-pins { samsung,pins =3D "gph3-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row6: keypad-row-6-pins { samsung,pins =3D "gph3-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_row7: keypad-row-7-pins { samsung,pins =3D "gph3-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col0: keypad-col-0-pins { samsung,pins =3D "gph2-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col1: keypad-col-1-pins { samsung,pins =3D "gph2-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col2: keypad-col-2-pins { samsung,pins =3D "gph2-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col3: keypad-col-3-pins { samsung,pins =3D "gph2-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col4: keypad-col-4-pins { samsung,pins =3D "gph2-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col5: keypad-col-5-pins { samsung,pins =3D "gph2-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col6: keypad-col-6-pins { samsung,pins =3D "gph2-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 keypad_col7: keypad-col-7-pins { samsung,pins =3D "gph2-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd0_clk: sd0-clk-pins { samsung,pins =3D "gpg0-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd0_cmd: sd0-cmd-pins { samsung,pins =3D "gpg0-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd0_cd: sd0-cd-pins { samsung,pins =3D "gpg0-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd0_bus1: sd0-bus-width1-pins { samsung,pins =3D "gpg0-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd0_bus4: sd0-bus-width4-pins { samsung,pins =3D "gpg0-3", "gpg0-4", "gpg0-5", "gpg0-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd0_bus8: sd0-bus-width8-pins { samsung,pins =3D "gpg1-3", "gpg1-4", "gpg1-5", "gpg1-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd1_clk: sd1-clk-pins { samsung,pins =3D "gpg1-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd1_cmd: sd1-cmd-pins { samsung,pins =3D "gpg1-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd1_cd: sd1-cd-pins { samsung,pins =3D "gpg1-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd1_bus1: sd1-bus-width1-pins { samsung,pins =3D "gpg1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd1_bus4: sd1-bus-width4-pins { samsung,pins =3D "gpg1-3", "gpg1-4", "gpg1-5", "gpg1-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd2_clk: sd2-clk-pins { samsung,pins =3D "gpg2-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd2_cmd: sd2-cmd-pins { samsung,pins =3D "gpg2-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd2_cd: sd2-cd-pins { samsung,pins =3D "gpg2-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd2_bus1: sd2-bus-width1-pins { samsung,pins =3D "gpg2-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd2_bus4: sd2-bus-width4-pins { samsung,pins =3D "gpg2-3", "gpg2-4", "gpg2-5", "gpg2-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd2_bus8: sd2-bus-width8-pins { samsung,pins =3D "gpg3-3", "gpg3-4", "gpg3-5", "gpg3-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd3_clk: sd3-clk-pins { samsung,pins =3D "gpg3-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd3_cmd: sd3-cmd-pins { samsung,pins =3D "gpg3-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd3_cd: sd3-cd-pins { samsung,pins =3D "gpg3-2"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd3_bus1: sd3-bus-width1-pins { samsung,pins =3D "gpg3-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 sd3_bus4: sd3-bus-width4-pins { samsung,pins =3D "gpg3-3", "gpg3-4", "gpg3-5", "gpg3-6"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 eint0: ext-int0-pins { samsung,pins =3D "gph0-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 eint8: ext-int8-pins { samsung,pins =3D "gph1-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 eint15: ext-int15-pins { samsung,pins =3D "gph1-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 eint16: ext-int16-pins { samsung,pins =3D "gph2-0"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 eint31: ext-int31-pins { samsung,pins =3D "gph3-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 cam_port_a_io: cam-port-a-io-pins { samsung,pins =3D "gpe0-0", "gpe0-1", "gpe0-2", "gpe0-3", "gpe0-4", "gpe0-5", "gpe0-6", "gpe0-7", "gpe1-0", "gpe1-1", "gpe1-2", "gpe1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 cam_port_a_clk_active: cam-port-a-clk-active-pins { samsung,pins =3D "gpe1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 cam_port_a_clk_idle: cam-port-a-clk-idle-pins { samsung,pins =3D "gpe1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 cam_port_b_io: cam-port-b-io-pins { samsung,pins =3D "gpj0-0", "gpj0-1", "gpj0-2", "gpj0-3", "gpj0-4", "gpj0-5", "gpj0-6", "gpj0-7", "gpj1-0", "gpj1-1", "gpj1-2", "gpj1-4"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 cam_port_b_clk_active: cam-port-b-clk-active-pins { samsung,pins =3D "gpj1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 cam_port_b_clk_idle: cam-port-b-clk-idle-pins { samsung,pins =3D "gpj1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 lcd_ctrl: lcd-ctrl-pins { samsung,pins =3D "gpd0-0", "gpd0-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 lcd_sync: lcd-sync-pins { samsung,pins =3D "gpf0-0", "gpf0-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 lcd_clk: lcd-clk-pins { samsung,pins =3D "gpf0-0", "gpf0-1", "gpf0-2", "gpf0-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 lcd_data24: lcd-data-width24-pins { @@ -842,8 +842,8 @@ lcd_data24: lcd-data-width24-pins { "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3", "gpf2-4", "gpf2-5", "gpf2-6", "gpf2-7", "gpf3-0", "gpf3-1", "gpf3-2", "gpf3-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; }; diff --git a/arch/arm/boot/dts/s5pv210-pinctrl.h b/arch/arm/boot/dts/s5pv21= 0-pinctrl.h new file mode 100644 index 000000000000..29bdf376d8f1 --- /dev/null +++ b/arch/arm/boot/dts/s5pv210-pinctrl.h @@ -0,0 +1,39 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Samsung S5PV210 DTS pinctrl constants + * + * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * Copyright (c) 2022 Linaro Ltd + * Author: Krzysztof Kozlowski + */ + +#ifndef __DTS_ARM_SAMSUNG_S5PV210_PINCTRL_H__ +#define __DTS_ARM_SAMSUNG_S5PV210_PINCTRL_H__ + +#define S5PV210_PIN_PULL_NONE 0 +#define S5PV210_PIN_PULL_DOWN 1 +#define S5PV210_PIN_PULL_UP 2 + +/* Pin function in power down mode */ +#define S5PV210_PIN_PDN_OUT0 0 +#define S5PV210_PIN_PDN_OUT1 1 +#define S5PV210_PIN_PDN_INPUT 2 +#define S5PV210_PIN_PDN_PREV 3 + +#define S5PV210_PIN_DRV_LV1 0 +#define S5PV210_PIN_DRV_LV2 2 +#define S5PV210_PIN_DRV_LV3 1 +#define S5PV210_PIN_DRV_LV4 3 + +#define S5PV210_PIN_FUNC_INPUT 0 +#define S5PV210_PIN_FUNC_OUTPUT 1 +#define S5PV210_PIN_FUNC_2 2 +#define S5PV210_PIN_FUNC_3 3 +#define S5PV210_PIN_FUNC_4 4 +#define S5PV210_PIN_FUNC_5 5 +#define S5PV210_PIN_FUNC_6 6 +#define S5PV210_PIN_FUNC_EINT 0xf +#define S5PV210_PIN_FUNC_F S5PV210_PIN_FUNC_EINT + +#endif /* __DTS_ARM_SAMSUNG_S5PV210_PINCTRL_H__ */ --=20 2.34.1 From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9A73DCCA478 for ; Wed, 1 Jun 2022 15:28:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346244AbiFAP2X (ORCPT ); Wed, 1 Jun 2022 11:28:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46892 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355542AbiFAP2J (ORCPT ); Wed, 1 Jun 2022 11:28:09 -0400 Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com [IPv6:2a00:1450:4864:20::632]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4859A4739F for ; Wed, 1 Jun 2022 08:27:57 -0700 (PDT) Received: by mail-ej1-x632.google.com with SMTP id gi33so4526673ejc.3 for ; Wed, 01 Jun 2022 08:27:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xkCtDUW8KDmXB613fVyiMXB2YkEaxXKxwnsWXEUT47c=; b=XiP4K+OXtb2g0sAVbW0Ke2qwQoraPZr10w0/Vtq1k4TkIRE0u3eyrJjQZe43kL6Dav 0ZSeFadD2rPMIK9nkZSwaTUvt+Q59JnKkGT11v0vjEoD+RkBhgviiwz3JeBREIrYzweG dZls+QHYfxbcxzOvNqXjFjTfr5pqWXEfs6MMiSc+blzO213hf7lxfAUUCqRuaCKANMf9 aftTQse8lDSa7syQNh+PcCG2f2+STlqhkbE5z70DLnPpxzLPCXd9twT1Hyl3IIidxKKA xgQ34hV625zUna8caTadBULW8PNRR1iTxczINECy+2bzW704DGgWqQF8mvAMYO0Ay1WC cT1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=xkCtDUW8KDmXB613fVyiMXB2YkEaxXKxwnsWXEUT47c=; b=tkXr/jiwM4AK4qsQ9fPBpnIxYJ46Z83lByXMvHVKWj6b4VOuULBI9ItBFbjXRXJFn3 ck4jykBod4HMZjz8VdzUCO1ncka4Sq07u4PvSlq5LcNm+LQ2zd+YB8NUdq+QiHXjlDzt y44LerUiTxUoYBVdstEdzsEDm+fZZaZbtrMEFyiGmG1TfBBjahkxf/OpFM1Lr5Bw+9gr 4HcxmWi0pS0SOf4x0hoE0mS2W1TPBkeNdhGixhjFGlB+lWuOUKJmgVPQ8npfMTPaOLCN 8Xg3VSuolgfOj0cf6ukWGxezqVuxp72OgecJpNyUy91cYL/XWW2tGsgDzDh+vzHR1SpM Ik1A== X-Gm-Message-State: AOAM530Pft0TjQw7EUAF61O4ry/usX8N18ZH1m5aexHNWQZocglX/Y0h A8FF34cJw9Q1LBD1TJZwEXfA9w== X-Google-Smtp-Source: ABdhPJzGUdJeCPAq3rdMERlG9nMzXccLGpPuKiSoDNm457/XviI9WvS5F1tm5ZIc1Ggy5IZD4IwCFg== X-Received: by 2002:a17:907:1690:b0:6f5:40d:f4bb with SMTP id hc16-20020a170907169000b006f5040df4bbmr25515ejc.495.1654097275757; Wed, 01 Jun 2022 08:27:55 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:55 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 4/7] ARM: dts: exynos: use local header for pinctrl register values Date: Wed, 1 Jun 2022 17:27:17 +0200 Message-Id: <20220601152720.232383-5-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The DTS uses hardware register values directly in pin controller pin configuration. These are not some IDs or other abstraction layer but raw numbers used in the registers. These numbers were previously put in the bindings header to avoid code duplication and to provide some context meaning (name), but they do not fit the purpose of bindings. Store the constants in a header next to DTS and use them instead of bindings. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/exynos-pinctrl.h | 55 +++++++++++++++++++++++ arch/arm/boot/dts/exynos3250-pinctrl.dtsi | 2 +- arch/arm/boot/dts/exynos4210-pinctrl.dtsi | 2 +- arch/arm/boot/dts/exynos4412-midas.dtsi | 3 +- arch/arm/boot/dts/exynos4412-p4note.dtsi | 2 +- arch/arm/boot/dts/exynos4412-pinctrl.dtsi | 2 +- arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 2 +- arch/arm/boot/dts/exynos5260-pinctrl.dtsi | 2 +- arch/arm/boot/dts/exynos5410-pinctrl.dtsi | 2 +- arch/arm/boot/dts/exynos5420-pinctrl.dtsi | 2 +- 10 files changed, 65 insertions(+), 9 deletions(-) create mode 100644 arch/arm/boot/dts/exynos-pinctrl.h diff --git a/arch/arm/boot/dts/exynos-pinctrl.h b/arch/arm/boot/dts/exynos-= pinctrl.h new file mode 100644 index 000000000000..e3a6df95281c --- /dev/null +++ b/arch/arm/boot/dts/exynos-pinctrl.h @@ -0,0 +1,55 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Samsung Exynos DTS pinctrl constants + * + * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * Copyright (c) 2022 Linaro Ltd + * Author: Krzysztof Kozlowski + */ + +#ifndef __DTS_ARM_SAMSUNG_EXYNOS_PINCTRL_H__ +#define __DTS_ARM_SAMSUNG_EXYNOS_PINCTRL_H__ + +#define EXYNOS_PIN_PULL_NONE 0 +#define EXYNOS_PIN_PULL_DOWN 1 +#define EXYNOS_PIN_PULL_UP 3 + +/* Pin function in power down mode */ +#define EXYNOS_PIN_PDN_OUT0 0 +#define EXYNOS_PIN_PDN_OUT1 1 +#define EXYNOS_PIN_PDN_INPUT 2 +#define EXYNOS_PIN_PDN_PREV 3 + +/* Drive strengths for Exynos3250, Exynos4 (all) and Exynos5250 */ +#define EXYNOS4_PIN_DRV_LV1 0 +#define EXYNOS4_PIN_DRV_LV2 2 +#define EXYNOS4_PIN_DRV_LV3 1 +#define EXYNOS4_PIN_DRV_LV4 3 + +/* Drive strengths for Exynos5260 */ +#define EXYNOS5260_PIN_DRV_LV1 0 +#define EXYNOS5260_PIN_DRV_LV2 1 +#define EXYNOS5260_PIN_DRV_LV4 2 +#define EXYNOS5260_PIN_DRV_LV6 3 + +/* + * Drive strengths for Exynos5410, Exynos542x, Exynos5800 and Exynos850 (e= xcept + * GPIO_HSI block) + */ +#define EXYNOS5420_PIN_DRV_LV1 0 +#define EXYNOS5420_PIN_DRV_LV2 1 +#define EXYNOS5420_PIN_DRV_LV3 2 +#define EXYNOS5420_PIN_DRV_LV4 3 + +#define EXYNOS_PIN_FUNC_INPUT 0 +#define EXYNOS_PIN_FUNC_OUTPUT 1 +#define EXYNOS_PIN_FUNC_2 2 +#define EXYNOS_PIN_FUNC_3 3 +#define EXYNOS_PIN_FUNC_4 4 +#define EXYNOS_PIN_FUNC_5 5 +#define EXYNOS_PIN_FUNC_6 6 +#define EXYNOS_PIN_FUNC_EINT 0xf +#define EXYNOS_PIN_FUNC_F EXYNOS_PIN_FUNC_EINT + +#endif /* __DTS_ARM_SAMSUNG_EXYNOS_PINCTRL_H__ */ diff --git a/arch/arm/boot/dts/exynos3250-pinctrl.dtsi b/arch/arm/boot/dts/= exynos3250-pinctrl.dtsi index cc30d154ec94..011ba2eff29e 100644 --- a/arch/arm/boot/dts/exynos3250-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos3250-pinctrl.dtsi @@ -9,7 +9,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 #define PIN_IN(_pin, _pull, _drv) \ pin- ## _pin { \ diff --git a/arch/arm/boot/dts/exynos4210-pinctrl.dtsi b/arch/arm/boot/dts/= exynos4210-pinctrl.dtsi index 6373009bb727..76f44ae0de46 100644 --- a/arch/arm/boot/dts/exynos4210-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos4210-pinctrl.dtsi @@ -11,7 +11,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_0 { gpa0: gpa0-gpio-bank { diff --git a/arch/arm/boot/dts/exynos4412-midas.dtsi b/arch/arm/boot/dts/ex= ynos4412-midas.dtsi index 23f50c9be527..b967397a46c5 100644 --- a/arch/arm/boot/dts/exynos4412-midas.dtsi +++ b/arch/arm/boot/dts/exynos4412-midas.dtsi @@ -12,11 +12,12 @@ /dts-v1/; #include "exynos4412.dtsi" #include "exynos4412-ppmu-common.dtsi" + #include #include #include #include -#include +#include "exynos-pinctrl.h" =20 / { compatible =3D "samsung,midas", "samsung,exynos4412", "samsung,exynos4"; diff --git a/arch/arm/boot/dts/exynos4412-p4note.dtsi b/arch/arm/boot/dts/e= xynos4412-p4note.dtsi index 97f131b1014b..286a547b110e 100644 --- a/arch/arm/boot/dts/exynos4412-p4note.dtsi +++ b/arch/arm/boot/dts/exynos4412-p4note.dtsi @@ -15,8 +15,8 @@ #include #include #include -#include #include +#include "exynos-pinctrl.h" =20 / { compatible =3D "samsung,p4note", "samsung,exynos4412", "samsung,exynos4"; diff --git a/arch/arm/boot/dts/exynos4412-pinctrl.dtsi b/arch/arm/boot/dts/= exynos4412-pinctrl.dtsi index 88b8afd55664..58847d4fa846 100644 --- a/arch/arm/boot/dts/exynos4412-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos4412-pinctrl.dtsi @@ -9,7 +9,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 #define PIN_SLP(_pin, _mode, _pull) \ _pin { \ diff --git a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi b/arch/arm/boot/dts/= exynos5250-pinctrl.dtsi index 918947a3897e..48732edadff1 100644 --- a/arch/arm/boot/dts/exynos5250-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5250-pinctrl.dtsi @@ -9,7 +9,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_0 { gpa0: gpa0-gpio-bank { diff --git a/arch/arm/boot/dts/exynos5260-pinctrl.dtsi b/arch/arm/boot/dts/= exynos5260-pinctrl.dtsi index 150607f8103d..43e4a541f479 100644 --- a/arch/arm/boot/dts/exynos5260-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5260-pinctrl.dtsi @@ -9,7 +9,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_0 { gpa0: gpa0-gpio-bank { diff --git a/arch/arm/boot/dts/exynos5410-pinctrl.dtsi b/arch/arm/boot/dts/= exynos5410-pinctrl.dtsi index 6c7814b4372e..f7b923382892 100644 --- a/arch/arm/boot/dts/exynos5410-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5410-pinctrl.dtsi @@ -6,7 +6,7 @@ * https://www.hardkernel.com */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_0 { gpa0: gpa0-gpio-bank { diff --git a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi b/arch/arm/boot/dts/= exynos5420-pinctrl.dtsi index 546ba274f4e5..14cf9c4ca0ed 100644 --- a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi @@ -9,7 +9,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_0 { gpy7: gpy7-gpio-bank { --=20 2.34.1 From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3CC28C433EF for ; Wed, 1 Jun 2022 15:28:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1355613AbiFAP21 (ORCPT ); Wed, 1 Jun 2022 11:28:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46968 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355556AbiFAP2K (ORCPT ); Wed, 1 Jun 2022 11:28:10 -0400 Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com [IPv6:2a00:1450:4864:20::629]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B34F062A3F for ; Wed, 1 Jun 2022 08:27:58 -0700 (PDT) Received: by mail-ej1-x629.google.com with SMTP id gi33so4526787ejc.3 for ; Wed, 01 Jun 2022 08:27:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DbDXrhv3IGv7hkgqZA1X2AggUMv4xlh4IdX76CRZ7RM=; b=Ds2qaZzjS5MeD4KSOB8pNALSnHn0/8gSYoUk4U+mg8nVLOgxajph6LMtzLawujHKBG EIpyS8G+1tuPRr/kln20jRAeq5KejHRKTcQnXSU6k0rikTUa6UdaWFZMKhA+jPJz+pcp KbS/VP7hQIg4ZQMg0hxxaoEg5TYe9kT1moB2N5Jysov0ubYhh+0d4pRsGXjIMJMI9D3K yrWOzG8v7GV9mmbpMuDQV9LEj3XJBw57S9sUX0Mcq/PYlL+ti3uVmj0447xCacRIPSm/ JNHcqW3KtFOehuK8GaKqP2/B3Sw3XfSXZoqIMHhQBAI0kJbIfXNqSebrCos0x9Vim6i9 x/8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=DbDXrhv3IGv7hkgqZA1X2AggUMv4xlh4IdX76CRZ7RM=; b=3gclhjfJ/U99IKRbn9Z4OC1FACUBoys4u53BXQjmk07BK1UzcODhv12fCxQWH8bBbL WRhyGr0wuuq4MaFyk3NpBvD9jUaj0LK5rgxRSC7FKoOoHB09gmFhdMEIBdqnetZLK6fQ 7rD99WbNuypO8UYQOPy0UoDoQ1pjIiSq+mrbYmVjIdMu2aOmoyuUlYwt+9T7q21We8JH lqSQcT62OHkxR+RlGD4oy0cEX+pRaMOdo7OFd4XVt+6kiOrT05gNoZ83dsYKUi7u+h5C M4vXSa4+9UdwPN5rODjh3az13mViBtiU3XCuJpcLDMzdde5eqtjyzs6JqGRWaIoWG2Ow x2bA== X-Gm-Message-State: AOAM532XUYsZuANIn0AaSLHm8fZF8+sq0Sg1exQBN/UJ4vUCuY7bW50R xAD9rUoevamdvbCWht/qX9W3Vw== X-Google-Smtp-Source: ABdhPJx2m/aDi2w9bD/FlH6CWEO9ixQ7p8pTuAKfmcCVOHV5rlmcFbf/I3DHOA9xksUTUALlf3Tb8Q== X-Received: by 2002:a17:907:a06f:b0:6f4:d336:6baa with SMTP id ia15-20020a170907a06f00b006f4d3366baamr59788ejc.638.1654097276960; Wed, 01 Jun 2022 08:27:56 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:56 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski , Chanho Park Subject: [PATCH v2 5/7] arm64: dts: exynos: use local header for pinctrl register values Date: Wed, 1 Jun 2022 17:27:18 +0200 Message-Id: <20220601152720.232383-6-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The DTS uses hardware register values directly in pin controller pin configuration. These are not some IDs or other abstraction layer but raw numbers used in the registers. These numbers were previously put in the bindings header to avoid code duplication and to provide some context meaning (name), but they do not fit the purpose of bindings. Store the constants in a header next to DTS and use them instead of bindings. Signed-off-by: Krzysztof Kozlowski Reviewed-by: Chanho Park Tested-by: Chanho Park --- arch/arm64/boot/dts/exynos/exynos-pinctrl.h | 79 +++++++++++++++++++ .../boot/dts/exynos/exynos5433-pinctrl.dtsi | 2 +- .../boot/dts/exynos/exynos7-espresso.dts | 6 +- .../boot/dts/exynos/exynos7-pinctrl.dtsi | 72 ++++++++--------- .../boot/dts/exynos/exynos7885-pinctrl.dtsi | 2 +- .../boot/dts/exynos/exynos850-pinctrl.dtsi | 2 +- .../boot/dts/exynos/exynosautov9-pinctrl.dtsi | 2 +- 7 files changed, 122 insertions(+), 43 deletions(-) create mode 100644 arch/arm64/boot/dts/exynos/exynos-pinctrl.h diff --git a/arch/arm64/boot/dts/exynos/exynos-pinctrl.h b/arch/arm64/boot/= dts/exynos/exynos-pinctrl.h new file mode 100644 index 000000000000..7dd94a9b3652 --- /dev/null +++ b/arch/arm64/boot/dts/exynos/exynos-pinctrl.h @@ -0,0 +1,79 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Samsung Exynos DTS pinctrl constants + * + * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * Copyright (c) 2022 Linaro Ltd + * Author: Krzysztof Kozlowski + */ + +#ifndef __DTS_ARM64_SAMSUNG_EXYNOS_PINCTRL_H__ +#define __DTS_ARM64_SAMSUNG_EXYNOS_PINCTRL_H__ + +#define EXYNOS_PIN_PULL_NONE 0 +#define EXYNOS_PIN_PULL_DOWN 1 +#define EXYNOS_PIN_PULL_UP 3 + +/* Pin function in power down mode */ +#define EXYNOS_PIN_PDN_OUT0 0 +#define EXYNOS_PIN_PDN_OUT1 1 +#define EXYNOS_PIN_PDN_INPUT 2 +#define EXYNOS_PIN_PDN_PREV 3 + +/* + * Drive strengths for Exynos5410, Exynos542x, Exynos5800, Exynos7885, Exy= nos850 + * (except GPIO_HSI block), ExynosAutov9 (FSI0, PERIC1) + */ +#define EXYNOS5420_PIN_DRV_LV1 0 +#define EXYNOS5420_PIN_DRV_LV2 1 +#define EXYNOS5420_PIN_DRV_LV3 2 +#define EXYNOS5420_PIN_DRV_LV4 3 + +/* Drive strengths for Exynos5433 */ +#define EXYNOS5433_PIN_DRV_FAST_SR1 0 +#define EXYNOS5433_PIN_DRV_FAST_SR2 1 +#define EXYNOS5433_PIN_DRV_FAST_SR3 2 +#define EXYNOS5433_PIN_DRV_FAST_SR4 3 +#define EXYNOS5433_PIN_DRV_FAST_SR5 4 +#define EXYNOS5433_PIN_DRV_FAST_SR6 5 +#define EXYNOS5433_PIN_DRV_SLOW_SR1 8 +#define EXYNOS5433_PIN_DRV_SLOW_SR2 9 +#define EXYNOS5433_PIN_DRV_SLOW_SR3 0xa +#define EXYNOS5433_PIN_DRV_SLOW_SR4 0xb +#define EXYNOS5433_PIN_DRV_SLOW_SR5 0xc +#define EXYNOS5433_PIN_DRV_SLOW_SR6 0xf + +/* Drive strengths for Exynos7 (except FSYS1) */ +#define EXYNOS7_PIN_DRV_LV1 0 +#define EXYNOS7_PIN_DRV_LV2 2 +#define EXYNOS7_PIN_DRV_LV3 1 +#define EXYNOS7_PIN_DRV_LV4 3 + +/* Drive strengths for Exynos7 FSYS1 block */ +#define EXYNOS7_FSYS1_PIN_DRV_LV1 0 +#define EXYNOS7_FSYS1_PIN_DRV_LV2 4 +#define EXYNOS7_FSYS1_PIN_DRV_LV3 2 +#define EXYNOS7_FSYS1_PIN_DRV_LV4 6 +#define EXYNOS7_FSYS1_PIN_DRV_LV5 1 +#define EXYNOS7_FSYS1_PIN_DRV_LV6 5 + +/* Drive strengths for Exynos850 GPIO_HSI block */ +#define EXYNOS850_HSI_PIN_DRV_LV1 0 /* 1x */ +#define EXYNOS850_HSI_PIN_DRV_LV1_5 1 /* 1.5x */ +#define EXYNOS850_HSI_PIN_DRV_LV2 2 /* 2x */ +#define EXYNOS850_HSI_PIN_DRV_LV2_5 3 /* 2.5x */ +#define EXYNOS850_HSI_PIN_DRV_LV3 4 /* 3x */ +#define EXYNOS850_HSI_PIN_DRV_LV4 5 /* 4x */ + +#define EXYNOS_PIN_FUNC_INPUT 0 +#define EXYNOS_PIN_FUNC_OUTPUT 1 +#define EXYNOS_PIN_FUNC_2 2 +#define EXYNOS_PIN_FUNC_3 3 +#define EXYNOS_PIN_FUNC_4 4 +#define EXYNOS_PIN_FUNC_5 5 +#define EXYNOS_PIN_FUNC_6 6 +#define EXYNOS_PIN_FUNC_EINT 0xf +#define EXYNOS_PIN_FUNC_F EXYNOS_PIN_FUNC_EINT + +#endif /* __DTS_ARM64_SAMSUNG_EXYNOS_PINCTRL_H__ */ diff --git a/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi b/arch/arm6= 4/boot/dts/exynos/exynos5433-pinctrl.dtsi index 4b46af3e164d..681553577ebc 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433-pinctrl.dtsi @@ -9,7 +9,7 @@ * tree nodes are listed in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 #define PIN(_pin, _func, _pull, _drv) \ pin- ## _pin { \ diff --git a/arch/arm64/boot/dts/exynos/exynos7-espresso.dts b/arch/arm64/b= oot/dts/exynos/exynos7-espresso.dts index 0895e818d3c1..e38c59cf18dc 100644 --- a/arch/arm64/boot/dts/exynos/exynos7-espresso.dts +++ b/arch/arm64/boot/dts/exynos/exynos7-espresso.dts @@ -357,7 +357,7 @@ &pinctrl_alive { pmic_irq: pmic-irq-pins { samsung,pins =3D "gpa0-2"; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -397,14 +397,14 @@ usb30_vbus_en: usb30-vbus-en-pins { samsung,pins =3D "gph1-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 usb3drd_boost_en: usb3drd-boost-en-pins { samsung,pins =3D "gpf4-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 diff --git a/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi b/arch/arm64/b= oot/dts/exynos/exynos7-pinctrl.dtsi index be9b971f3697..ee9c24a226f3 100644 --- a/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos7-pinctrl.dtsi @@ -9,7 +9,7 @@ * device tree nodes in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_alive { gpa0: gpa0-gpio-bank { @@ -188,161 +188,161 @@ hs_i2c10_bus: hs-i2c10-bus-pins { samsung,pins =3D "gpb0-1", "gpb0-0"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c11_bus: hs-i2c11-bus-pins { samsung,pins =3D "gpb0-3", "gpb0-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c2_bus: hs-i2c2-bus-pins { samsung,pins =3D "gpd0-3", "gpd0-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 uart0_data: uart0-data-pins { samsung,pins =3D "gpd0-0", "gpd0-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 uart0_fctl: uart0-fctl-pins { samsung,pins =3D "gpd0-2", "gpd0-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 uart2_data: uart2-data-pins { samsung,pins =3D "gpd1-4", "gpd1-5"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c3_bus: hs-i2c3-bus-pins { samsung,pins =3D "gpd1-3", "gpd1-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 uart1_data: uart1-data-pins { samsung,pins =3D "gpd1-0", "gpd1-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 uart1_fctl: uart1-fctl-pins { samsung,pins =3D "gpd1-2", "gpd1-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c0_bus: hs-i2c0-bus-pins { samsung,pins =3D "gpd2-1", "gpd2-0"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c1_bus: hs-i2c1-bus-pins { samsung,pins =3D "gpd2-3", "gpd2-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c9_bus: hs-i2c9-bus-pins { samsung,pins =3D "gpd2-7", "gpd2-6"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 pwm0_out: pwm0-out-pins { samsung,pins =3D "gpd2-4"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 pwm1_out: pwm1-out-pins { samsung,pins =3D "gpd2-5"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 pwm2_out: pwm2-out-pins { samsung,pins =3D "gpd2-6"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 pwm3_out: pwm3-out-pins { samsung,pins =3D "gpd2-7"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c8_bus: hs-i2c8-bus-pins { samsung,pins =3D "gpd5-3", "gpd5-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 uart3_data: uart3-data-pins { samsung,pins =3D "gpd5-0", "gpd5-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 spi2_bus: spi2-bus-pins { samsung,pins =3D "gpd5-0", "gpd5-1", "gpd5-2", "gpd5-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 spi1_bus: spi1-bus-pins { samsung,pins =3D "gpd6-2", "gpd6-3", "gpd6-4", "gpd6-5"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 spi0_bus: spi0-bus-pins { samsung,pins =3D "gpd8-0", "gpd8-1", "gpd6-0", "gpd6-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c4_bus: hs-i2c4-bus-pins { samsung,pins =3D "gpg3-1", "gpg3-0"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c5_bus: hs-i2c5-bus-pins { samsung,pins =3D "gpg3-3", "gpg3-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -359,7 +359,7 @@ hs_i2c6_bus: hs-i2c6-bus-pins { samsung,pins =3D "gpj0-1", "gpj0-0"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -376,7 +376,7 @@ hs_i2c7_bus: hs-i2c7-bus-pins { samsung,pins =3D "gpj1-1", "gpj1-0"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -393,7 +393,7 @@ spi3_bus: spi3-bus-pins { samsung,pins =3D "gpg4-0", "gpg4-1", "gpg4-2", "gpg4-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -410,7 +410,7 @@ spi4_bus: spi4-bus-pins { samsung,pins =3D "gpv7-0", "gpv7-1", "gpv7-2", "gpv7-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -427,35 +427,35 @@ sd2_clk: sd2-clk-pins { samsung,pins =3D "gpr4-0"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 sd2_cmd: sd2-cmd-pins { samsung,pins =3D "gpr4-1"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 sd2_cd: sd2-cd-pins { samsung,pins =3D "gpr4-2"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 sd2_bus1: sd2-bus-width1-pins { samsung,pins =3D "gpr4-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 sd2_bus4: sd2-bus-width4-pins { samsung,pins =3D "gpr4-4", "gpr4-5", "gpr4-6"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; =20 @@ -683,20 +683,20 @@ spi5_bus: spi5-bus-pins { samsung,pins =3D "gpf2-0", "gpf2-1", "gpf2-2", "gpf2-3"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 ufs_refclk_out: ufs-refclk-out-pins { samsung,pins =3D "gpg2-4"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; =20 ufs_rst_n: ufs-rst-n-pins { samsung,pins =3D "gph1-5"; samsung,pin-function =3D ; samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-drv =3D ; }; }; diff --git a/arch/arm64/boot/dts/exynos/exynos7885-pinctrl.dtsi b/arch/arm6= 4/boot/dts/exynos/exynos7885-pinctrl.dtsi index a50c1dbd5545..34bb12191955 100644 --- a/arch/arm64/boot/dts/exynos/exynos7885-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos7885-pinctrl.dtsi @@ -9,8 +9,8 @@ * device tree nodes in this file. */ =20 -#include #include +#include "exynos-pinctrl.h" =20 &pinctrl_alive { etc0: etc0-gpio-bank { diff --git a/arch/arm64/boot/dts/exynos/exynos850-pinctrl.dtsi b/arch/arm64= /boot/dts/exynos/exynos850-pinctrl.dtsi index f43e4a206282..424bc80bde68 100644 --- a/arch/arm64/boot/dts/exynos/exynos850-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos850-pinctrl.dtsi @@ -10,7 +10,7 @@ */ =20 #include -#include +#include "exynos-pinctrl.h" =20 &pinctrl_alive { gpa0: gpa0-gpio-bank { diff --git a/arch/arm64/boot/dts/exynos/exynosautov9-pinctrl.dtsi b/arch/ar= m64/boot/dts/exynos/exynosautov9-pinctrl.dtsi index ef0349d1c3d0..2a616d23c09f 100644 --- a/arch/arm64/boot/dts/exynos/exynosautov9-pinctrl.dtsi +++ b/arch/arm64/boot/dts/exynos/exynosautov9-pinctrl.dtsi @@ -8,7 +8,7 @@ * device tree nodes in this file. */ =20 -#include +#include "exynos-pinctrl.h" =20 &pinctrl_alive { gpa0: gpa0-gpio-bank { --=20 2.34.1 From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8CF1DC433EF for ; Wed, 1 Jun 2022 15:28:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1355668AbiFAP2e (ORCPT ); Wed, 1 Jun 2022 11:28:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46956 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355561AbiFAP2L (ORCPT ); Wed, 1 Jun 2022 11:28:11 -0400 Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com [IPv6:2a00:1450:4864:20::62a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B3B3330540 for ; Wed, 1 Jun 2022 08:27:59 -0700 (PDT) Received: by mail-ej1-x62a.google.com with SMTP id y19so4517527ejq.6 for ; Wed, 01 Jun 2022 08:27:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Bl57OKDiEmc934apkKxlfUmPxR6ZHTx6W0wo8+dFsSE=; b=Y3niumlh43GVRjJCSuCFJAcG0Yqkvp16UAExKgFdD0NG/shxCvC1iPc435J8A1oaIr cdMQWPjIMzcRydHIPH0YAPPZ4aQ4zRFJY49whWCRTJMfQ2qa6qoQ7I5XQQZWyzAx1KQb Di6sERPAPgF1ZpcshJeMatMkU/k6r9FNwd5fft//eGi9cKwlwraQ79cBfwFzG8xWS9X0 ouoRxvJA0cKP+dQvB96AzH3rMvWMFC/yLJ3RZJkK/DxH9Bhwh79aFvp2Se0NMYTgtlgP 0emNNtG+zdEfy1dNfhRbCIVxMJqre60iC+72vY2a85h3mfB644f2zD6bze8IHq6uOVr1 GUsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Bl57OKDiEmc934apkKxlfUmPxR6ZHTx6W0wo8+dFsSE=; b=bfrfgMk0daucqj30I8dushhjumXnT1gdvB0DZ34+3o2dwLJRtG8UDZe+Kf1t18Yhsr ZTjaXu1cWb5E11uJxew98OpXndJM2UEXizgm+GCrj1HYwsq11iVdq5NzCSVBZNn2BXq7 8AQtq7Jc3NkhxLn8Z+tflWUj0FIRZ45ToAjJO6Yj9/H04asC6oHKSSwj4AiL2c070vZZ 8BmrsoKNx2S3mbm0D8L8/MGnFSGCCilkuH7r2geNq8wenNE3eRexB7TH+oWml1Z+NSr5 hT8vjyeagz19b9hmFtyy/qkz5KOKtg5L3uMECQfne43Nejlh4cF2PPSdnW6NJhjEMB1y zEwQ== X-Gm-Message-State: AOAM5336JRzBpVhgV+qNus9ZrojE1L35UeACPIvpIiK0RIW8QhYtar2Y Xi6H/jH4Vg1XgwFmLFpKWr1SIw== X-Google-Smtp-Source: ABdhPJwRT4IVwPZXii7AaMdpCFr11mtvzcMmSS8EdMz0S+6FC583WHn/N2+7NpkaFM7p5G5Lcwanag== X-Received: by 2002:a17:907:7642:b0:706:fd3a:61f0 with SMTP id kj2-20020a170907764200b00706fd3a61f0mr25482ejc.503.1654097278053; Wed, 01 Jun 2022 08:27:58 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:57 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 6/7] arm64: dts: fsd: use local header for pinctrl register values Date: Wed, 1 Jun 2022 17:27:19 +0200 Message-Id: <20220601152720.232383-7-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The DTS uses hardware register values directly in pin controller pin configuration. These are not some IDs or other abstraction layer but raw numbers used in the registers. These numbers were previously put in the bindings header to avoid code duplication and to provide some context meaning (name), but they do not fit the purpose of bindings. It is also quite confusing to use constants prefixed with Exynos for other SoC, because there is actually nothing here in common, except the actual value. Store the constants in a header next to DTS and use them instead of bindings. Signed-off-by: Krzysztof Kozlowski --- arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi | 92 +++++++++++----------- arch/arm64/boot/dts/tesla/fsd-pinctrl.h | 33 ++++++++ 2 files changed, 79 insertions(+), 46 deletions(-) create mode 100644 arch/arm64/boot/dts/tesla/fsd-pinctrl.h diff --git a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi b/arch/arm64/boot/d= ts/tesla/fsd-pinctrl.dtsi index d4d0cb005712..257e1d3efcb6 100644 --- a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi +++ b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi @@ -8,7 +8,7 @@ * https://www.tesla.com */ =20 -#include +#include "fsd-pinctrl.h" =20 &pinctrl_fsys0 { gpf0: gpf0-gpio-bank { @@ -223,107 +223,107 @@ gpg7: gpg7-gpio-bank { =20 pwm0_out: pwm0-out-pins { samsung,pins =3D "gpb6-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 pwm1_out: pwm1-out-pins { samsung,pins =3D "gpb6-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c0_bus: hs-i2c0-bus-pins { samsung,pins =3D "gpb0-0", "gpb0-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c1_bus: hs-i2c1-bus-pins { samsung,pins =3D "gpb0-2", "gpb0-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c2_bus: hs-i2c2-bus-pins { samsung,pins =3D "gpb0-4", "gpb0-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c3_bus: hs-i2c3-bus-pins { samsung,pins =3D "gpb0-6", "gpb0-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c4_bus: hs-i2c4-bus-pins { samsung,pins =3D "gpb1-0", "gpb1-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c5_bus: hs-i2c5-bus-pins { samsung,pins =3D "gpb1-2", "gpb1-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c6_bus: hs-i2c6-bus-pins { samsung,pins =3D "gpb1-4", "gpb1-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 hs_i2c7_bus: hs-i2c7-bus-pins { samsung,pins =3D "gpb1-6", "gpb1-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart0_data: uart0-data-pins { samsung,pins =3D "gpb7-0", "gpb7-1"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 uart1_data: uart1-data-pins { samsung,pins =3D "gpb7-4", "gpb7-5"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spi0_bus: spi0-bus-pins { samsung,pins =3D "gpb4-0", "gpb4-2", "gpb4-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spi1_bus: spi1-bus-pins { samsung,pins =3D "gpb4-4", "gpb4-6", "gpb4-7"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; =20 spi2_bus: spi2-bus-pins { samsung,pins =3D "gpb5-0", "gpb5-2", "gpb5-3"; - samsung,pin-function =3D ; - samsung,pin-pud =3D ; - samsung,pin-drv =3D ; + samsung,pin-function =3D ; + samsung,pin-pud =3D ; + samsung,pin-drv =3D ; }; }; =20 diff --git a/arch/arm64/boot/dts/tesla/fsd-pinctrl.h b/arch/arm64/boot/dts/= tesla/fsd-pinctrl.h new file mode 100644 index 000000000000..6ffbda362493 --- /dev/null +++ b/arch/arm64/boot/dts/tesla/fsd-pinctrl.h @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Tesla FSD DTS pinctrl constants + * + * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * Copyright (c) 2022 Linaro Ltd + * Author: Krzysztof Kozlowski + */ + +#ifndef __DTS_ARM64_TESLA_FSD_PINCTRL_H__ +#define __DTS_ARM64_TESLA_FSD_PINCTRL_H__ + +#define FSD_PIN_PULL_NONE 0 +#define FSD_PIN_PULL_DOWN 1 +#define FSD_PIN_PULL_UP 3 + +#define FSD_PIN_DRV_LV1 0 +#define FSD_PIN_DRV_LV2 2 +#define FSD_PIN_DRV_LV3 1 +#define FSD_PIN_DRV_LV4 3 + +#define FSD_PIN_FUNC_INPUT 0 +#define FSD_PIN_FUNC_OUTPUT 1 +#define FSD_PIN_FUNC_2 2 +#define FSD_PIN_FUNC_3 3 +#define FSD_PIN_FUNC_4 4 +#define FSD_PIN_FUNC_5 5 +#define FSD_PIN_FUNC_6 6 +#define FSD_PIN_FUNC_EINT 0xf +#define FSD_PIN_FUNC_F FSD_PIN_FUNC_EINT + +#endif /* __DTS_ARM64_TESLA_FSD_PINCTRL_H__ */ --=20 2.34.1 From nobody Tue Apr 28 10:38:13 2026 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 64830C433EF for ; Wed, 1 Jun 2022 15:28:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351333AbiFAP2n (ORCPT ); Wed, 1 Jun 2022 11:28:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46972 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355195AbiFAP2L (ORCPT ); Wed, 1 Jun 2022 11:28:11 -0400 Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com [IPv6:2a00:1450:4864:20::62d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 997DC65D14 for ; Wed, 1 Jun 2022 08:28:00 -0700 (PDT) Received: by mail-ej1-x62d.google.com with SMTP id m20so4482071ejj.10 for ; Wed, 01 Jun 2022 08:28:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZymzKblkmQHOv6Wxpn4eFQND8kz+YPWJS+8NHwPPhcM=; b=KYv7vGpIKqJ65WGv+O0vCumjNnnjO6B/XDXdXHOF6xg470mVs5ya1FWe3u/5WthlB2 cWVQIVM3UKgI1b2EYBLe8H5YgE60TegCVeG6cxHgtnIfvG4SMpR6I/eY23Z0XmFYK0lp rgBbPlQy5h2O9Ytnp8LnipI+t1lKRLHMX1hZXAthnWbi2mGY22N0YPxtoKFAsIzRyAVz +thKkPMaxLnyoWsTu7IuRDAcvkPgv/BehKSyfAiR16gEnRWH3CtLJHU0OkWmEKva2DxU X2W81ldpMykreuCCNOO3xEqzC6FgukDwZJpjWOUPwlKORr2nUuJLnQ+54Cs9ANmsXcQW TaVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZymzKblkmQHOv6Wxpn4eFQND8kz+YPWJS+8NHwPPhcM=; b=RUgD0Dx/gMxifyS58KEMBw6A2WxAeyPjoz0xjK7TjmKd593uyZ8el6o9Z3TnJw4Zlr 5zMTivzuTk/FAl4pvXbgFa+Fma5x9ctDx60xT2lD0LWviXMAqKwKELb3kCiQiy50d8Fg 5acBqhT56WBg04ZoXE6USPetTIPxcxDxVRHRan1j/QsN4bDCbTNazmhQRn6WM44K+hP0 4EMyU+wigx9pMFErpsRAPwwYbAR7r8aing7wuzQNrco2LxYEuF/HYVJXnFBJt9uezvjg aVCoaxiHLveqXiam2rgU9LkV6LM0DyjAO0RLMN6C5pU5a6EgHfMe4pA565J9dwbHA6BM dkow== X-Gm-Message-State: AOAM531w2eTZyi+ikGDTSvkkHpq+FllZOLRan14gRBDCxpXa/RNwDefF O1MBQtbcMeAeYW0yvDTQ+u1hAA== X-Google-Smtp-Source: ABdhPJxXMsBFBclXiIXMml78Dys6pdyCJsOQJJhXxyG6J2hB5NMzBue2ItVsZfCIHwmBsQ6H0UBa5Q== X-Received: by 2002:a17:907:7ea0:b0:6fe:f024:d006 with SMTP id qb32-20020a1709077ea000b006fef024d006mr80478ejc.248.1654097279137; Wed, 01 Jun 2022 08:27:59 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b006fee7b5dff2sm845870ejb.143.2022.06.01.08.27.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 08:27:58 -0700 (PDT) From: Krzysztof Kozlowski To: Rob Herring , Krzysztof Kozlowski , Alim Akhtar , Tomasz Figa , Sylwester Nawrocki , Linus Walleij , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Krzysztof Kozlowski Subject: [PATCH v2 7/7] dt-bindings: pinctrl: deprecate header with register constants Date: Wed, 1 Jun 2022 17:27:20 +0200 Message-Id: <20220601152720.232383-8-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> References: <20220601152720.232383-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" For convenience (less code duplication, some meaning added to raw number), the pin controller pin configuration register values were defined in the bindings header. These are not some IDs or other abstraction layer but raw numbers used in the registers These constants do not fit the purpose of bindings. They do not provide any abstraction, any hardware and driver independent ID. With minor exceptions, the Linux drivers actually do not use the bindings header at all. All of the constants were moved already to headers local to DTS (residing in DTS directory), so remove any references to the bindings header and add a warning tha tit is deprecated. Signed-off-by: Krzysztof Kozlowski --- drivers/pinctrl/samsung/pinctrl-exynos.c | 6 ++---- drivers/pinctrl/samsung/pinctrl-exynos.h | 3 +++ drivers/pinctrl/samsung/pinctrl-samsung.c | 4 +--- drivers/pinctrl/samsung/pinctrl-samsung.h | 8 ++++++++ include/dt-bindings/pinctrl/samsung.h | 7 +++++++ 5 files changed, 21 insertions(+), 7 deletions(-) diff --git a/drivers/pinctrl/samsung/pinctrl-exynos.c b/drivers/pinctrl/sam= sung/pinctrl-exynos.c index 6d7ca1758292..a8212fc126bf 100644 --- a/drivers/pinctrl/samsung/pinctrl-exynos.c +++ b/drivers/pinctrl/samsung/pinctrl-exynos.c @@ -27,8 +27,6 @@ #include #include =20 -#include - #include "pinctrl-samsung.h" #include "pinctrl-exynos.h" =20 @@ -173,7 +171,7 @@ static int exynos_irq_request_resources(struct irq_data= *irqd) =20 con =3D readl(bank->pctl_base + reg_con); con &=3D ~(mask << shift); - con |=3D EXYNOS_PIN_FUNC_EINT << shift; + con |=3D EXYNOS_PIN_CON_FUNC_EINT << shift; writel(con, bank->pctl_base + reg_con); =20 raw_spin_unlock_irqrestore(&bank->slock, flags); @@ -196,7 +194,7 @@ static void exynos_irq_release_resources(struct irq_dat= a *irqd) =20 con =3D readl(bank->pctl_base + reg_con); con &=3D ~(mask << shift); - con |=3D EXYNOS_PIN_FUNC_INPUT << shift; + con |=3D PIN_CON_FUNC_INPUT << shift; writel(con, bank->pctl_base + reg_con); =20 raw_spin_unlock_irqrestore(&bank->slock, flags); diff --git a/drivers/pinctrl/samsung/pinctrl-exynos.h b/drivers/pinctrl/sam= sung/pinctrl-exynos.h index bfad1ced8017..7bd6d82c9f36 100644 --- a/drivers/pinctrl/samsung/pinctrl-exynos.h +++ b/drivers/pinctrl/samsung/pinctrl-exynos.h @@ -16,6 +16,9 @@ #ifndef __PINCTRL_SAMSUNG_EXYNOS_H #define __PINCTRL_SAMSUNG_EXYNOS_H =20 +/* Values for the pin CON register */ +#define EXYNOS_PIN_CON_FUNC_EINT 0xf + /* External GPIO and wakeup interrupt related definitions */ #define EXYNOS_GPIO_ECON_OFFSET 0x700 #define EXYNOS_GPIO_EFLTCON_OFFSET 0x800 diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/sa= msung/pinctrl-samsung.c index 26d309d2516d..4837bceb767b 100644 --- a/drivers/pinctrl/samsung/pinctrl-samsung.c +++ b/drivers/pinctrl/samsung/pinctrl-samsung.c @@ -26,8 +26,6 @@ #include #include =20 -#include - #include "../core.h" #include "pinctrl-samsung.h" =20 @@ -614,7 +612,7 @@ static int samsung_gpio_set_direction(struct gpio_chip = *gc, data =3D readl(reg); data &=3D ~(mask << shift); if (!input) - data |=3D EXYNOS_PIN_FUNC_OUTPUT << shift; + data |=3D PIN_CON_FUNC_OUTPUT << shift; writel(data, reg); =20 return 0; diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.h b/drivers/pinctrl/sa= msung/pinctrl-samsung.h index fc6f5199c548..9af93e3d8d9f 100644 --- a/drivers/pinctrl/samsung/pinctrl-samsung.h +++ b/drivers/pinctrl/samsung/pinctrl-samsung.h @@ -53,6 +53,14 @@ enum pincfg_type { #define PINCFG_UNPACK_TYPE(cfg) ((cfg) & PINCFG_TYPE_MASK) #define PINCFG_UNPACK_VALUE(cfg) (((cfg) & PINCFG_VALUE_MASK) >> \ PINCFG_VALUE_SHIFT) +/* + * Values for the pin CON register, choosing pin function. + * The basic set (input and output) are same between: S3C24xx, S3C64xx, S5= PV210, + * Exynos ARMv7, Exynos ARMv8, Tesla FSD. + */ +#define PIN_CON_FUNC_INPUT 0x0 +#define PIN_CON_FUNC_OUTPUT 0x1 + /** * enum eint_type - possible external interrupt types. * @EINT_TYPE_NONE: bank does not support external interrupts diff --git a/include/dt-bindings/pinctrl/samsung.h b/include/dt-bindings/pi= nctrl/samsung.h index 950970634dfe..d1da5ff68d0c 100644 --- a/include/dt-bindings/pinctrl/samsung.h +++ b/include/dt-bindings/pinctrl/samsung.h @@ -10,6 +10,13 @@ #ifndef __DT_BINDINGS_PINCTRL_SAMSUNG_H__ #define __DT_BINDINGS_PINCTRL_SAMSUNG_H__ =20 +/* + * These bindings are deprecated, because they do not match the actual + * concept of bindings but rather contain pure register values. + * Instead include the header in the DTS source directory. + */ +#warning "These bindings are deprecated. Instead use the header in the DTS= source directory." + #define EXYNOS_PIN_PULL_NONE 0 #define EXYNOS_PIN_PULL_DOWN 1 #define EXYNOS_PIN_PULL_UP 3 --=20 2.34.1