Documentation/devicetree/bindings/pci/pci-ep-bus.yaml
Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/pci/pci-ep-bus.yaml
File Facts
- System
- Linux kernel
- Corpus path
Documentation/devicetree/bindings/pci/pci-ep-bus.yaml- Extension
.yaml- Size
- 1633 bytes
- Lines
- 59
- 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-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pci/pci-ep-bus.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Common Properties for PCI MFD EP with Peripherals Addressable from BARs
maintainers:
- A. della Porta <andrea.porta@suse.com>
description:
Define a generic node representing a PCI endpoint which contains several sub-
peripherals. The peripherals can be accessed through one or more BARs.
This common schema is intended to be referenced from device tree bindings and
does not represent a device tree binding by itself.
properties:
'#address-cells':
const: 3
'#size-cells':
const: 2
ranges:
minItems: 1
maxItems: 6
items:
maxItems: 8
additionalItems: true
items:
- maximum: 5 # The BAR number
- const: 0
- const: 0
patternProperties:
'^pci-ep-bus@[0-5]$':
type: object
description:
One node for each BAR used by peripherals contained in the PCI endpoint.
Each node represents a bus on which peripherals are connected.
This allows for some segmentation, e.g., one peripheral is accessible
through BAR0 and another through BAR1, and you don't want the two
peripherals to be able to act on the other BAR. Alternatively, when
different peripherals need to share BARs, you can define only one node
and use a 'ranges' property to map all the used BARs.
additionalProperties: true
properties:
compatible:
const: simple-bus
required:
- compatible
additionalProperties: true
...
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.