forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'spi-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git…
…/broonie/spi Pull spi updates from Mark Brown: "This has been a very active release for the DesignWare driver in particular - after a long period of inactivity we have had a lot of people actively working on it for unrelated reasons this cycle with some of that work still not landed. Otherwise it's been fairly quiet for the subsystem. Highlights include: - Lots of performance improvements and fixes for the DesignWare driver from Serge Semin, Andy Shevchenko, Wan Ahmad Zainie, Clement Leger, Dinh Nguyen and Jarkko Nikula. - Support for octal mode transfers in spidev. - Slave mode support for the Rockchip drivers. - Support for AMD controllers, Broadcom mspi and Raspberry Pi 4, and Intel Elkhart Lake" * tag 'spi-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (125 commits) spi: spi-fsl-dspi: fix native data copy spi: Convert DW SPI binding to DT schema spi: dw: Refactor mid_spi_dma_setup() to separate DMA and IRQ config spi: dw: Make DMA request line assignments explicit for Intel Medfield spi: bcm2835: Remove shared interrupt support dt-bindings: snps,dw-apb-ssi: add optional reset property spi: dw: add reset control spi: bcm2835: Enable shared interrupt support spi: bcm2835: Implement shutdown callback spi: dw: Use regset32 DebugFS method to create regdump file spi: dw: Add DMA support to the DW SPI MMIO driver spi: dw: Cleanup generic DW DMA code namings spi: dw: Add DW SPI DMA/PCI/MMIO dependency on the DW SPI core spi: dw: Remove DW DMA code dependency from DW_DMAC_PCI spi: dw: Move Non-DMA code to the DW PCIe-SPI driver spi: dw: Add core suffix to the DW APB SSI core source file spi: dw: Fix Rx-only DMA transfers spi: dw: Use DMA max burst to set the request thresholds spi: dw: Parameterize the DMA Rx/Tx burst length spi: dw: Add SPI Rx-done wait method to DMA-based transfer ...
- Loading branch information
Showing
55 changed files
with
2,082 additions
and
941 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
36 changes: 36 additions & 0 deletions
36
Documentation/devicetree/bindings/spi/mikrotik,rb4xx-spi.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/spi/mikrotik,rb4xx-spi.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: MikroTik RB4xx series SPI master | ||
|
||
maintainers: | ||
- Gabor Juhos <[email protected]> | ||
- Bert Vermeulen <[email protected]> | ||
|
||
allOf: | ||
- $ref: "spi-controller.yaml#" | ||
|
||
properties: | ||
compatible: | ||
const: mikrotik,rb4xx-spi | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
examples: | ||
- | | ||
spi: spi@1f000000 { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
compatible = "mikrotik,rb4xx-spi"; | ||
reg = <0x1f000000 0x10>; | ||
}; | ||
... |
144 changes: 144 additions & 0 deletions
144
Documentation/devicetree/bindings/spi/renesas,rspi.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/spi/renesas,rspi.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Renesas (Quad) Serial Peripheral Interface (RSPI/QSPI) | ||
|
||
maintainers: | ||
- Geert Uytterhoeven <[email protected]> | ||
|
||
properties: | ||
compatible: | ||
oneOf: | ||
- items: | ||
- enum: | ||
- renesas,rspi-sh7757 # SH7757 | ||
- const: renesas,rspi # Legacy SH | ||
|
||
- items: | ||
- enum: | ||
- renesas,rspi-r7s72100 # RZ/A1H | ||
- renesas,rspi-r7s9210 # RZ/A2 | ||
- const: renesas,rspi-rz # RZ/A | ||
|
||
- items: | ||
- enum: | ||
- renesas,qspi-r8a7743 # RZ/G1M | ||
- renesas,qspi-r8a7744 # RZ/G1N | ||
- renesas,qspi-r8a7745 # RZ/G1E | ||
- renesas,qspi-r8a77470 # RZ/G1C | ||
- renesas,qspi-r8a7790 # R-Car H2 | ||
- renesas,qspi-r8a7791 # R-Car M2-W | ||
- renesas,qspi-r8a7792 # R-Car V2H | ||
- renesas,qspi-r8a7793 # R-Car M2-N | ||
- renesas,qspi-r8a7794 # R-Car E2 | ||
- const: renesas,qspi # R-Car Gen2 and RZ/G1 | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
oneOf: | ||
- items: | ||
- description: A combined interrupt | ||
- items: | ||
- description: Error interrupt (SPEI) | ||
- description: Receive Interrupt (SPRI) | ||
- description: Transmit Interrupt (SPTI) | ||
|
||
interrupt-names: | ||
oneOf: | ||
- items: | ||
- const: mux | ||
- items: | ||
- const: error | ||
- const: rx | ||
- const: tx | ||
|
||
clocks: | ||
maxItems: 1 | ||
|
||
power-domains: | ||
maxItems: 1 | ||
|
||
resets: | ||
maxItems: 1 | ||
|
||
dmas: | ||
description: | ||
Must contain a list of pairs of references to DMA specifiers, one for | ||
transmission, and one for reception. | ||
|
||
dma-names: | ||
minItems: 2 | ||
maxItems: 4 | ||
items: | ||
enum: | ||
- tx | ||
- rx | ||
|
||
num-cs: | ||
description: | | ||
Total number of native chip selects. | ||
Hardware limitations related to chip selects: | ||
- When using GPIO chip selects, at least one native chip select must | ||
be left unused, as it will be driven anyway. | ||
minimum: 1 | ||
maximum: 2 | ||
default: 1 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupts | ||
- clocks | ||
- power-domains | ||
- '#address-cells' | ||
- '#size-cells' | ||
|
||
allOf: | ||
- $ref: spi-controller.yaml# | ||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- renesas,rspi-rz | ||
then: | ||
properties: | ||
interrupts: | ||
minItems: 3 | ||
required: | ||
- interrupt-names | ||
|
||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- renesas,qspi | ||
then: | ||
required: | ||
- resets | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/clock/r8a7791-cpg-mssr.h> | ||
#include <dt-bindings/interrupt-controller/arm-gic.h> | ||
#include <dt-bindings/power/r8a7791-sysc.h> | ||
qspi: spi@e6b10000 { | ||
compatible = "renesas,qspi-r8a7791", "renesas,qspi"; | ||
reg = <0xe6b10000 0x2c>; | ||
interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; | ||
clocks = <&cpg CPG_MOD 917>; | ||
dmas = <&dmac0 0x17>, <&dmac0 0x18>, <&dmac1 0x17>, <&dmac1 0x18>; | ||
dma-names = "tx", "rx", "tx", "rx"; | ||
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>; | ||
resets = <&cpg 917>; | ||
num-cs = <1>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
}; |
This file was deleted.
Oops, something went wrong.
133 changes: 133 additions & 0 deletions
133
Documentation/devicetree/bindings/spi/snps,dw-apb-ssi.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,133 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/spi/snps,dw-apb-ssi.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Synopsys DesignWare AMBA 2.0 Synchronous Serial Interface | ||
|
||
maintainers: | ||
- Mark Brown <[email protected]> | ||
|
||
allOf: | ||
- $ref: "spi-controller.yaml#" | ||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- mscc,ocelot-spi | ||
- mscc,jaguar2-spi | ||
then: | ||
properties: | ||
reg: | ||
minItems: 2 | ||
|
||
properties: | ||
compatible: | ||
oneOf: | ||
- description: Generic DW SPI Controller | ||
enum: | ||
- snps,dw-apb-ssi | ||
- snps,dwc-ssi-1.01a | ||
- description: Microsemi Ocelot/Jaguar2 SoC SPI Controller | ||
items: | ||
- enum: | ||
- mscc,ocelot-spi | ||
- mscc,jaguar2-spi | ||
- const: snps,dw-apb-ssi | ||
- description: Amazon Alpine SPI Controller | ||
const: amazon,alpine-dw-apb-ssi | ||
- description: Renesas RZ/N1 SPI Controller | ||
items: | ||
- const: renesas,rzn1-spi | ||
- const: snps,dw-apb-ssi | ||
- description: Intel Keem Bay SPI Controller | ||
const: intel,keembay-ssi | ||
|
||
reg: | ||
minItems: 1 | ||
items: | ||
- description: DW APB SSI controller memory mapped registers | ||
- description: SPI MST region map | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
clocks: | ||
minItems: 1 | ||
items: | ||
- description: SPI Controller reference clock source | ||
- description: APB interface clock source | ||
|
||
clock-names: | ||
minItems: 1 | ||
items: | ||
- const: ssi_clk | ||
- const: pclk | ||
|
||
resets: | ||
maxItems: 1 | ||
|
||
reset-names: | ||
const: spi | ||
|
||
reg-io-width: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: I/O register width (in bytes) implemented by this device | ||
default: 4 | ||
enum: [ 2, 4 ] | ||
|
||
num-cs: | ||
default: 4 | ||
minimum: 1 | ||
maximum: 4 | ||
|
||
dmas: | ||
items: | ||
- description: TX DMA Channel | ||
- description: RX DMA Channel | ||
|
||
dma-names: | ||
items: | ||
- const: tx | ||
- const: rx | ||
|
||
patternProperties: | ||
"^.*@[0-9a-f]+$": | ||
type: object | ||
properties: | ||
reg: | ||
minimum: 0 | ||
maximum: 3 | ||
|
||
spi-rx-bus-width: | ||
const: 1 | ||
|
||
spi-tx-bus-width: | ||
const: 1 | ||
|
||
unevaluatedProperties: false | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- "#address-cells" | ||
- "#size-cells" | ||
- interrupts | ||
- clocks | ||
|
||
examples: | ||
- | | ||
spi@fff00000 { | ||
compatible = "snps,dw-apb-ssi"; | ||
reg = <0xfff00000 0x1000>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
interrupts = <0 154 4>; | ||
clocks = <&spi_m_clk>; | ||
num-cs = <2>; | ||
cs-gpios = <&gpio0 13 0>, | ||
<&gpio0 14 0>; | ||
}; | ||
... |
Oops, something went wrong.