summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/devicetree/bindings/net/qca-qca7000-spi.txt
blob: c74989c0d8ac96d6561a7dde306840a8f4595547 (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
42
43
44
45
46
47
* Qualcomm QCA7000 (Ethernet over SPI protocol)

Note: The QCA7000 is useable as a SPI device. In this case it must be defined
as a child of a SPI master in the device tree.

Required properties:
- compatible : Should be "qca,qca7000"
- reg : Should specify the SPI chip select
- interrupts : The first cell should specify the index of the source interrupt
  and the second cell should specify the trigger type as rising edge
- spi-cpha : Must be set
- spi-cpol: Must be set

Optional properties:
- interrupt-parent : Specify the pHandle of the source interrupt
- spi-max-frequency : Maximum frequency of the SPI bus the chip can operate at.
  Numbers smaller than 1000000 or greater than 16000000 are invalid. Missing
  the property will set the SPI frequency to 8000000 Hertz.
- local-mac-address: 6 bytes, MAC address
- qca,legacy-mode : Set the SPI data transfer of the QCA7000 to legacy mode.
  In this mode the SPI master must toggle the chip select between each data
  word. In burst mode these gaps aren't necessary, which is faster.
  This setting depends on how the QCA7000 is setup via GPIO pin strapping.
  If the property is missing the driver defaults to burst mode.

Example:

/* Freescale i.MX28 SPI master*/
ssp2: spi@80014000 {
	#address-cells = <1>;
	#size-cells = <0>;
	compatible = "fsl,imx28-spi";
	pinctrl-names = "default";
	pinctrl-0 = <&spi2_pins_a>;
	status = "okay";

	qca7000: ethernet@0 {
		compatible = "qca,qca7000";
		reg = <0x0>;
		interrupt-parent = <&gpio3>;      /* GPIO Bank 3 */
		interrupts = <25 0x1>;            /* Index: 25, rising edge */
		spi-cpha;                         /* SPI mode: CPHA=1 */
		spi-cpol;                         /* SPI mode: CPOL=1 */
		spi-max-frequency = <8000000>;    /* freq: 8 MHz */
		local-mac-address = [ A0 B0 C0 D0 E0 F0 ];
	};
};