Linux-libre 4.10.7-gnu
[librecmc/linux-libre.git] / Documentation / devicetree / bindings / net / wireless / marvell-8xxx.txt
1 Marvell 8897/8997 (sd8897/sd8997/pcie8997) SDIO/PCIE devices
2 ------
3
4 This node provides properties for controlling the Marvell SDIO/PCIE wireless device.
5 The node is expected to be specified as a child node to the SDIO/PCIE controller that
6 connects the device to the system.
7
8 Required properties:
9
10   - compatible : should be one of the following:
11         * "marvell,sd8897"
12         * "marvell,sd8997"
13         * "pci11ab,2b42"
14         * "pci1b4b,2b42"
15
16 Optional properties:
17
18   - marvell,caldata* : A series of properties with marvell,caldata prefix,
19                       represent calibration data downloaded to the device during
20                       initialization. This is an array of unsigned 8-bit values.
21                       the properties should follow below property name and
22                       corresponding array length:
23         "marvell,caldata-txpwrlimit-2g" (length = 566).
24         "marvell,caldata-txpwrlimit-5g-sub0" (length = 502).
25         "marvell,caldata-txpwrlimit-5g-sub1" (length = 688).
26         "marvell,caldata-txpwrlimit-5g-sub2" (length = 750).
27         "marvell,caldata-txpwrlimit-5g-sub3" (length = 502).
28   - marvell,wakeup-pin : a wakeup pin number of wifi chip which will be configured
29                       to firmware. Firmware will wakeup the host using this pin
30                       during suspend/resume.
31   - interrupt-parent: phandle of the parent interrupt controller
32   - interrupts : interrupt pin number to the cpu. driver will request an irq based on
33                  this interrupt number. during system suspend, the irq will be enabled
34                  so that the wifi chip can wakeup host platform under certain condition.
35                  during system resume, the irq will be disabled to make sure
36                  unnecessary interrupt is not received.
37
38 Example:
39
40 Tx power limit calibration data is configured in below example.
41 The calibration data is an array of unsigned values, the length
42 can vary between hw versions.
43 IRQ pin 38 is used as system wakeup source interrupt. wakeup pin 3 is configured
44 so that firmware can wakeup host using this device side pin.
45
46 &mmc3 {
47         status = "okay";
48         vmmc-supply = <&wlan_en_reg>;
49         bus-width = <4>;
50         cap-power-off-card;
51         keep-power-in-suspend;
52
53         #address-cells = <1>;
54         #size-cells = <0>;
55         mwifiex: wifi@1 {
56                 compatible = "marvell,sd8897";
57                 reg = <1>;
58                 interrupt-parent = <&pio>;
59                 interrupts = <38 IRQ_TYPE_LEVEL_LOW>;
60
61                 marvell,caldata_00_txpwrlimit_2g_cfg_set = /bits/ 8 <
62         0x01 0x00 0x06 0x00 0x08 0x02 0x89 0x01>;
63                 marvell,wakeup-pin = <3>;
64         };
65 };