* [PATCH v15 0/4] Add support for Maxim MAX735x/MAX736x variants @ 2023-08-17 7:10 Patrick Rudolph 2023-08-17 7:10 ` [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support Patrick Rudolph ` (2 more replies) 0 siblings, 3 replies; 9+ messages in thread From: Patrick Rudolph @ 2023-08-17 7:10 UTC (permalink / raw) To: Laurent Pinchart, linux-i2c Cc: naresh.solanki, Patrick Rudolph, devicetree, linux-kernel v15: - Clarified VDD usage on PCA9846 which has two VDD pins v14: - Added comment for interrupt support v13: - Fix dt-binding - Fixed nits v12: - Add separate patch correcting interrupt support in dt-binding - Fix typo in commit message - Make vdd-supply non optional v11: - Fix dt-binding example v10: - Small updates to dt-bindings - Make vdd-supply optional - Drop MAX7357 enhanced mode configuration v9: - Fix 'then' not aligned with 'if' in dt-bindings - Split enhanced mode configuration into separate patch - Add MAX7357/MAX7358 register definitions - Rename config register defines - Update comments and explain non default config being applied on MAX7357 - Check for I2C_FUNC_SMBUS_WRITE_BYTE_DATA functionality v8: - Move allOf in dt-binding and use double negation v7: - Reworked the commit message, comments and renamed a struct field. No functional change. v6: - Fix typo in dt-bindings v5: - Remove optional and make vdd-supply mandatory v4: - Add missing maxitems dt-bindings property v3: - Merge dt-bindings into i2c-mux-pca954x.yaml v2: - Move dt-bindings to separate file - Added support for MAX736x as they are very similar - Fixed an issue found by kernel test robot - Dropped max735x property and custom IRQ check - Added MAX7357 config register defines instead of magic values - Renamed vcc-supply to vdd-supply Patrick Rudolph (4): dt-bindings: i2c: pca954x: Correct interrupt support dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants i2c: muxes: pca954x: Add MAX735x/MAX736x support i2c: muxes: pca954x: Add regulator support .../bindings/i2c/i2c-mux-pca954x.yaml | 46 ++++++++-- drivers/i2c/muxes/Kconfig | 6 +- drivers/i2c/muxes/i2c-mux-pca954x.c | 92 +++++++++++++++++-- 3 files changed, 129 insertions(+), 15 deletions(-) -- 2.41.0 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support 2023-08-17 7:10 [PATCH v15 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph @ 2023-08-17 7:10 ` Patrick Rudolph 2023-08-17 16:21 ` Peter Rosin 2023-08-23 21:15 ` Wolfram Sang 2023-08-17 7:10 ` [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants Patrick Rudolph 2023-08-17 16:21 ` [PATCH v15 0/4] Add support for " Peter Rosin 2 siblings, 2 replies; 9+ messages in thread From: Patrick Rudolph @ 2023-08-17 7:10 UTC (permalink / raw) To: Peter Rosin, Laurent Pinchart Cc: naresh.solanki, Patrick Rudolph, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel Only some of the PCA954x compatible ICs have interrupt capability, but the binding advertises it on all ICs. Sync the dt-binding with the driver and only advertise it on: - nxp,pca9542 - nxp,pca9543 - nxp,pca9544 - nxp,pca9545 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- .../bindings/i2c/i2c-mux-pca954x.yaml | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml index 9f1726d0356b..e5c1070903ef 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml @@ -12,9 +12,6 @@ maintainers: description: The binding supports NXP PCA954x and PCA984x I2C mux/switch devices. -allOf: - - $ref: /schemas/i2c/i2c-mux.yaml# - properties: compatible: oneOf: @@ -63,6 +60,24 @@ required: - compatible - reg +allOf: + - $ref: /schemas/i2c/i2c-mux.yaml# + - if: + not: + properties: + compatible: + contains: + enum: + - nxp,pca9542 + - nxp,pca9543 + - nxp,pca9544 + - nxp,pca9545 + then: + properties: + interrupts: false + "#interrupt-cells": false + interrupt-controller: false + unevaluatedProperties: false examples: @@ -74,7 +89,7 @@ examples: #size-cells = <0>; i2c-mux@74 { - compatible = "nxp,pca9548"; + compatible = "nxp,pca9545"; #address-cells = <1>; #size-cells = <0>; reg = <0x74>; -- 2.41.0 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support 2023-08-17 7:10 ` [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support Patrick Rudolph @ 2023-08-17 16:21 ` Peter Rosin 2023-08-23 21:15 ` Wolfram Sang 1 sibling, 0 replies; 9+ messages in thread From: Peter Rosin @ 2023-08-17 16:21 UTC (permalink / raw) To: Patrick Rudolph, Laurent Pinchart Cc: naresh.solanki, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel Hi! 2023-08-17 at 09:10, Patrick Rudolph wrote: > Only some of the PCA954x compatible ICs have interrupt > capability, but the binding advertises it on all ICs. > > Sync the dt-binding with the driver and only advertise it on: > - nxp,pca9542 > - nxp,pca9543 > - nxp,pca9544 > - nxp,pca9545 > > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Peter Rosin <peda@axentia.se> Cheers, Peter ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support 2023-08-17 7:10 ` [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support Patrick Rudolph 2023-08-17 16:21 ` Peter Rosin @ 2023-08-23 21:15 ` Wolfram Sang 2023-08-23 21:21 ` Wolfram Sang 1 sibling, 1 reply; 9+ messages in thread From: Wolfram Sang @ 2023-08-23 21:15 UTC (permalink / raw) To: Patrick Rudolph Cc: Peter Rosin, Laurent Pinchart, naresh.solanki, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel [-- Attachment #1: Type: text/plain, Size: 495 bytes --] On Thu, Aug 17, 2023 at 09:10:50AM +0200, Patrick Rudolph wrote: > Only some of the PCA954x compatible ICs have interrupt > capability, but the binding advertises it on all ICs. > > Sync the dt-binding with the driver and only advertise it on: > - nxp,pca9542 > - nxp,pca9543 > - nxp,pca9544 > - nxp,pca9545 > > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Applied to for-next, thanks! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support 2023-08-23 21:15 ` Wolfram Sang @ 2023-08-23 21:21 ` Wolfram Sang 0 siblings, 0 replies; 9+ messages in thread From: Wolfram Sang @ 2023-08-23 21:21 UTC (permalink / raw) To: Patrick Rudolph, Peter Rosin, Laurent Pinchart, naresh.solanki, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel [-- Attachment #1: Type: text/plain, Size: 627 bytes --] On Wed, Aug 23, 2023 at 11:15:08PM +0200, Wolfram Sang wrote: > On Thu, Aug 17, 2023 at 09:10:50AM +0200, Patrick Rudolph wrote: > > Only some of the PCA954x compatible ICs have interrupt > > capability, but the binding advertises it on all ICs. > > > > Sync the dt-binding with the driver and only advertise it on: > > - nxp,pca9542 > > - nxp,pca9543 > > - nxp,pca9544 > > - nxp,pca9545 > > > > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > Applied to for-next, thanks! I replied to V15 but I applied V16! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants 2023-08-17 7:10 [PATCH v15 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph 2023-08-17 7:10 ` [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support Patrick Rudolph @ 2023-08-17 7:10 ` Patrick Rudolph 2023-08-17 16:22 ` Peter Rosin 2023-08-23 21:15 ` Wolfram Sang 2023-08-17 16:21 ` [PATCH v15 0/4] Add support for " Peter Rosin 2 siblings, 2 replies; 9+ messages in thread From: Patrick Rudolph @ 2023-08-17 7:10 UTC (permalink / raw) To: Peter Rosin, Laurent Pinchart Cc: naresh.solanki, Patrick Rudolph, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel Update the pca954x bindings to add support for the Maxim MAX735x/MAX736x chips. The functionality will be provided by the existing pca954x driver. For chips that are powered off by default add a regulator called vdd-supply. Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- .../bindings/i2c/i2c-mux-pca954x.yaml | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml index e5c1070903ef..2d7bb998b0e9 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml @@ -4,18 +4,29 @@ $id: http://devicetree.org/schemas/i2c/i2c-mux-pca954x.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# -title: NXP PCA954x I2C bus switch +title: NXP PCA954x I2C and compatible bus switches maintainers: - Laurent Pinchart <laurent.pinchart@ideasonboard.com> description: - The binding supports NXP PCA954x and PCA984x I2C mux/switch devices. + 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. properties: compatible: oneOf: - enum: + - maxim,max7356 + - maxim,max7357 + - maxim,max7358 + - maxim,max7367 + - maxim,max7368 + - maxim,max7369 - nxp,pca9540 - nxp,pca9542 - nxp,pca9543 @@ -56,6 +67,10 @@ properties: description: if present, overrides i2c-mux-idle-disconnect $ref: /schemas/mux/mux-controller.yaml#/properties/idle-state + vdd-supply: + description: A voltage regulator supplying power to the chip. On PCA9846 + the regulator supplies power to VDD2 (core logic) and optionally to VDD1. + required: - compatible - reg @@ -68,6 +83,8 @@ allOf: compatible: contains: enum: + - maxim,max7367 + - maxim,max7369 - nxp,pca9542 - nxp,pca9543 - nxp,pca9544 @@ -94,6 +111,8 @@ examples: #size-cells = <0>; reg = <0x74>; + vdd-supply = <&p3v3>; + interrupt-parent = <&ipic>; interrupts = <17 IRQ_TYPE_LEVEL_LOW>; interrupt-controller; -- 2.41.0 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants 2023-08-17 7:10 ` [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants Patrick Rudolph @ 2023-08-17 16:22 ` Peter Rosin 2023-08-23 21:15 ` Wolfram Sang 1 sibling, 0 replies; 9+ messages in thread From: Peter Rosin @ 2023-08-17 16:22 UTC (permalink / raw) To: Patrick Rudolph, Laurent Pinchart Cc: naresh.solanki, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel Hi! 2023-08-17 at 09:10, Patrick Rudolph wrote: > Update the pca954x bindings to add support for the Maxim MAX735x/MAX736x > chips. The functionality will be provided by the existing pca954x driver. > > For chips that are powered off by default add a regulator called vdd-supply. > > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Peter Rosin <peda@axentia.se> Cheers, Peter ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants 2023-08-17 7:10 ` [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants Patrick Rudolph 2023-08-17 16:22 ` Peter Rosin @ 2023-08-23 21:15 ` Wolfram Sang 1 sibling, 0 replies; 9+ messages in thread From: Wolfram Sang @ 2023-08-23 21:15 UTC (permalink / raw) To: Patrick Rudolph Cc: Peter Rosin, Laurent Pinchart, naresh.solanki, Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski, linux-i2c, devicetree, linux-kernel [-- Attachment #1: Type: text/plain, Size: 476 bytes --] On Thu, Aug 17, 2023 at 09:10:51AM +0200, Patrick Rudolph wrote: > Update the pca954x bindings to add support for the Maxim MAX735x/MAX736x > chips. The functionality will be provided by the existing pca954x driver. > > For chips that are powered off by default add a regulator called vdd-supply. > > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Applied to for-next, thanks! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v15 0/4] Add support for Maxim MAX735x/MAX736x variants 2023-08-17 7:10 [PATCH v15 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph 2023-08-17 7:10 ` [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support Patrick Rudolph 2023-08-17 7:10 ` [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants Patrick Rudolph @ 2023-08-17 16:21 ` Peter Rosin 2 siblings, 0 replies; 9+ messages in thread From: Peter Rosin @ 2023-08-17 16:21 UTC (permalink / raw) To: Patrick Rudolph, Laurent Pinchart, linux-i2c Cc: naresh.solanki, devicetree, linux-kernel Hi! 2023-08-17 at 09:10, Patrick Rudolph wrote: > v15: > - Clarified VDD usage on PCA9846 which has two VDD pins > > v14: > - Added comment for interrupt support > *snip* This has gone on for far too long and the series feels more than ready... Thanks for your persistence! Cheers, Peter ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2023-08-23 21:22 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-08-17 7:10 [PATCH v15 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph 2023-08-17 7:10 ` [PATCH v15 1/4] dt-bindings: i2c: pca954x: Correct interrupt support Patrick Rudolph 2023-08-17 16:21 ` Peter Rosin 2023-08-23 21:15 ` Wolfram Sang 2023-08-23 21:21 ` Wolfram Sang 2023-08-17 7:10 ` [PATCH v15 2/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants Patrick Rudolph 2023-08-17 16:22 ` Peter Rosin 2023-08-23 21:15 ` Wolfram Sang 2023-08-17 16:21 ` [PATCH v15 0/4] Add support for " Peter Rosin
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).