| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- # SPDX-License-Identifier: GPL-2.0
- %YAML 1.2
- ---
- $id: http://devicetree.org/schemas/spi/spi-rockchip.yaml#
- $schema: http://devicetree.org/meta-schemas/core.yaml#
- title: Rockchip SPI Controller
- description:
- The Rockchip SPI controller is used to interface with various devices such
- as flash and display controllers using the SPI communication interface.
- allOf:
- - $ref: spi-controller.yaml#
- maintainers:
- - Heiko Stuebner <heiko@sntech.de>
- # Everything else is described in the common file
- properties:
- compatible:
- oneOf:
- - const: rockchip,rk3036-spi
- - const: rockchip,rk3066-spi
- - const: rockchip,rk3228-spi
- - const: rockchip,rv1108-spi
- - items:
- - enum:
- - rockchip,px30-spi
- - rockchip,rk3128-spi
- - rockchip,rk3188-spi
- - rockchip,rk3288-spi
- - rockchip,rk3308-spi
- - rockchip,rk3328-spi
- - rockchip,rk3368-spi
- - rockchip,rk3399-spi
- - rockchip,rk3506-spi
- - rockchip,rk3528-spi
- - rockchip,rk3562-spi
- - rockchip,rk3568-spi
- - rockchip,rk3576-spi
- - rockchip,rk3588-spi
- - rockchip,rv1126-spi
- - const: rockchip,rk3066-spi
- reg:
- maxItems: 1
- interrupts:
- maxItems: 1
- clocks:
- items:
- - description: transfer-clock
- - description: peripheral clock
- clock-names:
- items:
- - const: spiclk
- - const: apb_pclk
- dmas:
- items:
- - description: TX DMA Channel
- - description: RX DMA Channel
- dma-names:
- items:
- - const: tx
- - const: rx
- rx-sample-delay-ns:
- default: 0
- description:
- Nano seconds to delay after the SCLK edge before sampling Rx data
- (may need to be fine tuned for high capacitance lines).
- If not specified 0 will be used.
- pinctrl-names:
- minItems: 1
- items:
- - const: default
- - const: sleep
- description:
- Names for the pin configuration(s); may be "default" or "sleep",
- where the "sleep" configuration may describe the state
- the pins should be in during system suspend.
- power-domains:
- maxItems: 1
- required:
- - compatible
- - reg
- - interrupts
- - clocks
- - clock-names
- unevaluatedProperties: false
- examples:
- - |
- #include <dt-bindings/clock/rk3188-cru-common.h>
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- #include <dt-bindings/interrupt-controller/irq.h>
- spi0: spi@ff110000 {
- compatible = "rockchip,rk3066-spi";
- reg = <0xff110000 0x1000>;
- interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
- clock-names = "spiclk", "apb_pclk";
- dmas = <&pdma1 11>, <&pdma1 12>;
- dma-names = "tx", "rx";
- pinctrl-0 = <&spi1_pins>;
- pinctrl-1 = <&spi1_sleep>;
- pinctrl-names = "default", "sleep";
- rx-sample-delay-ns = <10>;
- #address-cells = <1>;
- #size-cells = <0>;
- };
|