1Binding for MTK SPI controller 2 3Required properties: 4- compatible: should be one of the following. 5 - mediatek,mt2701-spi: for mt2701 platforms 6 - mediatek,mt2712-spi: for mt2712 platforms 7 - mediatek,mt6589-spi: for mt6589 platforms 8 - mediatek,mt6765-spi: for mt6765 platforms 9 - mediatek,mt7622-spi: for mt7622 platforms 10 - "mediatek,mt7629-spi", "mediatek,mt7622-spi": for mt7629 platforms 11 - mediatek,mt8135-spi: for mt8135 platforms 12 - mediatek,mt8173-spi: for mt8173 platforms 13 - mediatek,mt8183-spi: for mt8183 platforms 14 - "mediatek,mt8516-spi", "mediatek,mt2712-spi": for mt8516 platforms 15 16- #address-cells: should be 1. 17 18- #size-cells: should be 0. 19 20- reg: Address and length of the register set for the device 21 22- interrupts: Should contain spi interrupt 23 24- clocks: phandles to input clocks. 25 The first should be one of the following. It's PLL. 26 - <&clk26m>: specify parent clock 26MHZ. 27 - <&topckgen CLK_TOP_SYSPLL3_D2>: specify parent clock 109MHZ. 28 It's the default one. 29 - <&topckgen CLK_TOP_SYSPLL4_D2>: specify parent clock 78MHZ. 30 - <&topckgen CLK_TOP_UNIVPLL2_D4>: specify parent clock 104MHZ. 31 - <&topckgen CLK_TOP_UNIVPLL1_D8>: specify parent clock 78MHZ. 32 The second should be <&topckgen CLK_TOP_SPI_SEL>. It's clock mux. 33 The third is <&pericfg CLK_PERI_SPI0>. It's clock gate. 34 35- clock-names: shall be "parent-clk" for the parent clock, "sel-clk" for the 36 muxes clock, and "spi-clk" for the clock gate. 37 38Optional properties: 39-cs-gpios: see spi-bus.txt. 40 41- mediatek,pad-select: specify which pins group(ck/mi/mo/cs) spi 42 controller used. This is an array, the element value should be 0~3, 43 only required for MT8173. 44 0: specify GPIO69,70,71,72 for spi pins. 45 1: specify GPIO102,103,104,105 for spi pins. 46 2: specify GPIO128,129,130,131 for spi pins. 47 3: specify GPIO5,6,7,8 for spi pins. 48 49Example: 50 51- SoC Specific Portion: 52spi: spi@1100a000 { 53 compatible = "mediatek,mt8173-spi"; 54 #address-cells = <1>; 55 #size-cells = <0>; 56 reg = <0 0x1100a000 0 0x1000>; 57 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_LOW>; 58 clocks = <&topckgen CLK_TOP_SYSPLL3_D2>, 59 <&topckgen CLK_TOP_SPI_SEL>, 60 <&pericfg CLK_PERI_SPI0>; 61 clock-names = "parent-clk", "sel-clk", "spi-clk"; 62 cs-gpios = <&pio 105 GPIO_ACTIVE_LOW>, <&pio 72 GPIO_ACTIVE_LOW>; 63 mediatek,pad-select = <1>, <0>; 64}; 65