Documentation/devicetree/bindings/ata/intel,ixp4xx-compact-flash.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/ata/intel,ixp4xx-compact-flash.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/ata/intel,ixp4xx-compact-flash.yaml
Extension
.yaml
Size
1772 bytes
Lines
63
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.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/ata/intel,ixp4xx-compact-flash.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Intel IXP4xx CompactFlash Card Controller

maintainers:
  - Linus Walleij <linusw@kernel.org>

description: |
  The IXP4xx network processors have a CompactFlash interface that presents
  a CompactFlash card to the system as a true IDE (parallel ATA) device. The
  device is always connected to the expansion bus of the IXP4xx SoCs using one
  or two chip select areas and address translating logic on the board. The
  node must be placed inside a chip select node on the IXP4xx expansion bus.

properties:
  compatible:
    const: intel,ixp4xx-compact-flash

  reg:
    items:
      - description: Command interface registers
      - description: Control interface registers

  interrupts:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts

allOf:
  - $ref: pata-common.yaml#
  - $ref: /schemas/memory-controllers/intel,ixp4xx-expansion-peripheral-props.yaml#

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

    bus@c4000000 {
      compatible = "intel,ixp43x-expansion-bus-controller", "syscon";
      reg = <0xc4000000 0x1000>;
      native-endian;
      #address-cells = <2>;
      #size-cells = <1>;
      ranges = <0 0x0 0x50000000 0x01000000>, <1 0x0 0x51000000 0x01000000>;
      dma-ranges = <0 0x0 0x50000000 0x01000000>, <1 0x0 0x51000000 0x01000000>;
      ide@1,0 {
        compatible = "intel,ixp4xx-compact-flash";
        reg = <1 0x00000000 0x1000>, <1 0x00040000 0x1000>;
        interrupt-parent = <&gpio0>;
        interrupts = <12 IRQ_TYPE_EDGE_RISING>;
      };
    };

...

Annotation

Implementation Notes