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

dt-bindings: usb: Add binding for fcs,fsa4480

The Fairchild/ON Semiconductor FSA4480 Analog Audio switch is used in
USB Type-C configurations for muxing analog audio onto the USB
connector, and as such used to control the SBU signals for altmodes such
as DisplayPort.

Add a binding for this hardware block.

Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220422222351.1297276-7-bjorn.andersson@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Bjorn Andersson and committed by
Greg Kroah-Hartman
01afa882 71793b57

+72
+72
Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: "http://devicetree.org/schemas/usb/fcs,fsa4480.yaml#" 5 + $schema: "http://devicetree.org/meta-schemas/core.yaml#" 6 + 7 + title: ON Semiconductor Analog Audio Switch 8 + 9 + maintainers: 10 + - Bjorn Andersson <bjorn.andersson@linaro.org> 11 + 12 + properties: 13 + compatible: 14 + enum: 15 + - fcs,fsa4480 16 + 17 + reg: 18 + maxItems: 1 19 + 20 + interrupts: 21 + maxItems: 1 22 + 23 + vcc-supply: 24 + description: power supply (2.7V-5.5V) 25 + 26 + mode-switch: 27 + description: Flag the port as possible handle of altmode switching 28 + type: boolean 29 + 30 + orientation-switch: 31 + description: Flag the port as possible handler of orientation switching 32 + type: boolean 33 + 34 + port: 35 + $ref: /schemas/graph.yaml#/properties/port 36 + description: 37 + A port node to link the FSA4480 to a TypeC controller for the purpose of 38 + handling altmode muxing and orientation switching. 39 + 40 + required: 41 + - compatible 42 + - reg 43 + - port 44 + 45 + additionalProperties: false 46 + 47 + examples: 48 + - | 49 + #include <dt-bindings/interrupt-controller/irq.h> 50 + i2c13 { 51 + #address-cells = <1>; 52 + #size-cells = <0>; 53 + 54 + fsa4480@42 { 55 + compatible = "fcs,fsa4480"; 56 + reg = <0x42>; 57 + 58 + interrupts-extended = <&tlmm 2 IRQ_TYPE_LEVEL_LOW>; 59 + 60 + vcc-supply = <&vreg_bob>; 61 + 62 + mode-switch; 63 + orientation-switch; 64 + 65 + port { 66 + fsa4480_ept: endpoint { 67 + remote-endpoint = <&typec_controller>; 68 + }; 69 + }; 70 + }; 71 + }; 72 + ...