new file mode 100644
@@ -0,0 +1,59 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/phy/realtek,rtl8380m-serdes.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Realtek Otto SerDes controller
+
+maintainers:
+ - Markus Stockhausen <markus.stockhausen@gmx.de>
+
+description:
+ The MIPS based Realtek Switch SoCs of the Realtek RTL838x, RTL839x, RTL930x
+ and RTL931x series have multiple SerDes built in. They are linked to single,
+ quad or octa PHYs like the RTL8218B, RTL8218D or RTL8214FC and are one of
+ the integral part of the up-to-52-port switch architecture. Although these
+ SerDes controllers have common basics they are designed differently in the
+ SoC families.
+
+properties:
+ compatible:
+ enum:
+ - realtek,rtl8380m-serdes
+ - realtek,rtl8392m-serdes
+ - realtek,rtl9302b-serdes
+ - realtek,rtl9311-serdes
+
+ reg:
+ maxItems: 1
+
+ "#phy-cells":
+ const: 4
+ description:
+ The first number defines the SerDes to use. The second number a linked
+ SerDes. E.g. if a octa 1G PHY is attached to two QSGMII SerDes. The third
+ number is the first switch port this SerDes is working for, the fourth
+ number is the last switch port the SerDes is working for.
+
+ firmware-name:
+ maxItems: 1
+ description:
+ If present, name (or relative path) of the file within the firmware
+ search path containing the firmware image to patch the SerDes.
+
+required:
+ - compatible
+ - reg
+ - "#phy-cells"
+
+additionalProperties: false
+
+examples:
+ - |
+ serdes: phy@1b0003b0 {
+ compatible = "realtek,rtl9302b-serdes";
+ reg = <0x1b0003b0 0x8>;
+ firmware-name = "zyxel-xgs1210-12-serdes.fw";
+ #phy-cells = <4>;
+ };