summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/spi/efm32-spi.txt
blob: 130cd17e3680d825777d52e464b8a28e3597b9b8 (plain) (blame)
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
* 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 :
- efm32,location: Value to write to the ROUTE register's LOCATION bitfield to
                  configure the pinmux for the device, see datasheet for values.
                  If "efm32,location" 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
	efm32,location = <1>;
	status = "ok";

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