From nobody Sun Feb 8 21:26:43 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 298353644D2; Tue, 3 Feb 2026 17:30:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770139821; cv=none; b=UhKOgGXu61taW5sBg+yR7zzEVFx9elIl71a5PxLao5ijn4mPjwsaCBnrq/E2POgxg0d5YSzL45Dp2OIfsaLUtfg1KCjIxR034bwLCTsF/zOvmKFWw1fvBeVUMAo/yL6YgjyjSSH3OFqiptNVdYPn7VS6tUe9/vdWyaXrNQ2XA+A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770139821; c=relaxed/simple; bh=+TJZbuSUrc2aq/cuJGaaBK3cvI5fuXEhX3m/yBP+rCY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NWC4aNPNYaF1LASwsCTaqLSfevgeHrC0n33emAzTiaT63Ee0go6TukFFgS9+a6BnWQTJVlIrJzSMtBmJWWwGXWqSuh+ttEn5H1EBdrvWcF0Y1S1cMATjHDCQ+/aKdtQjC5OtcL8H/LFatvnto3eK5KKY45o4vdNqrq9LJ4AUqys= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=GRaWRc6b; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="GRaWRc6b" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E8EBAC2BC86; Tue, 3 Feb 2026 17:30:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1770139820; bh=+TJZbuSUrc2aq/cuJGaaBK3cvI5fuXEhX3m/yBP+rCY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GRaWRc6bEwLpO8hmq0KoNnypzwN76hNAMU4aiLMDrSNyG6V82eV6MklhBYmLy4p1x p8nYreFLKGHkTXC0f5sjC7hT7Ydh4Yjg5P9FQL6umoQpsIorC1ogGgIQV0EKuSXjY6 CstRjgNkYZozYURWnyZTKGT2shl8i4bM+EmhvvhWthUhkxDDpVyAUICboqPPZ/UivJ pASGHcf+8EwdCfT4i36nd329lDTk0BhBuUrYfEo2fQpvYIcVDf+gm1UDr2h5VPQSyt kUtbXq/uzBQW1W1oHQ2ZhgOy9F7md8yNlaeO5HN7lSDDmWeU3SbkMX5X0Fy0u4ROVy f7V1Tcho8m2cg== From: Conor Dooley To: linusw@kernel.org Cc: conor@kernel.org, Conor Dooley , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [rfc 2/2] dt-bindings: pinctrl: pincfg-node: add restrictions on conflicting properties Date: Tue, 3 Feb 2026 17:29:43 +0000 Message-ID: <20260203-gleaming-perky-e12d6a5fe86f@spud> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260203-device-unwashed-ed24f8592d79@spud> References: <20260203-device-unwashed-ed24f8592d79@spud> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=3170; i=conor.dooley@microchip.com; h=from:subject:message-id; bh=fHWlkhGu4hcgzz/nLnrdWCDLipWjIryl6nOBxJfO8ZM=; b=owGbwMvMwCVWscWwfUFT0iXG02pJDJlNBjN6zvKLxfLMys0Om/17rpbpRXfR4IDKli8cJ1ec3 b6i5v7KjlIWBjEuBlkxRZbE230tUuv/uOxw7nkLM4eVCWQIAxenAExkkhQjw+7uL7blu7yN61a6 evk7n2qrcHSfyS0dbyFrnnmsZ2rkQkaGPa67+oK9jJK8Q8/MmLzt2bLpjmwh5Uc0ZjkVlGUyHGH mAQA= X-Developer-Key: i=conor.dooley@microchip.com; a=openpgp; fpr=F9ECA03CF54F12CD01F1655722E2C55B37CF380C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Conor Dooley Many of the possible pincfg properties are not compatible with one another, either because they represent mutually exclusive states for a pin or because they provide the same information in different units. Add some simple restrictions to prevent invalid configurations. Signed-off-by: Conor Dooley --- .../bindings/pinctrl/pincfg-node.yaml | 105 ++++++++++++++++-- 1 file changed, 98 insertions(+), 7 deletions(-) diff --git a/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml b/D= ocumentation/devicetree/bindings/pinctrl/pincfg-node.yaml index d1bc389e0a6d..874f0781d2fc 100644 --- a/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml +++ b/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml @@ -162,12 +162,103 @@ properties: this affects the expected delay in ps before latching a value to an output pin. =20 -if: - required: - - skew-delay -then: - properties: - skew-delay-input-ps: false - skew-delay-output-ps: false +allOf: + - if: + required: + - skew-delay + then: + properties: + skew-delay-input-ps: false + skew-delay-output-ps: false + + - if: + required: + - input-disable + then: + properties: + input-enable: false + + - if: + required: + - output-disable + then: + properties: + output-enable: false + output-impedance-ohms: false + + - if: + required: + - output-low + then: + properties: + output-high: false + + - if: + required: + - low-power-enable + then: + properties: + low-power-disable: false + + - if: + required: + - input-schmitt-disable + then: + properties: + input-schmitt-enable: false + input-schmitt-microvolt: false + + - if: + required: + - drive-strength + then: + properties: + drive-strength-microamp: false + + - if: + anyOf: + - required: + - drive-open-source + - required: + - drive-open-drain + - required: + - drive-push-pull + then: + oneOf: + - required: + - drive-open-source + - required: + - drive-open-drain + - required: + - drive-push-pull + + - if: + anyOf: + - required: + - bias-disable + - required: + - bias-high-impedance + - required: + - bias-bus-hold + - required: + - bias-pull-up + - required: + - bias-pull-down + - required: + - bias-pull-pin-default + then: + oneOf: + - required: + - bias-disable + - required: + - bias-high-impedance + - required: + - bias-bus-hold + - required: + - bias-pull-up + - required: + - bias-pull-down + - required: + - bias-pull-pin-default =20 additionalProperties: true --=20 2.51.0