From nobody Fri Dec 19 03:44:33 2025 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 D3F3BC77B78 for ; Fri, 14 Apr 2023 11:02:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230474AbjDNLC4 (ORCPT ); Fri, 14 Apr 2023 07:02:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35240 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230397AbjDNLCm (ORCPT ); Fri, 14 Apr 2023 07:02:42 -0400 Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 846BBA277 for ; Fri, 14 Apr 2023 04:02:14 -0700 (PDT) Received: by mail-wr1-x436.google.com with SMTP id v27so7864360wra.13 for ; Fri, 14 Apr 2023 04:02:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=9elements.com; s=google; t=1681470121; x=1684062121; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=drtUIssb1CGOLLzb1iNu2NktxzzQjkjET6wfRo3ULQ0=; b=ZVf0C5RZUcc3dfGIT00g2MVd62RUeTFDg/qOSctGwyBpEoyY6SqieG1aBXhfGMZXhW 6HVOwaDcCnEG7EinJTjOaZbld3lJpZ0N5JSCLNFtU6/EJQHPbT+MoSmLpunAaigpGSia G1RAVKgZl/WdlM6AUogIvy1zXPJNa1YwW7hekwKn9xX/ve1UM6IoO2zPQ1ADcRxC0+Cy I2dw6NhzZlGyYNh7wBX9d0AmHAcIuK9qBoO1OW9qoM+5JsUce2vxC+k4sUOayjCttkHL JuSGiMK5a84Oajov0UY70BxEN/V6DM1gMdQeUYko99wVLUxfpS6fjXmjUNSbmfMhN+a0 ZznA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681470121; x=1684062121; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=drtUIssb1CGOLLzb1iNu2NktxzzQjkjET6wfRo3ULQ0=; b=TlW2GGzUtXcI2Sy0/A+TkDzeqYLlMRcut+RBoY3uyn6uX7GR8PZiaepUma7FSlC0Uh r9+//eA9hTqZNL78x8yLM9CJVMyWQFJ8z3+iaof6HKSAZQfqHUOCbS9hBkt3UnQcQRAG A0w6tRUux3+q1HcwAuvr0j/PRoqIW4lgrXiZeLi2CnqT3gb7DC2DI5KiXRG3IDq9y3WS 8gp00ADabKZqcz2hTQWv+qbYZVwBMsQ6EbQsIi5wFBqzElf2jM6NWUENp7TghNhMezv2 iBA4vGPrePvbXFN60zjaIUeHr67UeElKCUYNtdOX1iweErEMngHmH/pxGr5QRdCbNW+m 1vVQ== X-Gm-Message-State: AAQBX9cOWbCzhoQxRHML3MTCcSJDZX0IezpNdh883N2yo5AsUJZZhF7k jGLUvc8UymzV28A4PhHxAOXU2w== X-Google-Smtp-Source: AKy350YxhAwczRVNf8zLXq31EgnzAk4snTfSVhuNe5B/eRD4EbWUH0SA6y3VfSnxWp8t3yxmRUF+mw== X-Received: by 2002:a05:6000:118c:b0:2f5:c399:b299 with SMTP id g12-20020a056000118c00b002f5c399b299mr4183889wrx.46.1681470120828; Fri, 14 Apr 2023 04:02:00 -0700 (PDT) Received: from fedora.. (ip-095-222-150-251.um34.pools.vodafone-ip.de. [95.222.150.251]) by smtp.gmail.com with ESMTPSA id u6-20020a5d6ac6000000b002f2789d1bcfsm3328830wrw.21.2023.04.14.04.02.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Apr 2023 04:02:00 -0700 (PDT) From: Patrick Rudolph To: Peter Rosin , Laurent Pinchart Cc: Patrick Rudolph , Rob Herring , Krzysztof Kozlowski , linux-i2c@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v11 1/3] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants Date: Fri, 14 Apr 2023 13:01:34 +0200 Message-Id: <20230414110137.401356-2-patrick.rudolph@9elements.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230414110137.401356-1-patrick.rudolph@9elements.com> References: <20230414110137.401356-1-patrick.rudolph@9elements.com> 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" Update the pca954x bindings to add support for the Maxim MAX735x/MAX736x chips. The functionality will be provided by the exisintg pca954x driver. While on it make the interrupts support conditionally as not all of the existing chips have interrupts. For chips that are powered off by default add an optional regulator called vdd-supply. Signed-off-by: Patrick Rudolph --- .../bindings/i2c/i2c-mux-pca954x.yaml | 45 ++++++++++++++++--- 1 file changed, 39 insertions(+), 6 deletions(-) diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/D= ocumentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml index 9f1726d0356b..6fed6eae9c9b 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml @@ -4,21 +4,29 @@ $id: http://devicetree.org/schemas/i2c/i2c-mux-pca954x.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# =20 -title: NXP PCA954x I2C bus switch +title: NXP PCA954x I2C and compatible bus switches =20 maintainers: - Laurent Pinchart =20 description: - The binding supports NXP PCA954x and PCA984x I2C mux/switch devices. - -allOf: - - $ref: /schemas/i2c/i2c-mux.yaml# + The NXP PCA954x and compatible devices are I2C bus + multiplexer/switches that share the same functionality + and register layout. + The devices usually have 4 or 8 child buses, which are + attached to the parent bus by using the SMBus "Send Byte" + command. =20 properties: compatible: oneOf: - enum: + - maxim,max7356 + - maxim,max7357 + - maxim,max7358 + - maxim,max7367 + - maxim,max7368 + - maxim,max7369 - nxp,pca9540 - nxp,pca9542 - nxp,pca9543 @@ -59,10 +67,33 @@ properties: description: if present, overrides i2c-mux-idle-disconnect $ref: /schemas/mux/mux-controller.yaml#/properties/idle-state =20 + vdd-supply: + description: A voltage regulator supplying power to the chip. + required: - compatible - reg =20 +allOf: + - $ref: /schemas/i2c/i2c-mux.yaml# + - if: + not: + properties: + compatible: + contains: + enum: + - maxim,max7367 + - maxim,max7369 + - nxp,pca9542 + - nxp,pca9543 + - nxp,pca9544 + - nxp,pca9545 + then: + properties: + interrupts: false + "#interrupt-cells": false + interrupt-controller: false + unevaluatedProperties: false =20 examples: @@ -74,11 +105,13 @@ examples: #size-cells =3D <0>; =20 i2c-mux@74 { - compatible =3D "nxp,pca9548"; + compatible =3D "nxp,pca9545"; #address-cells =3D <1>; #size-cells =3D <0>; reg =3D <0x74>; =20 + vdd-supply =3D <&p3v3>; + interrupt-parent =3D <&ipic>; interrupts =3D <17 IRQ_TYPE_LEVEL_LOW>; interrupt-controller; --=20 2.39.2