* Qualcomm Atheros ath9k wireless devices

This node provides properties for configuring the ath9k wireless device. The
node is expected to be specified as a child node of the PCI controller to
which the wireless chip is connected.

Required properties:
- compatible: For PCI and PCIe devices this should be an identifier following
		the format as defined in "PCI Bus Binding to Open Firmware"
		Revision 2.1. One of the possible formats is "pciVVVV,DDDD"
		where VVVV is the PCI vendor ID and DDDD is PCI device ID.
		Typically QCA's PCI vendor ID 168c is used while the PCI device
		ID depends on the chipset - see the following (possibly
		incomplete) list:
			- 0023 for AR5416
			- 0024 for AR5418
			- 0027 for AR9160
			- 0029 for AR9220 and AR9223
			- 002a for AR9280 and AR9283
			- 002b for AR9285
			- 002c for AR2427
			- 002d for AR9227
			- 002e for AR9287
			- 0030 for AR9380, AR9381 and AR9382
			- 0032 for AR9485
			- 0033 for AR9580 and AR9590
			- 0034 for AR9462
			- 0036 for AR9565
			- 0037 for AR9485
- reg: Address and length of the register set for the device.

Optional properties:
- qca,no-eeprom: Indicates that there is no physical EEPROM connected to the
			ath9k wireless chip (in this case the calibration /
			EEPROM data will be loaded from userspace using the
			kernel firmware loader).

The MAC address will be determined using the optional properties defined in
net/ethernet.txt.

In this example, the node is defined as child node of the PCI controller:
&pci0 {
	wifi@168c,002d {
		compatible = "pci168c,002d";
		reg = <0x7000 0 0 0 0x1000>;
		qca,no-eeprom;
	};
};
