Commit fa340050 authored by Rafał Miłecki's avatar Rafał Miłecki Committed by Vinod Koul
Browse files

dt-bindings: dma: convert MediaTek High-Speed controller to the json-schema



This helps validating DTS files. Introduced changes:
1. Adjusted "reg" in example
2. Added includes to example

Signed-off-by: default avatarRafał Miłecki <rafal@milecki.pl>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240213063919.20196-1-zajec5@gmail.com


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent cf497f35
Loading
Loading
Loading
Loading
+63 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/mediatek,mt7622-hsdma.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek High-Speed DMA Controller

maintainers:
  - Sean Wang <sean.wang@mediatek.com>

allOf:
  - $ref: dma-controller.yaml#

properties:
  compatible:
    enum:
      - mediatek,mt7622-hsdma
      - mediatek,mt7623-hsdma

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    const: hsdma

  power-domains:
    maxItems: 1

  "#dma-cells":
    description: Channel number
    const: 1

required:
  - reg
  - interrupts
  - clocks
  - clock-names
  - power-domains

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/mt2701-clk.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/power/mt2701-power.h>

    dma-controller@1b007000 {
        compatible = "mediatek,mt7623-hsdma";
        reg = <0x1b007000 0x1000>;
        interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_LOW>;
        clocks = <&ethsys CLK_ETHSYS_HSDMA>;
        clock-names = "hsdma";
        power-domains = <&scpsys MT2701_POWER_DOMAIN_ETH>;
        #dma-cells = <1>;
    };
+0 −33
Original line number Diff line number Diff line
MediaTek High-Speed DMA Controller
==================================

This device follows the generic DMA bindings defined in dma/dma.txt.

Required properties:

- compatible:	Must be one of
		  "mediatek,mt7622-hsdma": for MT7622 SoC
		  "mediatek,mt7623-hsdma": for MT7623 SoC
- reg:		Should contain the register's base address and length.
- interrupts:	Should contain a reference to the interrupt used by this
		device.
- clocks:	Should be the clock specifiers corresponding to the entry in
		clock-names property.
- clock-names:	Should contain "hsdma" entries.
- power-domains: Phandle to the power domain that the device is part of
- #dma-cells: 	The length of the DMA specifier, must be <1>. This one cell
		in dmas property of a client device represents the channel
		number.
Example:

        hsdma: dma-controller@1b007000 {
		compatible = "mediatek,mt7623-hsdma";
		reg = <0 0x1b007000 0 0x1000>;
		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_LOW>;
		clocks = <&ethsys CLK_ETHSYS_HSDMA>;
		clock-names = "hsdma";
		power-domains = <&scpsys MT2701_POWER_DOMAIN_ETH>;
		#dma-cells = <1>;
	};

DMA clients must use the format described in dma/dma.txt file.