Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: misc: Describe TI FPC202 dual port controller

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.

Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Tested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Signed-off-by: Romain Gantois <romain.gantois@bootlin.com>
Acked-by: Andi Shyti <andi.shyti@kernel.org>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>

authored by

Romain Gantois and committed by
Wolfram Sang
35c6e493 81e68e2d

+100
+94
Documentation/devicetree/bindings/misc/ti,fpc202.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/misc/ti,fpc202.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: TI FPC202 dual port controller with expanded IOs 8 + 9 + maintainers: 10 + - Romain Gantois <romain.gantois@bootlin.com> 11 + 12 + allOf: 13 + - $ref: /schemas/i2c/i2c-atr.yaml# 14 + 15 + properties: 16 + compatible: 17 + const: ti,fpc202 18 + 19 + reg: 20 + maxItems: 1 21 + 22 + gpio-controller: true 23 + 24 + "#gpio-cells": 25 + const: 2 26 + 27 + enable-gpios: 28 + description: 29 + Specifier for the GPIO connected to the EN pin. 30 + maxItems: 1 31 + 32 + '#address-cells': 33 + const: 1 34 + 35 + '#size-cells': 36 + const: 0 37 + 38 + patternProperties: 39 + "^i2c@[0-1]$": 40 + $ref: /schemas/i2c/i2c-controller.yaml# 41 + description: Downstream device ports 0 and 1 42 + 43 + properties: 44 + reg: 45 + maxItems: 1 46 + description: 47 + Downstream port ID 48 + 49 + required: 50 + - "#address-cells" 51 + - "#size-cells" 52 + - reg 53 + 54 + unevaluatedProperties: false 55 + 56 + required: 57 + - compatible 58 + - reg 59 + - gpio-controller 60 + - "#gpio-cells" 61 + - "#address-cells" 62 + - "#size-cells" 63 + 64 + unevaluatedProperties: false 65 + 66 + examples: 67 + - | 68 + i2c { 69 + #address-cells = <1>; 70 + #size-cells = <0>; 71 + 72 + i2c-atr@f { 73 + compatible = "ti,fpc202"; 74 + reg = <0xf>; 75 + #address-cells = <1>; 76 + #size-cells = <0>; 77 + 78 + gpio-controller; 79 + #gpio-cells = <2>; 80 + 81 + i2c@0 { 82 + #address-cells = <1>; 83 + #size-cells = <0>; 84 + reg = <0>; 85 + }; 86 + 87 + i2c@1 { 88 + #address-cells = <1>; 89 + #size-cells = <0>; 90 + reg = <1>; 91 + }; 92 + }; 93 + }; 94 + ...
+6
MAINTAINERS
··· 24206 24206 F: drivers/mmc/host/tifm_sd.c 24207 24207 F: include/linux/tifm.h 24208 24208 24209 + TI FPC202 DUAL PORT CONTROLLER 24210 + M: Romain Gantois <romain.gantois@bootlin.com> 24211 + L: linux-kernel@vger.kernel.org 24212 + S: Maintained 24213 + F: Documentation/devicetree/bindings/misc/ti,fpc202.yaml 24214 + 24209 24215 TI FPD-LINK DRIVERS 24210 24216 M: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> 24211 24217 L: linux-media@vger.kernel.org