Documentation/devicetree/bindings/net/mdio-mux-multiplexer.yaml
Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/net/mdio-mux-multiplexer.yaml
File Facts
- System
- Linux kernel
- Corpus path
Documentation/devicetree/bindings/net/mdio-mux-multiplexer.yaml- Extension
.yaml- Size
- 1900 bytes
- Lines
- 82
- Domain
- Support Tooling And Documentation
- Bucket
- Documentation
- Inferred role
- Support Tooling And Documentation: configuration, schema, or hardware description
- Status
- atlas-only
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/mdio-mux-multiplexer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Properties for an MDIO bus multiplexer consumer device
maintainers:
- Andrew Lunn <andrew@lunn.ch>
description: |+
This is a special case of MDIO mux when MDIO mux is defined as a consumer
of a mux producer device. The mux producer can be of any type like mmio mux
producer, gpio mux producer or generic register based mux producer.
allOf:
- $ref: /schemas/net/mdio-mux.yaml#
properties:
compatible:
const: mdio-mux-multiplexer
mux-controls:
maxItems: 1
required:
- compatible
- mux-controls
unevaluatedProperties: false
examples:
- |
mux: mux-controller { // Mux Producer
compatible = "reg-mux";
#mux-control-cells = <1>;
mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
<0x54 0x07>; /* 1: reg 0x54, bits 2:0 */
};
mdio-mux-1 { // Mux consumer
compatible = "mdio-mux-multiplexer";
mux-controls = <&mux 0>;
mdio-parent-bus = <&emdio1>;
#address-cells = <1>;
#size-cells = <0>;
mdio@0 {
reg = <0x0>;
#address-cells = <1>;
#size-cells = <0>;
};
mdio@8 {
reg = <0x8>;
#address-cells = <1>;
#size-cells = <0>;
};
};
mdio-mux-2 { // Mux consumer
compatible = "mdio-mux-multiplexer";
mux-controls = <&mux 1>;
mdio-parent-bus = <&emdio2>;
#address-cells = <1>;
#size-cells = <0>;
mdio@0 {
reg = <0x0>;
Annotation
- Atlas domain: Support Tooling And Documentation / Documentation.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.