From: Rob Herring <robh@kernel.org>
To: Romain Gantois <romain.gantois@bootlin.com>
Cc: Wolfram Sang <wsa+renesas@sang-engineering.com>,
Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>,
Luca Ceresoli <luca.ceresoli@bootlin.com>,
Andi Shyti <andi.shyti@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Derek Kiernan <derek.kiernan@amd.com>,
Dragan Cvetic <dragan.cvetic@amd.com>,
Arnd Bergmann <arnd@arndb.de>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Linus Walleij <linus.walleij@linaro.org>,
Bartosz Golaszewski <brgl@bgdev.pl>,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
Kory Maincent <kory.maincent@bootlin.com>,
linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org, linux-media@vger.kernel.org,
linux-gpio@vger.kernel.org
Subject: Re: [PATCH v2 1/9] dt-bindings: misc: Describe TI FPC202 dual port controller
Date: Tue, 19 Nov 2024 12:16:32 -0600 [thread overview]
Message-ID: <20241119181632.GA1957312-robh@kernel.org> (raw)
In-Reply-To: <20241118-fpc202-v2-1-744e4f192a2d@bootlin.com>
On Mon, Nov 18, 2024 at 11:13:00AM +0100, Romain Gantois wrote:
> The FPC202 dual port controller serves as a low speed signal aggregator for
> common port types, notably SFP. It provides access to I2C and low-speed
> GPIO signals of a downstream device through a single upstream control
> interface.
>
> Up to two logical I2C addresses can be accessed on each of the FPC202's
> ports. The port controller acts as an I2C translator (ATR). It converts
> addresses of incoming and outgoing I2C transactions. One use case of this
> is accessing two SFP modules at logical address 0x50 from the same upstream
> I2C controller, using two different client aliases.
>
> Signed-off-by: Romain Gantois <romain.gantois@bootlin.com>
> ---
> .../devicetree/bindings/misc/ti,fpc202.yaml | 83 ++++++++++++++++++++++
> MAINTAINERS | 6 ++
> 2 files changed, 89 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/misc/ti,fpc202.yaml b/Documentation/devicetree/bindings/misc/ti,fpc202.yaml
> new file mode 100644
> index 0000000000000000000000000000000000000000..1c7243f0325211d8cea3736cbe777c4318065b12
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/misc/ti,fpc202.yaml
> @@ -0,0 +1,83 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/misc/ti,fpc202.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TI FPC202 dual port controller with expanded IOs
> +
> +maintainers:
> + - Romain Gantois <romain.gantois@bootlin.com>
> +
> +allOf:
> + - $ref: /schemas/i2c/i2c-atr.yaml#
> +
> +properties:
> + compatible:
> + const: ti,fpc202
> +
> + reg:
> + maxItems: 1
> +
> + gpio-controller: true
> +
> + "#gpio-cells":
> + const: 2
> +
> + enable-gpios:
> + description:
> + Specifier for the GPIO connected to the EN pin.
> + maxItems: 1
> +
> + '#address-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> +patternProperties:
> + "^i2c@[0-1]$":
> + $ref: /schemas/i2c/i2c-controller.yaml
> + description: Downstream device ports 0 and 1
'reg' is not covered by i2c-controller.yaml, so it needs to be
documented here. Along with a 'unevaluatedProperties: false'.
> +
> +required:
> + - compatible
> + - gpio-controller
> + - "#gpio-cells"
> + - reg
> + - "#address-cells"
> + - "#size-cells"
> + - i2c@0
> + - i2c@1
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c-atr@f {
> + compatible = "ti,fpc202";
> + reg = <0xf>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + gpio-controller;
> + #gpio-cells = <2>;
> +
> + i2c@0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> + };
> +
> + i2c@1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + };
> + };
> + };
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index b878ddc99f94e7f6e8fa2c479c5a3f846c514730..8e702cefd2070790330eebf6d2a2b592cadb682d 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -23181,6 +23181,12 @@ F: drivers/misc/tifm*
> F: drivers/mmc/host/tifm_sd.c
> F: include/linux/tifm.h
>
> +TI FPC202 DUAL PORT CONTROLLER
> +M: Romain Gantois <romain.gantois@bootlin.com>
> +L: linux-kernel@vger.kernel.org
> +S: Maintained
> +F: Documentation/devicetree/bindings/misc/ti,fpc202.yaml
> +
> TI FPD-LINK DRIVERS
> M: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> L: linux-media@vger.kernel.org
>
> --
> 2.47.0
>
next prev parent reply other threads:[~2024-11-19 18:16 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-18 10:12 [PATCH v2 0/9] misc: Support TI FPC202 dual-port controller Romain Gantois
2024-11-18 10:13 ` [PATCH v2 1/9] dt-bindings: misc: Describe TI FPC202 dual port controller Romain Gantois
2024-11-19 18:16 ` Rob Herring [this message]
2024-11-18 10:13 ` [PATCH v2 2/9] media: i2c: ds90ub960: Replace aliased clients list with bitmap Romain Gantois
2024-11-18 10:13 ` [PATCH v2 3/9] media: i2c: ds90ub960: Protect alias_use_mask with a mutex Romain Gantois
2024-11-18 10:13 ` [PATCH v2 4/9] i2c: use client addresses directly in ATR interface Romain Gantois
2024-11-18 10:13 ` [PATCH v2 5/9] i2c: move ATR alias pool to a separate struct Romain Gantois
2024-11-18 10:13 ` [PATCH v2 6/9] i2c: rename field 'alias_list' of struct i2c_atr_chan to 'alias_pairs' Romain Gantois
2024-11-18 10:13 ` [PATCH v2 7/9] i2c: support per-channel ATR alias pools Romain Gantois
2024-11-18 10:13 ` [PATCH v2 8/9] i2c: Support dynamic address translation Romain Gantois
2024-11-18 10:13 ` [PATCH v2 9/9] misc: add FPC202 dual port controller driver Romain Gantois
[not found] ` <673b2505.050a0220.22b860.216d@mx.google.com>
2024-11-19 8:10 ` [v2,0/9] misc: Support TI FPC202 dual-port controller Romain Gantois
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241119181632.GA1957312-robh@kernel.org \
--to=robh@kernel.org \
--cc=andi.shyti@kernel.org \
--cc=arnd@arndb.de \
--cc=brgl@bgdev.pl \
--cc=conor+dt@kernel.org \
--cc=derek.kiernan@amd.com \
--cc=devicetree@vger.kernel.org \
--cc=dragan.cvetic@amd.com \
--cc=gregkh@linuxfoundation.org \
--cc=kory.maincent@bootlin.com \
--cc=krzk+dt@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=luca.ceresoli@bootlin.com \
--cc=mchehab@kernel.org \
--cc=romain.gantois@bootlin.com \
--cc=thomas.petazzoni@bootlin.com \
--cc=tomi.valkeinen@ideasonboard.com \
--cc=wsa+renesas@sang-engineering.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.