1*8ccc0d23SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*8ccc0d23SEmmanuel Vadot%YAML 1.2 3*8ccc0d23SEmmanuel Vadot--- 4*8ccc0d23SEmmanuel Vadot$id: http://devicetree.org/schemas/spi/fsl,spi.yaml# 5*8ccc0d23SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*8ccc0d23SEmmanuel Vadot 7*8ccc0d23SEmmanuel Vadottitle: Freescale SPI (Serial Peripheral Interface) controller 8*8ccc0d23SEmmanuel Vadot 9*8ccc0d23SEmmanuel Vadotmaintainers: 10*8ccc0d23SEmmanuel Vadot - J. Neuschäfer <j.ne@posteo.net> 11*8ccc0d23SEmmanuel Vadot 12*8ccc0d23SEmmanuel Vadotproperties: 13*8ccc0d23SEmmanuel Vadot compatible: 14*8ccc0d23SEmmanuel Vadot enum: 15*8ccc0d23SEmmanuel Vadot - fsl,spi 16*8ccc0d23SEmmanuel Vadot - aeroflexgaisler,spictrl 17*8ccc0d23SEmmanuel Vadot 18*8ccc0d23SEmmanuel Vadot reg: 19*8ccc0d23SEmmanuel Vadot maxItems: 1 20*8ccc0d23SEmmanuel Vadot 21*8ccc0d23SEmmanuel Vadot cell-index: 22*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 23*8ccc0d23SEmmanuel Vadot description: | 24*8ccc0d23SEmmanuel Vadot QE SPI subblock index. 25*8ccc0d23SEmmanuel Vadot 0: QE subblock SPI1 26*8ccc0d23SEmmanuel Vadot 1: QE subblock SPI2 27*8ccc0d23SEmmanuel Vadot 28*8ccc0d23SEmmanuel Vadot mode: 29*8ccc0d23SEmmanuel Vadot description: SPI operation mode 30*8ccc0d23SEmmanuel Vadot enum: 31*8ccc0d23SEmmanuel Vadot - cpu 32*8ccc0d23SEmmanuel Vadot - cpu-qe 33*8ccc0d23SEmmanuel Vadot 34*8ccc0d23SEmmanuel Vadot interrupts: 35*8ccc0d23SEmmanuel Vadot maxItems: 1 36*8ccc0d23SEmmanuel Vadot 37*8ccc0d23SEmmanuel Vadot clock-frequency: 38*8ccc0d23SEmmanuel Vadot description: input clock frequency to non FSL_SOC cores 39*8ccc0d23SEmmanuel Vadot 40*8ccc0d23SEmmanuel Vadot cs-gpios: true 41*8ccc0d23SEmmanuel Vadot 42*8ccc0d23SEmmanuel Vadot fsl,spisel_boot: 43*8ccc0d23SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 44*8ccc0d23SEmmanuel Vadot description: 45*8ccc0d23SEmmanuel Vadot For the MPC8306 and MPC8309, specifies that the SPISEL_BOOT signal is used 46*8ccc0d23SEmmanuel Vadot as chip select for a slave device. Use reg = <number of gpios> in the 47*8ccc0d23SEmmanuel Vadot corresponding child node, i.e. 0 if the cs-gpios property is not present. 48*8ccc0d23SEmmanuel Vadot 49*8ccc0d23SEmmanuel Vadotrequired: 50*8ccc0d23SEmmanuel Vadot - compatible 51*8ccc0d23SEmmanuel Vadot - reg 52*8ccc0d23SEmmanuel Vadot - mode 53*8ccc0d23SEmmanuel Vadot - interrupts 54*8ccc0d23SEmmanuel Vadot 55*8ccc0d23SEmmanuel VadotallOf: 56*8ccc0d23SEmmanuel Vadot - $ref: spi-controller.yaml# 57*8ccc0d23SEmmanuel Vadot 58*8ccc0d23SEmmanuel VadotunevaluatedProperties: false 59*8ccc0d23SEmmanuel Vadot 60*8ccc0d23SEmmanuel Vadotexamples: 61*8ccc0d23SEmmanuel Vadot - | 62*8ccc0d23SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 63*8ccc0d23SEmmanuel Vadot 64*8ccc0d23SEmmanuel Vadot spi@4c0 { 65*8ccc0d23SEmmanuel Vadot compatible = "fsl,spi"; 66*8ccc0d23SEmmanuel Vadot reg = <0x4c0 0x40>; 67*8ccc0d23SEmmanuel Vadot cell-index = <0>; 68*8ccc0d23SEmmanuel Vadot interrupts = <82 0>; 69*8ccc0d23SEmmanuel Vadot mode = "cpu"; 70*8ccc0d23SEmmanuel Vadot cs-gpios = <&gpio 18 IRQ_TYPE_EDGE_RISING // device reg=<0> 71*8ccc0d23SEmmanuel Vadot &gpio 19 IRQ_TYPE_EDGE_RISING>; // device reg=<1> 72*8ccc0d23SEmmanuel Vadot }; 73*8ccc0d23SEmmanuel Vadot 74*8ccc0d23SEmmanuel Vadot... 75