| # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/spi/brcm,bcm63xx-spi.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Broadcom BCM6348/BCM6358 SPI controller |
| |
| maintainers: |
| - Jonas Gorski <jonas.gorski@gmail.com> |
| |
| description: | |
| Broadcom "Low Speed" SPI controller found in many older MIPS based Broadband |
| SoCs. |
| |
| This controller has a limitation that can not keep the chip select line active |
| between the SPI transfers within the same SPI message. This can terminate the |
| transaction to some SPI devices prematurely. The issue can be worked around by |
| the controller's prepend mode. |
| |
| allOf: |
| - $ref: spi-controller.yaml# |
| |
| properties: |
| compatible: |
| oneOf: |
| - items: |
| - enum: |
| - brcm,bcm6368-spi |
| - brcm,bcm6362-spi |
| - brcm,bcm63268-spi |
| - const: brcm,bcm6358-spi |
| - enum: |
| - brcm,bcm6348-spi |
| - brcm,bcm6358-spi |
| |
| reg: |
| maxItems: 1 |
| |
| clocks: |
| items: |
| - description: SPI master reference clock |
| |
| clock-names: |
| items: |
| - const: spi |
| |
| interrupts: |
| maxItems: 1 |
| |
| required: |
| - compatible |
| - reg |
| - clocks |
| - clock-names |
| - interrupts |
| |
| unevaluatedProperties: false |
| |
| examples: |
| - | |
| spi@10000800 { |
| compatible = "brcm,bcm6368-spi", "brcm,bcm6358-spi"; |
| reg = <0x10000800 0x70c>; |
| interrupts = <1>; |
| clocks = <&clkctl 9>; |
| clock-names = "spi"; |
| num-cs = <5>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| }; |