Documentation/devicetree/bindings/gpio/gpio-mxs.yaml
Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/gpio/gpio-mxs.yaml
File Facts
- System
- Linux kernel
- Corpus path
Documentation/devicetree/bindings/gpio/gpio-mxs.yaml- Extension
.yaml- Size
- 5408 bytes
- Lines
- 207
- 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/gpio/gpio-mxs.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Freescale MXS GPIO controller
maintainers:
- Shawn Guo <shawnguo@kernel.org>
description: |
The Freescale MXS GPIO controller is part of MXS PIN controller.
The GPIOs are organized in port/bank, each port consists of 32 GPIOs.
As the GPIO controller is embedded in the PIN controller and all the
GPIO ports share the same IO space with PIN controller, the GPIO node
will be represented as sub-nodes of MXS pinctrl node.
properties:
compatible:
items:
- enum:
- fsl,imx23-pinctrl
- fsl,imx28-pinctrl
# Over 10 years old devices, driver use simple-bus to probe child gpio
# Devices. Keep it as it to be compatible existed dts files.
- const: simple-bus
'#address-cells':
const: 1
'#size-cells':
const: 0
reg:
maxItems: 1
patternProperties:
'^(?!gpio@)[^@]+@[0-9]+$':
type: object
properties:
fsl,pinmux-ids:
$ref: /schemas/types.yaml#/definitions/uint32-array
description: |
An integer array. Each integer in the array specify a pin
with given mux function, with bank, pin and mux packed as below.
[15..12] : bank number
[11..4] : pin number
[3..0] : mux selection
This integer with mux selection packed is used as an entity by both group
and config nodes to identify a pin. The mux selection in the integer takes
effects only on group node, and will get ignored by driver with config node,
since config node is only meant to set up pin configurations.
Valid values for these integers are listed below.
reg:
items:
- description: |
pin group index. NOTE: it is supposed wrong use reg property
here. But it is over 10 years devices. Just keep it as it.
fsl,drive-strength:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [0, 1, 2, 3]
description: |
0: MXS_DRIVE_4mA
1: MXS_DRIVE_8mA
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.