Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

authored by

Rob Herring (Arm) and committed by
Mark Brown
5bcbbaf0 6ecdb0aa

+31 -68
-64
Documentation/devicetree/bindings/serial/mrvl,pxa-ssp.txt
··· 1 - Device tree bindings for Marvell PXA SSP ports 2 - 3 - Required properties: 4 - 5 - - compatible: Must be one of 6 - mrvl,pxa25x-ssp 7 - mvrl,pxa25x-nssp 8 - mrvl,pxa27x-ssp 9 - mrvl,pxa3xx-ssp 10 - mvrl,pxa168-ssp 11 - mrvl,pxa910-ssp 12 - mrvl,ce4100-ssp 13 - 14 - - reg: The memory base 15 - - dmas: Two dma phandles, one for rx, one for tx 16 - - dma-names: Must be "rx", "tx" 17 - 18 - 19 - Example for PXA3xx: 20 - 21 - ssp0: ssp@41000000 { 22 - compatible = "mrvl,pxa3xx-ssp"; 23 - reg = <0x41000000 0x40>; 24 - ssp-id = <1>; 25 - interrupts = <24>; 26 - clock-names = "pxa27x-ssp.0"; 27 - dmas = <&dma 13 28 - &dma 14>; 29 - dma-names = "rx", "tx"; 30 - }; 31 - 32 - ssp1: ssp@41700000 { 33 - compatible = "mrvl,pxa3xx-ssp"; 34 - reg = <0x41700000 0x40>; 35 - ssp-id = <2>; 36 - interrupts = <16>; 37 - clock-names = "pxa27x-ssp.1"; 38 - dmas = <&dma 15 39 - &dma 16>; 40 - dma-names = "rx", "tx"; 41 - }; 42 - 43 - ssp2: ssp@41900000 { 44 - compatibl3 = "mrvl,pxa3xx-ssp"; 45 - reg = <0x41900000 0x40>; 46 - ssp-id = <3>; 47 - interrupts = <0>; 48 - clock-names = "pxa27x-ssp.2"; 49 - dmas = <&dma 66 50 - &dma 67>; 51 - dma-names = "rx", "tx"; 52 - }; 53 - 54 - ssp3: ssp@41a00000 { 55 - compatible = "mrvl,pxa3xx-ssp"; 56 - reg = <0x41a00000 0x40>; 57 - ssp-id = <4>; 58 - interrupts = <13>; 59 - clock-names = "pxa27x-ssp.3"; 60 - dmas = <&dma 2 61 - &dma 3>; 62 - dma-names = "rx", "tx"; 63 - }; 64 -
+31 -4
Documentation/devicetree/bindings/spi/marvell,mmp2-ssp.yaml
··· 10 10 maintainers: 11 11 - Lubomir Rintel <lkundrak@v3.sk> 12 12 13 - allOf: 14 - - $ref: spi-controller.yaml# 15 - 16 13 properties: 17 14 compatible: 18 - const: marvell,mmp2-ssp 15 + enum: 16 + - marvell,mmp2-ssp 17 + - mrvl,ce4100-ssp 18 + - mvrl,pxa168-ssp 19 + - mrvl,pxa25x-ssp 20 + - mvrl,pxa25x-nssp 21 + - mrvl,pxa27x-ssp 22 + - mrvl,pxa3xx-ssp 23 + - mrvl,pxa910-ssp 19 24 20 25 interrupts: 21 26 maxItems: 1 ··· 30 25 31 26 clocks: 32 27 maxItems: 1 28 + 29 + dmas: 30 + items: 31 + - description: Receive DMA 32 + - description: Transmit DMA 33 + 34 + dma-names: 35 + items: 36 + - const: rx 37 + - const: tx 33 38 34 39 ready-gpios: 35 40 description: | ··· 55 40 56 41 dependencies: 57 42 ready-gpios: [ spi-slave ] 43 + 44 + allOf: 45 + - $ref: spi-controller.yaml# 46 + - if: 47 + properties: 48 + compatible: 49 + contains: 50 + const: marvell,mmp2-ssp 51 + then: 52 + properties: 53 + dmas: false 54 + dma-names: false 58 55 59 56 unevaluatedProperties: false 60 57