| * Qualcomm QCA7000 | 
 |  | 
 | The QCA7000 is a serial-to-powerline bridge with a host interface which could | 
 | be configured either as SPI or UART slave. This configuration is done by | 
 | the QCA7000 firmware. | 
 |  | 
 | (a) Ethernet over SPI | 
 |  | 
 | In order to use the QCA7000 as SPI device 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: | 
 | - 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. | 
 | - 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. | 
 |  | 
 | The MAC address will be determined using the optional properties | 
 | defined in ethernet.txt. | 
 |  | 
 | SPI 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>; | 
 |  | 
 | 	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 ]; | 
 | 	}; | 
 | }; | 
 |  | 
 | (b) Ethernet over UART | 
 |  | 
 | In order to use the QCA7000 as UART slave it must be defined as a child of a | 
 | UART master in the device tree. It is possible to preconfigure the UART | 
 | settings of the QCA7000 firmware, but it's not possible to change them during | 
 | runtime. | 
 |  | 
 | Required properties: | 
 | - compatible        : Should be "qca,qca7000" | 
 |  | 
 | Optional properties: | 
 | - local-mac-address : see ./ethernet.txt | 
 | - current-speed     : current baud rate of QCA7000 which defaults to 115200 | 
 | 		      if absent, see also ../serial/serial.yaml | 
 |  | 
 | UART Example: | 
 |  | 
 | /* Freescale i.MX28 UART */ | 
 | auart0: serial@8006a000 { | 
 | 	compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 
 | 	reg = <0x8006a000 0x2000>; | 
 | 	pinctrl-names = "default"; | 
 | 	pinctrl-0 = <&auart0_2pins_a>; | 
 |  | 
 | 	qca7000: ethernet { | 
 | 		compatible = "qca,qca7000"; | 
 | 		local-mac-address = [ A0 B0 C0 D0 E0 F0 ]; | 
 | 		current-speed = <38400>; | 
 | 	}; | 
 | }; |