From: Val Packett <val@packett.cool>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Bjorn Andersson <andersson@kernel.org>
Cc: Val Packett <val@packett.cool>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Luca Weiss <luca.weiss@fairphone.com>,
~postmarketos/upstreaming@lists.sr.ht,
phone-devel@vger.kernel.org, linux-usb@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Subject: [PATCH v2 1/2] dt-bindings: usb: fsa4480: Add an optional audio port/endpoint
Date: Tue, 20 Oct 2026 05:12:53 -0300 [thread overview]
Message-ID: <20261020081343.1507986-2-val@packett.cool> (raw)
In-Reply-To: <20261020081343.1507986-1-val@packett.cool>
The fsa4480 mux is physically connected not only to a Type-C port
controller, but also to an audio codec which has to be notified when
an analog audio accessory has been plugged in.
Describe a second port intended for the codec. Keep it optional to make
sure existing device trees do still validate.
Signed-off-by: Val Packett <val@packett.cool>
---
.../devicetree/bindings/usb/fcs,fsa4480.yaml | 94 +++++++++++++------
1 file changed, 66 insertions(+), 28 deletions(-)
diff --git a/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml b/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
index 89b1fb90aeeb..ee00c7ce0c50 100644
--- a/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
+++ b/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml
@@ -9,31 +9,11 @@ title: ON Semiconductor Analog Audio Switch
maintainers:
- Bjorn Andersson <bjorn.andersson@linaro.org>
-properties:
- compatible:
- oneOf:
- - const: fcs,fsa4480
- - items:
- - enum:
- - ocs,ocp96011
- - const: fcs,fsa4480
-
- reg:
- maxItems: 1
-
- interrupts:
- maxItems: 1
-
- vcc-supply:
- description: power supply (2.7V-5.5V)
-
- mode-switch: true
- orientation-switch: true
-
- port:
+$defs:
+ controller-port:
$ref: /schemas/graph.yaml#/$defs/port-base
description:
- A port node to link the FSA4480 to a TypeC controller for the purpose of
+ A port node to link the FSA4480 to a Type-C controller for the purpose of
handling altmode muxing and orientation switching.
unevaluatedProperties: false
@@ -69,14 +49,57 @@ properties:
- AUX+ connected to SBU2
- AUX- connected to SBU1
+properties:
+ compatible:
+ oneOf:
+ - const: fcs,fsa4480
+ - items:
+ - enum:
+ - ocs,ocp96011
+ - const: fcs,fsa4480
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ vcc-supply:
+ description: power supply (2.7V-5.5V)
+
+ mode-switch: true
+ orientation-switch: true
+
+ port:
+ $ref: "#/$defs/controller-port"
+
+ ports:
+ $ref: /schemas/graph.yaml#/properties/ports
+
+ properties:
+ port@0:
+ $ref: "#/$defs/controller-port"
+ port@1:
+ $ref: /schemas/graph.yaml#/properties/port
+ description:
+ A port node to link the FSA4480 to an audio codec for the purpose of
+ handling Audio Accessory Mode muxing and orientation switching.
+
+ required:
+ - port@0
+
required:
- compatible
- reg
- - port
allOf:
- $ref: usb-switch.yaml#
- - $ref: usb-switch-ports.yaml#
+
+oneOf:
+ - required:
+ - port
+ - required:
+ - ports
additionalProperties: false
@@ -98,9 +121,24 @@ examples:
mode-switch;
orientation-switch;
- port {
- fsa4480_ept: endpoint {
- remote-endpoint = <&typec_controller>;
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ fsa4480_sbu_mux: endpoint {
+ remote-endpoint = <&typec_controller>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ fsa4480_audio: endpoint {
+ remote-endpoint = <&audio_codec>;
+ };
};
};
};
--
2.55.0
next prev parent reply other threads:[~2026-10-20 8:14 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-20 8:12 [PATCH v2 0/2] usb: typec: fsa4480: Support reporting hotplug events to a codec Val Packett
2026-10-20 8:12 ` Val Packett [this message]
2026-10-20 8:12 ` [PATCH v2 2/2] usb: typec: fsa4480: Report switch & mux events to codec Val Packett
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=20261020081343.1507986-2-val@packett.cool \
--to=val@packett.cool \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=luca.weiss@fairphone.com \
--cc=neil.armstrong@linaro.org \
--cc=phone-devel@vger.kernel.org \
--cc=robh@kernel.org \
--cc=~postmarketos/upstreaming@lists.sr.ht \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®