linux-loongson/Documentation/devicetree/bindings/spi/marvell,mmp2-ssp.yaml
Rob Herring (Arm) 5bcbbaf074
spi: dt-bindings: marvell,mmp2-ssp: Merge PXA SSP into schema
The Marvell PXA SSP block is the same or similiar to the MMP2 variant.
The only difference in the binding is the PXA version supports DMA (and
that's probably a binding difference rather than an actual h/w
difference).

The old binding didn't belong under 'serial' as it is not a UART. The
SSP block also supports audio devices, so 'spi' is not a perfect fit
either. As the existing schema for MMP2 is there, just leave things
as-is.

The examples in the old text binding were pretty out of sync with
reality. 'clock-names' and 'ssp-id' aren't documented nor used.

Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://msgid.link/r/20240522132859.3146335-1-robh@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2024-05-27 01:33:37 +01:00

86 lines
1.6 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright 2019,2020 Lubomir Rintel <lkundrak@v3.sk>
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/marvell,mmp2-ssp.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: PXA2xx SSP SPI Controller
maintainers:
- Lubomir Rintel <lkundrak@v3.sk>
properties:
compatible:
enum:
- marvell,mmp2-ssp
- mrvl,ce4100-ssp
- mvrl,pxa168-ssp
- mrvl,pxa25x-ssp
- mvrl,pxa25x-nssp
- mrvl,pxa27x-ssp
- mrvl,pxa3xx-ssp
- mrvl,pxa910-ssp
interrupts:
maxItems: 1
reg:
maxItems: 1
clocks:
maxItems: 1
dmas:
items:
- description: Receive DMA
- description: Transmit DMA
dma-names:
items:
- const: rx
- const: tx
ready-gpios:
description: |
GPIO used to signal a SPI master that the FIFO is filled and we're
ready to service a transfer. Only useful in slave mode.
maxItems: 1
required:
- compatible
- reg
- interrupts
- clocks
dependencies:
ready-gpios: [ spi-slave ]
allOf:
- $ref: spi-controller.yaml#
- if:
properties:
compatible:
contains:
const: marvell,mmp2-ssp
then:
properties:
dmas: false
dma-names: false
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/clock/marvell,mmp2.h>
spi@d4035000 {
compatible = "marvell,mmp2-ssp";
#address-cells = <1>;
#size-cells = <0>;
reg = <0xd4035000 0x1000>;
clocks = <&soc_clocks MMP2_CLK_SSP0>;
interrupts = <0>;
};
...