1*c66ec88fSEmmanuel Vadot* SPI (Serial Peripheral Interface) 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot- cell-index : QE SPI subblock index. 5*c66ec88fSEmmanuel Vadot 0: QE subblock SPI1 6*c66ec88fSEmmanuel Vadot 1: QE subblock SPI2 7*c66ec88fSEmmanuel Vadot- compatible : should be "fsl,spi" or "aeroflexgaisler,spictrl". 8*c66ec88fSEmmanuel Vadot- mode : the SPI operation mode, it can be "cpu" or "cpu-qe". 9*c66ec88fSEmmanuel Vadot- reg : Offset and length of the register set for the device 10*c66ec88fSEmmanuel Vadot- interrupts : <a b> where a is the interrupt number and b is a 11*c66ec88fSEmmanuel Vadot field that represents an encoding of the sense and level 12*c66ec88fSEmmanuel Vadot information for the interrupt. This should be encoded based on 13*c66ec88fSEmmanuel Vadot the information in section 2) depending on the type of interrupt 14*c66ec88fSEmmanuel Vadot controller you have. 15*c66ec88fSEmmanuel Vadot- clock-frequency : input clock frequency to non FSL_SOC cores 16*c66ec88fSEmmanuel Vadot 17*c66ec88fSEmmanuel VadotOptional properties: 18*c66ec88fSEmmanuel Vadot- cs-gpios : specifies the gpio pins to be used for chipselects. 19*c66ec88fSEmmanuel Vadot The gpios will be referred to as reg = <index> in the SPI child nodes. 20*c66ec88fSEmmanuel Vadot If unspecified, a single SPI device without a chip select can be used. 21*c66ec88fSEmmanuel Vadot- fsl,spisel_boot : for the MPC8306 and MPC8309, specifies that the 22*c66ec88fSEmmanuel Vadot SPISEL_BOOT signal is used as chip select for a slave device. Use 23*c66ec88fSEmmanuel Vadot reg = <number of gpios> in the corresponding child node, i.e. 0 if 24*c66ec88fSEmmanuel Vadot the cs-gpios property is not present. 25*c66ec88fSEmmanuel Vadot 26*c66ec88fSEmmanuel VadotExample: 27*c66ec88fSEmmanuel Vadot spi@4c0 { 28*c66ec88fSEmmanuel Vadot cell-index = <0>; 29*c66ec88fSEmmanuel Vadot compatible = "fsl,spi"; 30*c66ec88fSEmmanuel Vadot reg = <4c0 40>; 31*c66ec88fSEmmanuel Vadot interrupts = <82 0>; 32*c66ec88fSEmmanuel Vadot interrupt-parent = <700>; 33*c66ec88fSEmmanuel Vadot mode = "cpu"; 34*c66ec88fSEmmanuel Vadot cs-gpios = <&gpio 18 1 // device reg=<0> 35*c66ec88fSEmmanuel Vadot &gpio 19 1>; // device reg=<1> 36*c66ec88fSEmmanuel Vadot }; 37*c66ec88fSEmmanuel Vadot 38*c66ec88fSEmmanuel Vadot 39*c66ec88fSEmmanuel Vadot* eSPI (Enhanced Serial Peripheral Interface) 40*c66ec88fSEmmanuel Vadot 41*c66ec88fSEmmanuel VadotRequired properties: 42*c66ec88fSEmmanuel Vadot- compatible : should be "fsl,mpc8536-espi". 43*c66ec88fSEmmanuel Vadot- reg : Offset and length of the register set for the device. 44*c66ec88fSEmmanuel Vadot- interrupts : should contain eSPI interrupt, the device has one interrupt. 45*c66ec88fSEmmanuel Vadot- fsl,espi-num-chipselects : the number of the chipselect signals. 46*c66ec88fSEmmanuel Vadot 47*c66ec88fSEmmanuel VadotOptional properties: 48*c66ec88fSEmmanuel Vadot- fsl,csbef: chip select assertion time in bits before frame starts 49*c66ec88fSEmmanuel Vadot- fsl,csaft: chip select negation time in bits after frame ends 50*c66ec88fSEmmanuel Vadot 51*c66ec88fSEmmanuel VadotExample: 52*c66ec88fSEmmanuel Vadot spi@110000 { 53*c66ec88fSEmmanuel Vadot #address-cells = <1>; 54*c66ec88fSEmmanuel Vadot #size-cells = <0>; 55*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8536-espi"; 56*c66ec88fSEmmanuel Vadot reg = <0x110000 0x1000>; 57*c66ec88fSEmmanuel Vadot interrupts = <53 0x2>; 58*c66ec88fSEmmanuel Vadot interrupt-parent = <&mpic>; 59*c66ec88fSEmmanuel Vadot fsl,espi-num-chipselects = <4>; 60*c66ec88fSEmmanuel Vadot fsl,csbef = <1>; 61*c66ec88fSEmmanuel Vadot fsl,csaft = <1>; 62*c66ec88fSEmmanuel Vadot }; 63