summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/devicetree/bindings/spi/efm32-spi.txt
blob: 750e29aff9bc529ba721a3c842fd85ec37e1e132 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
* Energy Micro EFM32 SPI

Required properties:
- #address-cells: see spi-bus.txt
- #size-cells: see spi-bus.txt
- compatible: should be "energymicro,efm32-spi"
- reg: Offset and length of the register set for the controller
- interrupts: pair specifying rx and tx irq
- clocks: phandle to the spi clock
- cs-gpios: see spi-bus.txt

Recommended properties :
- energymicro,location: Value to write to the ROUTE register's LOCATION
                        bitfield to configure the pinmux for the device, see
                        datasheet for values.
                        If this property is not provided, keeping what is
                        already configured in the hardware, so its either the
                        reset default 0 or whatever the bootloader did.

Example:

spi1: spi@0x4000c400 { /* USART1 */
	#address-cells = <1>;
	#size-cells = <0>;
	compatible = "energymicro,efm32-spi";
	reg = <0x4000c400 0x400>;
	interrupts = <15 16>;
	clocks = <&cmu 20>;
	cs-gpios = <&gpio 51 1>; // D3
	energymicro,location = <1>;
	status = "ok";

	ks8851@0 {
		compatible = "ks8851";
		spi-max-frequency = <6000000>;
		reg = <0>;
		interrupt-parent = <&boardfpga>;
		interrupts = <4>;
		status = "ok";
	};
};