Commit 69609a91 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull spi updates from Mark Brown:
 "The biggest single thing in the diffstat here is a massive overhaul of
  the PXA2xx driver from Andy Shevchenko (the IP is still in use on
  modern Intel systems), though we also have quite a lot of core work as
  well:

   - Better support for mixing native and GPIO chip selects also from
     Andy.

   - Support for devices with multiple chip selects from Sebastian
     Reichel.

   - Helper for polling status registers in spi-mem from Patrice
     Chotard.

   - Support for Renesas RZ/N1 and Rockchip RV1126"

* tag 'spi-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (86 commits)
  spi: core: add dma_map_dev for dma device
  spi: convert Xilinx Zynq UltraScale+ MPSoC GQSPI bindings to YAML
  spi: Fix self assignment issue with ancillary->mode
  spi: spi-sh-msiof: : use proper DMAENGINE API for termination
  spi: spi-rspi: : use proper DMAENGINE API for termination
  spi: spi-rockchip: add description for rv1126
  spi: rockchip: Support SPI_CS_HIGH
  spi: rockchip: Support cs-gpio
  spi: rockchip: Wait for STB status in slave mode tx_xfer
  spi: rockchip: Set rx_fifo interrupt waterline base on transfer item
  spi: rockchip: add compatible string for rv1126
  spi: spi-sun6i: Fix chipselect/clock bug
  spi: dt-bindings: support devices with multiple chipselects
  spi: add ancillary device support
  spi: xilinx: convert to yaml
  spi: convert Cadence SPI bindings to YAML
  spi: stm32-qspi: Remove unused qspi field of struct stm32_qspi_flash
  spi: add of_device_uevent_modalias support
  spi: meson-spicc: fix memory leak in meson_spicc_probe
  spi: meson-spicc: fix a wrong goto jump for avoiding memory leak.
  ...
parents c10383b3 1bee1ecf
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
Renesas RZ/N1 SPI Controller

This controller is based on the Synopsys DW Synchronous Serial Interface and
inherits all properties defined in snps,dw-apb-ssi.txt except for the
compatible property.

Required properties:
- compatible : The device specific string followed by the generic RZ/N1 string.
   Therefore it must be one of:
   "renesas,r9a06g032-spi", "renesas,rzn1-spi"
   "renesas,r9a06g033-spi", "renesas,rzn1-spi"
+6 −0
Original line number Diff line number Diff line
@@ -67,6 +67,12 @@ properties:
        const: baikal,bt1-sys-ssi
      - description: Canaan Kendryte K210 SoS SPI Controller
        const: canaan,k210-spi
      - description: Renesas RZ/N1 SPI Controller
        items:
          - enum:
              - renesas,r9a06g032-spi # RZ/N1D
              - renesas,r9a06g033-spi # RZ/N1S
          - const: renesas,rzn1-spi   # RZ/N1

  reg:
    minItems: 1
+0 −30
Original line number Diff line number Diff line
Cadence SPI controller Device Tree Bindings
-------------------------------------------

Required properties:
- compatible		: Should be "cdns,spi-r1p6" or "xlnx,zynq-spi-r1p6".
- reg			: Physical base address and size of SPI registers map.
- interrupts		: Property with a value describing the interrupt
			  number.
- clock-names		: List of input clock names - "ref_clk", "pclk"
			  (See clock bindings for details).
- clocks		: Clock phandles (see clock bindings for details).

Optional properties:
- num-cs		: Number of chip selects used.
			  If a decoder is used, this will be the number of
			  chip selects after the decoder.
- is-decoded-cs		: Flag to indicate whether decoder is used or not.

Example:

	spi@e0007000 {
		compatible = "xlnx,zynq-spi-r1p6";
		clock-names = "ref_clk", "pclk";
		clocks = <&clkc 26>, <&clkc 35>;
		interrupt-parent = <&intc>;
		interrupts = <0 49 4>;
		num-cs = <4>;
		is-decoded-cs = <0>;
		reg = <0xe0007000 0x1000>;
	} ;
+66 −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/spi/spi-cadence.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Cadence SPI controller Device Tree Bindings

maintainers:
  - Michal Simek <michal.simek@xilinx.com>

allOf:
  - $ref: "spi-controller.yaml#"

properties:
  compatible:
    enum:
      - cdns,spi-r1p6
      - xlnx,zynq-spi-r1p6

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clock-names:
    items:
      - const: ref_clk
      - const: pclk

  clocks:
    maxItems: 2

  num-cs:
    description: |
      Number of chip selects used. If a decoder is used,
      this will be the number of chip selects after the
      decoder.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 1
    maximum: 4
    default: 4

  is-decoded-cs:
    description: |
      Flag to indicate whether decoder is used or not.
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [ 0, 1 ]
    default: 0

unevaluatedProperties: false

examples:
  - |
    spi@e0007000 {
      compatible = "xlnx,zynq-spi-r1p6";
      clock-names = "ref_clk", "pclk";
      clocks = <&clkc 26>, <&clkc 35>;
      interrupt-parent = <&intc>;
      interrupts = <0 49 4>;
      num-cs = <4>;
      is-decoded-cs = <0>;
      reg = <0xe0007000 0x1000>;
    };
...
+5 −2
Original line number Diff line number Diff line
@@ -114,6 +114,9 @@ patternProperties:
          Compatible of the SPI device.

      reg:
        minItems: 1
        maxItems: 256
        items:
          minimum: 0
          maximum: 256
        description:
Loading