* [PATCH v10 0/4] Add support for Maxim MAX735x/MAX736x variants
@ 2023-03-23 7:44 Patrick Rudolph
2023-03-23 7:44 ` [PATCH v10 1/4] dt-bindings: i2c: Add " Patrick Rudolph
2023-03-23 10:50 ` [PATCH v10 0/4] Add support for " Andi Shyti
0 siblings, 2 replies; 3+ messages in thread
From: Patrick Rudolph @ 2023-03-23 7:44 UTC (permalink / raw)
To: Laurent Pinchart, linux-i2c, linux-kernel; +Cc: Patrick Rudolph, devicetree
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: Add Maxim MAX735x/MAX736x variants
i2c: muxes: pca954x: Add MAX735x/MAX736x support
i2c: muxes: pca954x: Add regulator support
i2c: muxes: pca954x: Configure MAX7357 in enhanced mode
.../bindings/i2c/i2c-mux-pca954x.yaml | 43 +++++-
drivers/i2c/muxes/Kconfig | 6 +-
drivers/i2c/muxes/i2c-mux-pca954x.c | 141 +++++++++++++++++-
3 files changed, 175 insertions(+), 15 deletions(-)
--
2.39.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH v10 1/4] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants
2023-03-23 7:44 [PATCH v10 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph
@ 2023-03-23 7:44 ` Patrick Rudolph
2023-03-23 10:50 ` [PATCH v10 0/4] Add support for " Andi Shyti
1 sibling, 0 replies; 3+ messages in thread
From: Patrick Rudolph @ 2023-03-23 7:44 UTC (permalink / raw)
To: Peter Rosin, Laurent Pinchart
Cc: Patrick Rudolph, 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 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 <patrick.rudolph@9elements.com>
---
.../bindings/i2c/i2c-mux-pca954x.yaml | 43 ++++++++++++++++---
1 file changed, 38 insertions(+), 5 deletions(-)
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
index 9f1726d0356b..696fdb647f89 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#
-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.
-
-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.
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
+ vdd-supply:
+ description: A voltage regulator supplying power to the chip.
+
required:
- compatible
- reg
+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
examples:
@@ -79,6 +110,8 @@ examples:
#size-cells = <0>;
reg = <0x74>;
+ vdd-supply = <&p3v3>;
+
interrupt-parent = <&ipic>;
interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
--
2.39.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v10 0/4] Add support for Maxim MAX735x/MAX736x variants
2023-03-23 7:44 [PATCH v10 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph
2023-03-23 7:44 ` [PATCH v10 1/4] dt-bindings: i2c: Add " Patrick Rudolph
@ 2023-03-23 10:50 ` Andi Shyti
1 sibling, 0 replies; 3+ messages in thread
From: Andi Shyti @ 2023-03-23 10:50 UTC (permalink / raw)
To: Patrick Rudolph; +Cc: Laurent Pinchart, linux-i2c, linux-kernel, devicetree
Hi Patrick,
> Patrick Rudolph (4):
> dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants
> i2c: muxes: pca954x: Add MAX735x/MAX736x support
> i2c: muxes: pca954x: Add regulator support
> i2c: muxes: pca954x: Configure MAX7357 in enhanced mode
this last patch did not come through as you can also see here[*].
Is it just me not receiving 4/4? If not, can you resend, please?
Andi
[*] https://lore.kernel.org/linux-i2c/?q=f%3Apatrick.rudolph%409elements.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-03-23 10:52 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-23 7:44 [PATCH v10 0/4] Add support for Maxim MAX735x/MAX736x variants Patrick Rudolph
2023-03-23 7:44 ` [PATCH v10 1/4] dt-bindings: i2c: Add " Patrick Rudolph
2023-03-23 10:50 ` [PATCH v10 0/4] Add support for " Andi Shyti
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox