Commit ea1c6c59 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull spi updates from Mark Brown:
 "There's one big core change in this release, Jonas Gorski has
  addressed the issues with multiple chip selects which makes things
  more robust and stable. Otherwise there's quite a bit of driver work,
  as well as some new drivers several existing drivers have had quite a
  bit of work done on them.

  Possibly the most interesting thing is the VirtIO driver, this is
  apparently useful for some automotive applications which want to keep
  as small and robust a host system as they can, moving less critical
  functionality into guests.

   - James Clark has done some substantial updates on the Freescale DSPI
     driver, porting in code from the BSP and building onm top of that
     to fix some bugs and increase performance

   - Jonas Gorski has fixed the issues with handling multple chip
     selects, making things more robust and scalable

   - Support for higher performance modes in the NXP FSPI driver from
     Haibo Chen

   - Removal of the obsolete S3C2443 driver, the underlying SoC support
     has been removed from the kernel

   - Support for Amlogic AL113L2, Atmel SAMA7D65 and SAM9x7 and for
     VirtIO controllers"

* tag 'spi-v6.18' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (74 commits)
  spi: ljca: Remove Wentong's e-mail address
  spi: rename SPI_CS_CNT_MAX => SPI_DEVICE_CS_CNT_MAX
  spi: reduce device chip select limit again
  spi: don't check spi_controller::num_chipselect when parsing a dt device
  spi: drop check for validity of device chip selects
  spi: move unused device CS initialization to __spi_add_device()
  spi: keep track of number of chipselects in spi_device
  spi: fix return code when spi device has too many chipselects
  SPI: Add virtio SPI driver
  virtio-spi: Add virtio-spi.h
  virtio: Add ID for virtio SPI
  spi: rpc-if: Add resume support for RZ/G3E
  spi: rpc-if: Drop deprecated SIMPLE_DEV_PM_OPS
  spi: spi-qpic-snand: simplify clock handling by using devm_clk_get_enabled()
  spi: spi-nxp-fspi: Add OCT-DTR mode support
  spi: spi-nxp-fspi: add the support for sample data from DQS pad
  spi: spi-nxp-fspi: Add the DDR LUT command support
  spi: spi-nxp-fspi: set back to dll override mode when clock rate < 100MHz
  spi: spi-nxp-fspi: extract function nxp_fspi_dll_override()
  spi: atmel-quadspi: Add support for sama7d65 QSPI
  ...
parents ad665780 2bfb20b6
Loading
Loading
Loading
Loading
+82 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2025 Amlogic, Inc. All rights reserved
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/amlogic,a4-spifc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: SPI flash controller for Amlogic ARM SoCs

maintainers:
  - Liang Yang <liang.yang@amlogic.com>
  - Feng Chen <feng.chen@amlogic.com>
  - Xianwei Zhao <xianwei.zhao@amlogic.com>

description:
  The Amlogic SPI flash controller is an extended version of the Amlogic NAND
  flash controller. It supports SPI Nor Flash and SPI NAND Flash(where the Host
  ECC HW engine could be enabled).

allOf:
  - $ref: /schemas/spi/spi-controller.yaml#

properties:
  compatible:
    const: amlogic,a4-spifc

  reg:
    maxItems: 1

  clocks:
    items:
      - description: clock apb gate
      - description: clock used for the controller

  clock-names:
    items:
      - const: gate
      - const: core

  interrupts:
    maxItems: 1

  amlogic,rx-adj:
    description:
      Number of clock cycles by which sampling is delayed.
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [0, 1, 2, 3]
    default: 0

required:
  - compatible
  - reg
  - clocks
  - clock-names

unevaluatedProperties: false

examples:
  - |
    sfc0: spi@fe08d000 {
      compatible = "amlogic,a4-spifc";
      reg = <0xfe08d000 0x800>;
      clocks = <&clkc_periphs 31>,
               <&clkc_periphs 102>;
      clock-names = "gate", "core";

      pinctrl-0 = <&spiflash_default>;
      pinctrl-names = "default";

      #address-cells = <1>;
      #size-cells = <0>;

      flash@0 {
          compatible = "spi-nand";
          reg = <0>;
          #address-cells = <1>;
          #size-cells = <1>;
          nand-ecc-engine = <&sfc0>;
          nand-ecc-strength = <8>;
          nand-ecc-step-size = <512>;
      };
    };
+8 −3
Original line number Diff line number Diff line
@@ -31,11 +31,16 @@ properties:
    maxItems: 1

  clock-names:
    contains:
      const: spi_clk
    items:
      - const: spi_clk
      - const: spi_gclk
    minItems: 1

  clocks:
    maxItems: 1
    items:
      - description: Peripheral Bus clock
      - description: Programmable Generic clock
    minItems: 1

  dmas:
    items:
+3 −0
Original line number Diff line number Diff line
@@ -17,6 +17,9 @@ properties:
    enum:
      - atmel,sama5d2-qspi
      - microchip,sam9x60-qspi
      - microchip,sam9x7-ospi
      - microchip,sama7d65-qspi
      - microchip,sama7d65-ospi
      - microchip,sama7g5-qspi
      - microchip,sama7g5-ospi

+0 −1
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ properties:
    oneOf:
      - enum:
          - google,gs101-spi
          - samsung,s3c2443-spi # for S3C2443, S3C2416 and S3C2450
          - samsung,s3c6410-spi
          - samsung,s5pv210-spi # for S5PV210 and S5PC110
          - samsung,exynos4210-spi
+18 −7
Original line number Diff line number Diff line
@@ -1318,6 +1318,16 @@ S: Maintained
F:	Documentation/devicetree/bindings/rtc/amlogic,a4-rtc.yaml
F:	drivers/rtc/rtc-amlogic-a4.c
AMLOGIC SPIFC DRIVER
M:	Liang Yang <liang.yang@amlogic.com>
M:	Feng Chen <feng.chen@amlogic.com>
M:	Xianwei Zhao <xianwei.zhao@amlogic.com>
L:	linux-amlogic@lists.infradead.org
L:	linux-spi@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/spi/amlogic,a4-spifc.yaml
F:	drivers/spi/spi-amlogic-spifc-a4.c
AMLOGIC SPISG DRIVER
M:	Sunny Luo <sunny.luo@amlogic.com>
M:	Xianwei Zhao <xianwei.zhao@amlogic.com>
@@ -25738,16 +25748,10 @@ W: https://github.com/srcres258/linux-doc
T:	git https://github.com/srcres258/linux-doc.git doc-zh-tw
F:	Documentation/translations/zh_TW/
TRIGGER SOURCE - ADI UTIL SIGMA DELTA SPI
M:	David Lechner <dlechner@baylibre.com>
S:	Maintained
F:	Documentation/devicetree/bindings/trigger-source/adi,util-sigma-delta-spi.yaml
TRIGGER SOURCE
M:	David Lechner <dlechner@baylibre.com>
S:	Maintained
F:	Documentation/devicetree/bindings/trigger-source/gpio-trigger.yaml
F:	Documentation/devicetree/bindings/trigger-source/pwm-trigger.yaml
F:	Documentation/devicetree/bindings/trigger-source/*
TRUSTED SECURITY MODULE (TSM) INFRASTRUCTURE
M:	Dan Williams <dan.j.williams@intel.com>
@@ -26897,6 +26901,13 @@ S: Maintained
F:	include/uapi/linux/virtio_snd.h
F:	sound/virtio/*
VIRTIO SPI DRIVER
M:	Haixu Cui <quic_haixcui@quicinc.com>
L:	virtualization@lists.linux.dev
S:	Maintained
F:	drivers/spi/spi-virtio.c
F:	include/uapi/linux/virtio_spi.h
VIRTUAL BOX GUEST DEVICE DRIVER
M:	Hans de Goede <hansg@kernel.org>
M:	Arnd Bergmann <arnd@arndb.de>
Loading